diff --git a/buildroot-patches/0010-odroid-ux4-firmware.patch b/buildroot-patches/0009-odroid-ux4-firmware.patch similarity index 65% rename from buildroot-patches/0010-odroid-ux4-firmware.patch rename to buildroot-patches/0009-odroid-ux4-firmware.patch index ecbfab213..b1705efaa 100644 --- a/buildroot-patches/0010-odroid-ux4-firmware.patch +++ b/buildroot-patches/0009-odroid-ux4-firmware.patch @@ -1,7 +1,7 @@ -diff --git a/buildroot/package/linux-firmware/Config.in b/buildroot/package/linux-firmware/Config.in +diff --git a/package/linux-firmware/Config.in b/package/linux-firmware/Config.in index 6b182dc6..8e3be238 100644 ---- a/buildroot/package/linux-firmware/Config.in -+++ b/buildroot/package/linux-firmware/Config.in +--- a/package/linux-firmware/Config.in ++++ b/package/linux-firmware/Config.in @@ -44,6 +44,12 @@ config BR2_PACKAGE_LINUX_FIRMWARE_QCOM_ADRENO help Firmware files for Qualcomm Adreno GPU firmware @@ -15,10 +15,10 @@ index 6b182dc6..8e3be238 100644 endmenu # Video menu "Bluetooth firmware" -diff --git a/buildroot/package/linux-firmware/linux-firmware.mk b/buildroot/package/linux-firmware/linux-firmware.mk +diff --git a/package/linux-firmware/linux-firmware.mk b/package/linux-firmware/linux-firmware.mk index 86e1d1e7..6453c402 100644 ---- a/buildroot/package/linux-firmware/linux-firmware.mk -+++ b/buildroot/package/linux-firmware/linux-firmware.mk +--- a/package/linux-firmware/linux-firmware.mk ++++ b/package/linux-firmware/linux-firmware.mk @@ -39,6 +39,12 @@ LINUX_FIRMWARE_FILES += qcom/a* LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.qcom qcom/NOTICE.txt endif diff --git a/buildroot-patches/0009-openvmtools-start-only-inside-a-vmware-env.patch b/buildroot-patches/0009-openvmtools-start-only-inside-a-vmware-env.patch deleted file mode 100644 index 83877f449..000000000 --- a/buildroot-patches/0009-openvmtools-start-only-inside-a-vmware-env.patch +++ /dev/null @@ -1,32 +0,0 @@ -From f80ba7397087960c033bc8ba43959e399aefb250 Mon Sep 17 00:00:00 2001 -From: Pascal Vizeli -Date: Wed, 26 Jun 2019 13:38:47 +0000 -Subject: [PATCH 1/1] openvmtools: start only inside a vmware env - -Signed-off-by: Pascal Vizeli ---- - package/openvmtools/vmtoolsd.service | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/package/openvmtools/vmtoolsd.service b/package/openvmtools/vmtoolsd.service -index 17a4df44c2..1d2a3566cf 100644 ---- a/package/openvmtools/vmtoolsd.service -+++ b/package/openvmtools/vmtoolsd.service -@@ -1,11 +1,12 @@ - [Unit] - Description=vmtoolsd for openvmtools - After=syslog.target network.target -+ConditionVirtualization=vmware - - [Service] - Type=forking --PIDFile=/var/run/vmtoolsd.pid --ExecStart=/usr/bin/vmtoolsd -b /var/run/vmtoolsd.pid -+PIDFile=/run/vmtoolsd.pid -+ExecStart=/usr/bin/vmtoolsd -b /run/vmtoolsd.pid - Restart=on-failure - KillMode=process - KillSignal=SIGKILL --- -2.17.1 - diff --git a/buildroot-patches/0010-Bump-bluez-5.52.patch b/buildroot-patches/0010-Bump-bluez-5.52.patch new file mode 100644 index 000000000..81ef9ef31 --- /dev/null +++ b/buildroot-patches/0010-Bump-bluez-5.52.patch @@ -0,0 +1,51 @@ +From 4e3d6b2b4d600babb79492fbcd04d7bbd16a2a58 Mon Sep 17 00:00:00 2001 +From: Pascal Vizeli +Date: Mon, 30 Dec 2019 13:18:34 +0000 +Subject: [PATCH 1/1] Bump bluez 5.52 + +Signed-off-by: Pascal Vizeli +--- + package/bluez5_utils-headers/bluez5_utils-headers.mk | 2 +- + package/bluez5_utils/bluez5_utils.hash | 2 +- + package/bluez5_utils/bluez5_utils.mk | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/package/bluez5_utils-headers/bluez5_utils-headers.mk b/package/bluez5_utils-headers/bluez5_utils-headers.mk +index 020e8b4d4e..c61f93a23c 100644 +--- a/package/bluez5_utils-headers/bluez5_utils-headers.mk ++++ b/package/bluez5_utils-headers/bluez5_utils-headers.mk +@@ -5,7 +5,7 @@ + ################################################################################ + + # Keep the version and patches in sync with bluez5_utils +-BLUEZ5_UTILS_HEADERS_VERSION = 5.50 ++BLUEZ5_UTILS_HEADERS_VERSION = 5.52 + BLUEZ5_UTILS_HEADERS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz + BLUEZ5_UTILS_HEADERS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth + BLUEZ5_UTILS_HEADERS_DL_SUBDIR = bluez5_utils +diff --git a/package/bluez5_utils/bluez5_utils.hash b/package/bluez5_utils/bluez5_utils.hash +index b965708559..00112bc0b6 100644 +--- a/package/bluez5_utils/bluez5_utils.hash ++++ b/package/bluez5_utils/bluez5_utils.hash +@@ -1,4 +1,4 @@ + # From https://www.kernel.org/pub/linux/bluetooth/sha256sums.asc: +-sha256 5ffcaae18bbb6155f1591be8c24898dc12f062075a40b538b745bfd477481911 bluez-5.50.tar.xz ++sha256 f7144ce2039202cfac18ccb52426efea11c98e4f6e1bb8041bcb994b8378560a bluez-5.52.tar.xz + sha256 b499eddebda05a8859e32b820a64577d91f1de2b52efa2a1575a2cb4000bc259 COPYING + sha256 ec60b993835e2c6b79e6d9226345f4e614e686eb57dc13b6420c15a33a8996e5 COPYING.LIB +diff --git a/package/bluez5_utils/bluez5_utils.mk b/package/bluez5_utils/bluez5_utils.mk +index 15c9b670a7..7c5202b717 100644 +--- a/package/bluez5_utils/bluez5_utils.mk ++++ b/package/bluez5_utils/bluez5_utils.mk +@@ -5,7 +5,7 @@ + ################################################################################ + + # Keep the version and patches in sync with bluez5_utils-headers +-BLUEZ5_UTILS_VERSION = 5.50 ++BLUEZ5_UTILS_VERSION = 5.52 + BLUEZ5_UTILS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz + BLUEZ5_UTILS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth + BLUEZ5_UTILS_INSTALL_STAGING = YES +-- +2.17.1 + diff --git a/buildroot/CHANGES b/buildroot/CHANGES index e3d7ad3bf..f95245379 100644 --- a/buildroot/CHANGES +++ b/buildroot/CHANGES @@ -1,3 +1,182 @@ +2019.02.8, released December 7th, 2019 + + Important / security related fixes. + + Infrastructure: Make HOST__DL_OPTS inherit from + _DL_OPTS by default, just like it is done for a number of + other package variables + + Add _KEEP_PY_FILES to exclude specific python .py files + from the removal done by BR2_PACKAGE_PYTHON{,3}_PYC_ONLY for + the (rare) case where the .py files are needed at runtime + rather than .pyc. + + Fix -reconfigure handling for packages using the kconfig + infrastructure. + + Toolchain: ensure external toolchain kernel headers version + check correctly stop the build on mismatch + + Deconfigs: beaglebone: fix boot issue + + Updated/fixed packages: am33x-cm3, asterisk, bind, chrony, + clamav, collectd, connman, faifa, gob2, haproxy, + intel-microcode, ipsec-tools, jasper, jpeg-turbo, kodi, + kvm-unit-tests, libftdi, libftdi1, libnss, libstrophe, + libsvgtiny, lvm2, lzma, mariadb, minicom, neardal, nodejs, + opencv3, openvmtools, oracle-mysql, perl-gdgraph, + perl-gdtextutil, php, postgresql, prosody, python-django, + rabbitmq-c, rauc, redis, rpcbind, socat, spice, + spice-protocol, tftpd, tiff, webkitgtk + + New packages: libmspack + + Issues resolved (http://bugs.uclibc.org): + + #12166: Compiling nodejs for SAMA5D3 always crash with illegal inst.. + #12171: Python-opencv needs config.py and config-3.7.py to run.. + #12211: host-nodejs 10.15.3 package fail to build + #12316: tzdata fails to install with empty "default local time" + +2019.02.7, Released November 10th, 2019 + + Important / security related fixes. + + support/testing: use a kernel with HW_RANDOM_VIRTIO to work + around issues with lack of entrophy + + Toolchain: Also copy libssp.so for external toolchains if SSP + is enabled to handle toolchains providing SSP support in + libssp rather than in the C library + + Download: Also use the package download method for extra + downloads from the same site, so it does not get confused by + URLs containing '+' + + Fakeroot now works correctly under Microsoft Windows 10 + Services for Linux, which does not provide SYSV IPC support + + utils/test-pkg: ensure to exit with an error upon failure + + Updated/fixed packages: asterisk, azmq, cups-filters, + domoticz, duma, elf2flt, eudev, exfat, exfat-utils, fakeroot, + file, freerdp, gd, ghostscript, go, gvfs, intel-microcode, + kvm-unit-tests, libarchive, libnspr, libnss, libopenssl, + libpcap, libpciaccess, librsvg, libseccomp, libsigrok, + libtorrent, libunwind, linux-tools, lua-sdl2, lxc, minizip, + mjpegtools, mongoose, php, python, python-pysnmp-apps, + python3, qemu, qt5base, ruby, safeclib, samba4, sdl_mixer, + sox, sudo, systemd, tcpdump, unscd, util-lkinux, vtun, xvisor, + yaffs2utils + + Issues resolved (http://bugs.uclibc.org): + + #11366: [2018.08] SysV IPC not available for fakeroot on WSL + #12261: sudo versions prior to 1.8.28 are affected + +2019.02.6, Released October 3rd, 2019 + + Important / security related fixes. + + Defconfigs: AArch64-efi: Fix grub configuration, Beaglebone: + Use default console settings + + Dependencies: Ensure host has JSON::PP perl module installed + if webkitgtk/wpewebkit packages are enabled as it is needed + during their build process. + + Toolchain: Generate check-headers program under BUILD_DIR + rather than /tmp to fix issues with distributions mounting + /tmp noexec. + + Updated/fixed packages: asterisk, augeas, bind, bwm-ng, cups, + cups-filters, docker-cli, docker-engine, docker-proxy, + dropbear, e2fsprogs, eudev, exim, expat, gcc, go, ifplugd, + haveged, iptables, joe, kf5-extra-cmake-modules, + kf5-modemmanager-qt, kf5-networkmanager-qt, libcurl, + libgcrypt, libgpg-error, libnftl, libnspr, libnss, libopenssl, + luksmeta, mariadb, mbedtls, mongodb, mosquitto, ncurses, + nfs-utils, nghttp2, nodejs, openvmtools, php, protobuf, putty, + qemu, qt5base, samba4, swupdate, systemd-bootchart, thttpd, + uclibc, unzip, util-linux, wireshark + + Issues resolved (http://bugs.uclibc.org): + + #10806: Allow nfs-utils to use ipv6 + #11781: mariadb build error + #12031: Build of cups-filters fails while linking, apparently due.. + #12141: eudev package is missing "render" and "kvm" groups + #12181: dropbear: norootlogin (-w) no longer works when PAM is enabled + #12241: Permission denied while running "make" + +2019.02.5, Released September 2nd, 2019 + + Important / security related fixes. + + Filesystems: Pass extra pax options to tar for binary + reproducibility. + + Updated/fixed packages: apache, arm-trusted-firmware, + asterisk, atk, autofs, batctl, batman-adv, berkeleydb, brotli, + busybox, bzip2, clamav, cloop, cmake, collectd, connman-gtk, + cryptopp, dahdi-linux, dahdi-tools, daq, dehydrated, dovecot, + dovecot-pigeonhole,, elfutils, evtest, exim, expect, giflib, + git, glib-networking, glibc, gnupg2, gnutls, go, + gst1-rtsp-server, gtkperf, gupnp-tools, gvfs, imagemagick, + imx-uuc, intel-microcode, json-glib, lftp, libbsd, libcurl, + libgit2, libgtk3, libmodplug, libnss, libpri, libshout, + libss7, libssh2, libvips, libxcb, linux-headers, mdadm, + mesa3d, metacity, mpg123, mosquitto, musl, nginx, openblas, + opencv3, openldap, openvmtools, pcmanfm, php, pigpio, + postgresql, prboom, proftpd, proj, python, python-django, + python-idna, python-numpy, python-urllib3, python3, qemu, qt5, + qt5base, qt5enginio, quagga, rygel, squid, subversion, + tcpreplay, unzip, vlc, vte, webkitgtk, weston, wireless-regdb, + xen, xfont_font-util, xlib_libICE, xlib_libXfont, + xlib_libXfont2, yad, zeromq + + Issues resolved (http://bugs.uclibc.org): + + #11741: pigpio does not build host-pigpio + #11876: automount using host mount/umount + #11881: Build breaks with lftp package enabled and libexpat1-dev inst.. + #11921: dahdi fails to build + #11961: libpri build failure + #12096: tcpreplay: build fails if libdumbnet-dev is installed in the.. + #12106: daq: build fails if libdumbnet-dev is installed in the host + #12126: vc4 has neon as hard dependency + +2019.02.4, Released July 10th, 2019 + + Important / security related fixes. + + arch: x86: Fix typo breaking 'core-avx2' variant, add Westmere + variant. + + linux: Workaround -Werror related build failure on powerpc, + by forcing CONFIG_PPC_DISABLE_WERROR on. + + support/testing: Emulate a machine with 256MB RAM to fix + issues with certain tests running out of memory. + + test-pkg: Correct long option handling and clean output dir + after a successful build to save disk space. + + Ensure custom _OVERRIDE_SRCDIR_RSYNC_EXCLUSIONS are + passed before the standard exclusions so they are not ignored + by rsync when using override-srcdir. + + Defconfigs: QEMU: use 'rootwait' kernel option to ensure root + partition is available before mounting. + + Updated/fixed packages: barebox, bzip2, davfs2, dbus, dialog, + docker-cli, docker-engine, expat, faad2, ffmpeg, freeswitch, + gerbera, haveged, irssi, libcdadio, libgit2, libglib2, + libsecret, libvncserver, lmbench, logrotate, mariadb, meson, + mongoose, monit, mpd, openblas, php, postgresql, psplash, + python, python-django, python3, qt5base, samba4, taglib, + tvheadend, vlc, webkitgtk, xserver_xorg-server, znc + 2019.02.3, Released June 7th, 2019 Important / security related fixes. @@ -26,6 +205,8 @@ sqlite, subversion, supertux, systemd, tslib, uclibc, v4l2loopback, webkitgtk, woff2 + Issues resolved (http://bugs.uclibc.org): + #11816: Only selected coreutils binaries are installed #11841: grub-efi.cfg not used when building EFI disk image #11911: systemd v240 memory leak in systemd-journald diff --git a/buildroot/DEVELOPERS b/buildroot/DEVELOPERS index 0d185ee97..58adad5c1 100644 --- a/buildroot/DEVELOPERS +++ b/buildroot/DEVELOPERS @@ -26,9 +26,6 @@ # infrastructure, and will be CC'ed on all patches that add or # modify packages that use this infrastructure. -N: Abhilash Tuse -F: package/gstreamer1/gst1-rtsp-server/ - N: Adam Duskett F: package/audit/ F: package/busybox/ @@ -127,7 +124,6 @@ N: Anders Darander F: package/ktap/ N: André Hentschel -F: package/azure-iot-sdk-c/ F: package/libkrb5/ F: package/openal/ F: package/p7zip/ @@ -148,9 +144,6 @@ F: package/zstd/ N: Andrey Yurovsky F: package/rauc/ -N: Andy Kennedy -F: package/libunwind/ - N: Angelo Compagnucci F: package/corkscrew/ F: package/fail2ban/ @@ -209,11 +202,12 @@ F: package/sqlcipher/ F: package/stress/ N: Asaf Kahlon +F: package/collectd/ F: package/libuv/ F: package/python* F: package/zeromq/ -N: Ash Charles +N: Ash Charles F: package/pru-software-support/ F: package/ti-cgt-pru/ @@ -267,7 +261,6 @@ F: package/alsa-utils/ F: package/apache/ F: package/apr/ F: package/apr-util/ -F: package/asterisk/ F: package/bcg729/ F: package/bluez-tools/ F: package/boinc/ @@ -316,6 +309,7 @@ F: package/libilbc/ F: package/libldns/ F: package/libmicrohttpd/ F: package/libminiupnpc/ +F: package/libmspack/ F: package/libnatpmp/ F: package/libnpth/ F: package/libogg/ @@ -563,9 +557,6 @@ F: package/log4cpp/ N: Daniel Nicoletti F: package/cutelyst/ -N: Daniel Nyström -F: package/e2tools/ - N: Daniel Price F: package/nodejs/ F: package/redis/ @@ -633,9 +624,6 @@ F: package/unscd/ N: Dushara Jayasinghe F: package/prosody/ -N: Ed Swierk -F: package/xxhash/ - N: Eric Le Bihan F: docs/manual/adding-packages-meson.txt F: package/adwaita-icon-theme/ @@ -819,7 +807,9 @@ F: package/ser2net/ N: Francois Perrad F: board/olimex/a20_olinuxino +F: board/olimex/imx233_olinuxino/ F: configs/olimex_a20_olinuxino_* +F: configs/olimex_imx233_olinuxino_defconfig F: package/4th/ F: package/chipmunk/ F: package/dado/ @@ -892,7 +882,7 @@ F: package/tesseract-ocr/ F: package/webp/ F: package/xapian/ -N: Giulio Benetti +N: Giulio Benetti F: package/minicom/ F: package/sunxi-mali-mainline/ F: package/sunxi-mali-mainline-driver/ @@ -1131,10 +1121,6 @@ F: package/phidgetwebservice/ F: package/rapidxml/ F: package/sphinxbase/ -N: Jonathan Liu -F: package/python-meld3/ -F: package/supervisor/ - N: Jörg Krause F: board/lemaker/bananapro/ F: configs/bananapro_defconfig @@ -1201,9 +1187,6 @@ F: package/python-pygame/ N: Julien Corjon F: package/qt5/ -N: Julien Floret -F: package/lldpd/ - N: Julien Grossholtz F: package/paho-mqtt-c @@ -1223,9 +1206,6 @@ F: package/cpuload/ F: package/bwm-ng/ F: package/ramsmp/ -N: Kevin Joly -F: package/libgphoto2/ - N: Koen Martens F: package/capnproto/ F: package/linuxconsoletools/ @@ -1329,9 +1309,6 @@ F: package/luaossl/ F: package/rs485conf/ F: package/turbolua/ -N: Marcin Nowakowski -F: package/libkcapi/ - N: Marcus Folkesson F: package/libostree/ F: package/libselinux/ @@ -1354,7 +1331,7 @@ F: package/lynx/ N: Mario Rugiero F: package/ratpoison/ -N: Mark Corbin +N: Mark Corbin F: arch/arch.mk.riscv F: arch/Config.in.riscv F: board/qemu/riscv32-virt/ @@ -1363,10 +1340,6 @@ F: boot/riscv-pk/ F: configs/qemu_riscv32_virt_defconfig F: configs/qemu_riscv64_virt_defconfig -N: Markos Chandras -F: package/harfbuzz/ -F: package/libsecret/ - N: Martin Bark F: board/raspberrypi/ F: configs/raspberrypi3_defconfig @@ -1387,7 +1360,7 @@ F: package/tslib/ F: package/x11r7/xdriver_xf86-input-tslib/ F: package/x11vnc/ -N: Mathieu Audat +N: Mathieu Audat F: board/technologic/ts4900/ F: configs/ts4900_defconfig F: package/ts4900-fpga/ @@ -1547,6 +1520,9 @@ F: package/python-pyzmq/ N: Michael Trimarchi F: package/python-spidev/ +N: Michael Vetter +F: package/jasper/ + N: Michał Łyszczek F: board/altera/socrates_cyclone5/ F: board/pine64/rock64 @@ -1566,9 +1542,6 @@ F: package/shadowsocks-libev/ N: Mirza Krak F: package/mender/ -N: Morgan Delestre -F: package/monkey/ - N: Murat Demirten F: package/jpeg-turbo/ F: package/libgeotiff/ @@ -1698,6 +1671,8 @@ F: package/python-webob/ F: package/python-websocket-client/ F: package/sedutil/ F: package/triggerhappy/ +F: package/wireguard/ +F: support/testing/tests/package/test_docker_compose.py N: Peter Seiderer F: board/raspberrypi/ @@ -1781,9 +1756,6 @@ F: package/libdvbpsi/ F: package/mraa/ F: package/synergy/ -N: Pranit Sirsat -F: package/paho-mqtt-c/ - N: Qais Yousef F: package/bellagio/ @@ -1814,7 +1786,13 @@ N: Ricardo Martincoski F: package/atop/ N: Ricardo Martincoski -F: support/testing/ +F: support/testing/infra/ +F: support/testing/run-tests +F: support/testing/tests/core/test_file_capabilities.py +F: support/testing/tests/download/ +F: support/testing/tests/package/*_python*.py +F: support/testing/tests/package/test_atop.py +F: support/testing/tests/package/test_syslog_ng.py F: utils/check-package F: utils/checkpackagelib/ @@ -1840,6 +1818,8 @@ F: package/vnstat/ N: Romain Naour F: package/aubio/ F: package/bullet/ +F: package/clang/ +F: package/clinfo/ F: package/efl/ F: package/enlightenment/ F: package/flare-engine/ @@ -1847,9 +1827,11 @@ F: package/flare-game/ F: package/irrlicht/ F: package/liblinear/ F: package/lensfun/ +F: package/libclc/ F: package/libgta/ F: package/libspatialindex/ F: package/linux-syscall-support/ +F: package/llvm/ F: package/lugaru/ F: package/mcelog/ F: package/mesa3d/ @@ -2036,9 +2018,6 @@ F: package/tovid/ F: package/udftools/ F: package/xorriso/ -N: Steve Thomas -F: package/isl/ - N: Steven Noonan F: package/hwloc/ F: package/powertop/ @@ -2176,7 +2155,7 @@ F: package/pixz/ N: Vinicius Tinti F: package/python-thrift/ -N: Vivien Didelot +N: Vivien Didelot F: board/technologic/ts5500/ F: configs/ts5500_defconfig @@ -2258,6 +2237,8 @@ F: package/zisofs-tools/ F: support/download/ N: Yegor Yefremov +F: configs/beaglebone_defconfig +F: configs/beaglebone_qt5_defconfig F: package/acl/ F: package/attr/ F: package/bluez_utils/ @@ -2266,6 +2247,7 @@ F: package/bootstrap/ F: package/cannelloni/ F: package/can-utils/ F: package/circus/ +F: package/dhcpcd/ F: package/feh/ F: package/giblib/ F: package/imlib2/ @@ -2282,6 +2264,7 @@ F: package/libubox/ F: package/libuci/ F: package/linux-firmware/ F: package/modem-manager/ +F: package/nftables/ F: package/nuttcp/ F: package/parted/ F: package/phytool/ diff --git a/buildroot/Makefile b/buildroot/Makefile index 2c8146e87..dfa62870c 100644 --- a/buildroot/Makefile +++ b/buildroot/Makefile @@ -92,9 +92,9 @@ all: .PHONY: all # Set and export the version string -export BR2_VERSION := 2019.02.3 +export BR2_VERSION := 2019.02.8 # Actual time the release is cut (for reproducible builds) -BR2_VERSION_EPOCH = 1559893000 +BR2_VERSION_EPOCH = 1575746000 # Save running make version since it's clobbered by the make package RUNNING_MAKE_VERSION := $(MAKE_VERSION) @@ -248,7 +248,6 @@ ifeq ($(BR2_REPRODUCIBLE),y) export TZ = UTC export LANG = C export LC_ALL = C -export GZIP = -n endif # To put more focus on warnings, be less verbose as default @@ -811,6 +810,7 @@ endif # merged /usr .PHONY: target-post-image target-post-image: $(TARGETS_ROOTFS) target-finalize staging-finalize @rm -f $(ROOTFS_COMMON_TAR) + $(Q)mkdir -p $(BINARIES_DIR) @$(foreach s, $(call qstrip,$(BR2_ROOTFS_POST_IMAGE_SCRIPT)), \ $(call MESSAGE,"Executing post-image script $(s)"); \ $(EXTRA_ENV) $(s) $(BINARIES_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep)) diff --git a/buildroot/arch/Config.in.x86 b/buildroot/arch/Config.in.x86 index f7c53a0fa..331ee06bf 100644 --- a/buildroot/arch/Config.in.x86 +++ b/buildroot/arch/Config.in.x86 @@ -101,6 +101,15 @@ config BR2_x86_corei7 select BR2_X86_CPU_HAS_SSSE3 select BR2_X86_CPU_HAS_SSE4 select BR2_X86_CPU_HAS_SSE42 +config BR2_x86_westmere + bool "westmere" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 config BR2_x86_corei7_avx bool "corei7-avx" select BR2_X86_CPU_HAS_MMX @@ -235,8 +244,9 @@ config BR2_ARCH default "i686" if BR2_x86_nocona && BR2_i386 default "i686" if BR2_x86_core2 && BR2_i386 default "i686" if BR2_x86_corei7 && BR2_i386 + default "i686" if BR2_x86_westmere && BR2_i386 default "i686" if BR2_x86_corei7_avx && BR2_i386 - default "i686" if BR2_x86_corei7_avx2 && BR2_i386 + default "i686" if BR2_x86_core_avx2 && BR2_i386 default "i686" if BR2_x86_atom && BR2_i386 default "i686" if BR2_x86_silvermont && BR2_i386 default "i686" if BR2_x86_opteron && BR2_i386 @@ -271,6 +281,7 @@ config BR2_GCC_TARGET_ARCH default "corei7-avx" if BR2_x86_corei7_avx default "core-avx2" if BR2_x86_core_avx2 default "atom" if BR2_x86_atom + default "westmere" if BR2_x86_westmere default "silvermont" if BR2_x86_silvermont default "k8" if BR2_x86_opteron default "k8-sse3" if BR2_x86_opteron_sse3 diff --git a/buildroot/board/beaglebone/uEnv.txt b/buildroot/board/beaglebone/uEnv.txt index a665f2088..8fce54d87 100644 --- a/buildroot/board/beaglebone/uEnv.txt +++ b/buildroot/board/beaglebone/uEnv.txt @@ -3,6 +3,9 @@ devtype=mmc bootdir= bootfile=zImage bootpartition=mmcblk0p2 +console=ttyS0,115200n8 +loadaddr=0x82000000 +fdtaddr=0x88000000 set_mmc1=if test $board_name = A33515BB; then setenv bootpartition mmcblk1p2; fi -set_bootargs=setenv bootargs console=ttyO0,115200n8 root=/dev/${bootpartition} rw rootfstype=ext4 rootwait +set_bootargs=setenv bootargs console=${console} root=/dev/${bootpartition} rw rootfstype=ext4 rootwait uenvcmd=run set_mmc1; run set_bootargs;run loadimage;run loadfdt;printenv bootargs;bootz ${loadaddr} - ${fdtaddr} diff --git a/buildroot/board/qemu/aarch64-virt/readme.txt b/buildroot/board/qemu/aarch64-virt/readme.txt index 1ff2fba47..f868905d9 100644 --- a/buildroot/board/qemu/aarch64-virt/readme.txt +++ b/buildroot/board/qemu/aarch64-virt/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-aarch64 -M virt -cpu cortex-a53 -nographic -smp 1 -kernel output/images/Image -append "root=/dev/vda console=ttyAMA0" -netdev user,id=eth0 -device virtio-net-device,netdev=eth0 -drive file=output/images/rootfs.ext4,if=none,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 + qemu-system-aarch64 -M virt -cpu cortex-a53 -nographic -smp 1 -kernel output/images/Image -append "rootwait root=/dev/vda console=ttyAMA0" -netdev user,id=eth0 -device virtio-net-device,netdev=eth0 -drive file=output/images/rootfs.ext4,if=none,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/arm-versatile/readme.txt b/buildroot/board/qemu/arm-versatile/readme.txt index 33cdb7b81..f3a9e1ab4 100644 --- a/buildroot/board/qemu/arm-versatile/readme.txt +++ b/buildroot/board/qemu/arm-versatile/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-arm -M versatilepb -kernel output/images/zImage -dtb output/images/versatile-pb.dtb -drive file=output/images/rootfs.ext2,if=scsi,format=raw -append "root=/dev/sda console=ttyAMA0,115200" -serial stdio -net nic,model=rtl8139 -net user + qemu-system-arm -M versatilepb -kernel output/images/zImage -dtb output/images/versatile-pb.dtb -drive file=output/images/rootfs.ext2,if=scsi,format=raw -append "rootwait root=/dev/sda console=ttyAMA0,115200" -serial stdio -net nic,model=rtl8139 -net user Or for the noMMU emulation: diff --git a/buildroot/board/qemu/arm-vexpress/readme.txt b/buildroot/board/qemu/arm-vexpress/readme.txt index 35137e050..7f7b43a3b 100644 --- a/buildroot/board/qemu/arm-vexpress/readme.txt +++ b/buildroot/board/qemu/arm-vexpress/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-arm -M vexpress-a9 -smp 1 -m 256 -kernel output/images/zImage -dtb output/images/vexpress-v2p-ca9.dtb -drive file=output/images/rootfs.ext2,if=sd,format=raw -append "console=ttyAMA0,115200 root=/dev/mmcblk0" -serial stdio -net nic,model=lan9118 -net user + qemu-system-arm -M vexpress-a9 -smp 1 -m 256 -kernel output/images/zImage -dtb output/images/vexpress-v2p-ca9.dtb -drive file=output/images/rootfs.ext2,if=sd,format=raw -append "console=ttyAMA0,115200 rootwait root=/dev/mmcblk0" -serial stdio -net nic,model=lan9118 -net user The login prompt will appear in the terminal that started Qemu. The graphical window is the framebuffer. diff --git a/buildroot/board/qemu/m68k-q800/readme.txt b/buildroot/board/qemu/m68k-q800/readme.txt index bead8cdde..b516bacdf 100644 --- a/buildroot/board/qemu/m68k-q800/readme.txt +++ b/buildroot/board/qemu/m68k-q800/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-m68k -M q800 -kernel output/images/vmlinux -nographic -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/sda console=ttyS0" + qemu-system-m68k -M q800 -kernel output/images/vmlinux -nographic -drive file=output/images/rootfs.ext2,format=raw -append "rootwait root=/dev/sda console=ttyS0" The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/mips32r2-malta/readme.txt b/buildroot/board/qemu/mips32r2-malta/readme.txt index d1bbcc474..9ff3c4b81 100644 --- a/buildroot/board/qemu/mips32r2-malta/readme.txt +++ b/buildroot/board/qemu/mips32r2-malta/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-mips -M malta -kernel output/images/vmlinux -serial stdio -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" -net nic,model=pcnet -net user + qemu-system-mips -M malta -kernel output/images/vmlinux -serial stdio -drive file=output/images/rootfs.ext2,format=raw -append "rootwait root=/dev/hda" -net nic,model=pcnet -net user The login prompt will appear in the terminal that started Qemu. The graphical window is the framebuffer. No keyboard support has been diff --git a/buildroot/board/qemu/mips32r2el-malta/readme.txt b/buildroot/board/qemu/mips32r2el-malta/readme.txt index 4f59d3430..745bfea60 100644 --- a/buildroot/board/qemu/mips32r2el-malta/readme.txt +++ b/buildroot/board/qemu/mips32r2el-malta/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-mipsel -M malta -kernel output/images/vmlinux -serial stdio -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" -net nic,model=pcnet -net user + qemu-system-mipsel -M malta -kernel output/images/vmlinux -serial stdio -drive file=output/images/rootfs.ext2,format=raw -append "rootwait root=/dev/hda" -net nic,model=pcnet -net user The login prompt will appear in the terminal that started Qemu. The graphical window is the framebuffer. No keyboard support has been diff --git a/buildroot/board/qemu/mips32r6-malta/readme.txt b/buildroot/board/qemu/mips32r6-malta/readme.txt index 04de7e5c3..6a026b216 100644 --- a/buildroot/board/qemu/mips32r6-malta/readme.txt +++ b/buildroot/board/qemu/mips32r6-malta/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: -qemu-system-mips -M malta -cpu mips32r6-generic -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" -nographic +qemu-system-mips -M malta -cpu mips32r6-generic -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "rootwait root=/dev/hda" -nographic The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/mips32r6el-malta/readme.txt b/buildroot/board/qemu/mips32r6el-malta/readme.txt index 88602de0b..f69fd21af 100644 --- a/buildroot/board/qemu/mips32r6el-malta/readme.txt +++ b/buildroot/board/qemu/mips32r6el-malta/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: -qemu-system-mipsel -M malta -cpu mips32r6-generic -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" -net nic,model=pcnet -net user -nographic +qemu-system-mipsel -M malta -cpu mips32r6-generic -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "rootwait root=/dev/hda" -net nic,model=pcnet -net user -nographic The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/mips64-malta/readme.txt b/buildroot/board/qemu/mips64-malta/readme.txt index f0e7fef79..ea3a92541 100644 --- a/buildroot/board/qemu/mips64-malta/readme.txt +++ b/buildroot/board/qemu/mips64-malta/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-mips64 -M malta -kernel output/images/vmlinux -serial stdio -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" + qemu-system-mips64 -M malta -kernel output/images/vmlinux -serial stdio -drive file=output/images/rootfs.ext2,format=raw -append "rootwait root=/dev/hda" The login prompt will appear in the terminal that started Qemu. The graphical window is the framebuffer. diff --git a/buildroot/board/qemu/mips64el-malta/readme.txt b/buildroot/board/qemu/mips64el-malta/readme.txt index 03b149bc8..144da9383 100644 --- a/buildroot/board/qemu/mips64el-malta/readme.txt +++ b/buildroot/board/qemu/mips64el-malta/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-mips64el -M malta -kernel output/images/vmlinux -serial stdio -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" + qemu-system-mips64el -M malta -kernel output/images/vmlinux -serial stdio -drive file=output/images/rootfs.ext2,format=raw -append "rootwait root=/dev/hda" The login prompt will appear in the terminal that started Qemu. The graphical window is the framebuffer. diff --git a/buildroot/board/qemu/mips64r6-malta/readme.txt b/buildroot/board/qemu/mips64r6-malta/readme.txt index bf5b517a3..cfa16fd86 100644 --- a/buildroot/board/qemu/mips64r6-malta/readme.txt +++ b/buildroot/board/qemu/mips64r6-malta/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-mips64 -M malta -cpu I6400 -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" -nographic + qemu-system-mips64 -M malta -cpu I6400 -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "rootwait root=/dev/hda" -nographic The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/mips64r6el-malta/readme.txt b/buildroot/board/qemu/mips64r6el-malta/readme.txt index d51bffd08..61a6ceb5f 100644 --- a/buildroot/board/qemu/mips64r6el-malta/readme.txt +++ b/buildroot/board/qemu/mips64r6el-malta/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-mips64el -M malta -cpu I6400 -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/hda" -nographic + qemu-system-mips64el -M malta -cpu I6400 -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "rootwait root=/dev/hda" -nographic The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/ppc-g3beige/readme.txt b/buildroot/board/qemu/ppc-g3beige/readme.txt index 1c3b51539..608814ee3 100644 --- a/buildroot/board/qemu/ppc-g3beige/readme.txt +++ b/buildroot/board/qemu/ppc-g3beige/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-ppc -M g3beige -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "console=ttyS0 root=/dev/hda" -serial stdio -net nic,model=rtl8139 -net user + qemu-system-ppc -M g3beige -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "console=ttyS0 rootwait root=/dev/hda" -serial stdio -net nic,model=rtl8139 -net user The login prompt will appear in the terminal that started Qemu. The graphical window is the framebuffer. diff --git a/buildroot/board/qemu/ppc64-e5500/readme.txt b/buildroot/board/qemu/ppc64-e5500/readme.txt index cfc563974..808076698 100644 --- a/buildroot/board/qemu/ppc64-e5500/readme.txt +++ b/buildroot/board/qemu/ppc64-e5500/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-ppc64 -M ppce500 -cpu e5500 -m 256 -kernel output/images/uImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append "console=ttyS0 root=/dev/vda" -serial mon:stdio -nographic + qemu-system-ppc64 -M ppce500 -cpu e5500 -m 256 -kernel output/images/uImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append "console=ttyS0 rootwait root=/dev/vda" -serial mon:stdio -nographic The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/ppc64-pseries/readme.txt b/buildroot/board/qemu/ppc64-pseries/readme.txt index 5069df9e5..6a3e96a2e 100644 --- a/buildroot/board/qemu/ppc64-pseries/readme.txt +++ b/buildroot/board/qemu/ppc64-pseries/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-ppc64 -M pseries -cpu POWER7 -m 256 -kernel output/images/vmlinux -append "console=hvc0 root=/dev/sda" -drive file=output/images/rootfs.ext2,if=scsi,index=0,format=raw -serial stdio -display curses + qemu-system-ppc64 -M pseries -cpu POWER7 -m 256 -kernel output/images/vmlinux -append "console=hvc0 rootwait root=/dev/sda" -drive file=output/images/rootfs.ext2,if=scsi,index=0,format=raw -serial stdio -display curses The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/ppc64le-pseries/readme.txt b/buildroot/board/qemu/ppc64le-pseries/readme.txt index c23da70df..2728675df 100644 --- a/buildroot/board/qemu/ppc64le-pseries/readme.txt +++ b/buildroot/board/qemu/ppc64le-pseries/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: -qemu-system-ppc64 -M pseries -cpu POWER8 -m 256 -kernel output/images/vmlinux -append "console=hvc0 root=/dev/sda" -drive file=output/images/rootfs.ext2,if=scsi,index=0,format=raw -serial stdio -display curses +qemu-system-ppc64 -M pseries -cpu POWER8 -m 256 -kernel output/images/vmlinux -append "console=hvc0 rootwait root=/dev/sda" -drive file=output/images/rootfs.ext2,if=scsi,index=0,format=raw -serial stdio -display curses The login prompt will appear in the terminal window. diff --git a/buildroot/board/qemu/riscv32-virt/readme.txt b/buildroot/board/qemu/riscv32-virt/readme.txt index 2da99580e..24d44f0a9 100644 --- a/buildroot/board/qemu/riscv32-virt/readme.txt +++ b/buildroot/board/qemu/riscv32-virt/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-riscv32 -M virt -kernel output/images/bbl -append "root=/dev/vda ro console=ttyS0" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic + qemu-system-riscv32 -M virt -kernel output/images/bbl -append "rootwait root=/dev/vda ro console=ttyS0" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/riscv64-virt/readme.txt b/buildroot/board/qemu/riscv64-virt/readme.txt index 9f6e35c86..e878330de 100644 --- a/buildroot/board/qemu/riscv64-virt/readme.txt +++ b/buildroot/board/qemu/riscv64-virt/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-riscv64 -M virt -kernel output/images/bbl -append "root=/dev/vda ro console=ttyS0" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic + qemu-system-riscv64 -M virt -kernel output/images/bbl -append "rootwait root=/dev/vda ro console=ttyS0" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/sh4-r2d/readme.txt b/buildroot/board/qemu/sh4-r2d/readme.txt index d22af73ae..dd80953b9 100644 --- a/buildroot/board/qemu/sh4-r2d/readme.txt +++ b/buildroot/board/qemu/sh4-r2d/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-sh4 -M r2d -kernel output/images/zImage -drive file=output/images/rootfs.ext2,if=ide,format=raw -append "root=/dev/sda console=ttySC1,115200 noiotrap" -serial null -serial stdio -net nic,model=rtl8139 -net user + qemu-system-sh4 -M r2d -kernel output/images/zImage -drive file=output/images/rootfs.ext2,if=ide,format=raw -append "rootwait root=/dev/sda console=ttySC1,115200 noiotrap" -serial null -serial stdio -net nic,model=rtl8139 -net user The login prompt will appear in the terminal that started Qemu. The graphical window is the framebuffer. diff --git a/buildroot/board/qemu/sh4eb-r2d/readme.txt b/buildroot/board/qemu/sh4eb-r2d/readme.txt index daf515ab2..e71a9bce9 100644 --- a/buildroot/board/qemu/sh4eb-r2d/readme.txt +++ b/buildroot/board/qemu/sh4eb-r2d/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-sh4eb -M r2d -kernel output/images/zImage -drive file=output/images/rootfs.ext2,if=ide,format=raw -append "root=/dev/sda console=ttySC1,115200 noiotrap" -serial null -serial stdio -net nic,model=rtl8139 -net user + qemu-system-sh4eb -M r2d -kernel output/images/zImage -drive file=output/images/rootfs.ext2,if=ide,format=raw -append "rootwait root=/dev/sda console=ttySC1,115200 noiotrap" -serial null -serial stdio -net nic,model=rtl8139 -net user The login prompt will appear in the terminal that started Qemu. The graphical window is the framebuffer. diff --git a/buildroot/board/qemu/sparc-ss10/readme.txt b/buildroot/board/qemu/sparc-ss10/readme.txt index df6a75a3f..33833c2d3 100644 --- a/buildroot/board/qemu/sparc-ss10/readme.txt +++ b/buildroot/board/qemu/sparc-ss10/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-sparc -M SS-10 -kernel output/images/zImage -drive file=output/images/rootfs.ext2,format=raw -append "root=/dev/sda console=ttyS0,115200" -serial stdio -net nic,model=lance -net user + qemu-system-sparc -M SS-10 -kernel output/images/zImage -drive file=output/images/rootfs.ext2,format=raw -append "rootwait root=/dev/sda console=ttyS0,115200" -serial stdio -net nic,model=lance -net user The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/sparc64-sun4u/readme.txt b/buildroot/board/qemu/sparc64-sun4u/readme.txt index 24d5bbaff..f2e6e81a8 100644 --- a/buildroot/board/qemu/sparc64-sun4u/readme.txt +++ b/buildroot/board/qemu/sparc64-sun4u/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-sparc64 -M sun4u -kernel output/images/vmlinux -append "root=/dev/sda console=ttyS0,115200" -serial stdio -drive file=output/images/rootfs.ext2,format=raw -net nic,model=e1000 -net user + qemu-system-sparc64 -M sun4u -kernel output/images/vmlinux -append "rootwait root=/dev/sda console=ttyS0,115200" -serial stdio -drive file=output/images/rootfs.ext2,format=raw -net nic,model=e1000 -net user The login prompt will appear in the terminal that started Qemu. diff --git a/buildroot/board/qemu/x86/readme.txt b/buildroot/board/qemu/x86/readme.txt index c5e687734..42fc2439d 100644 --- a/buildroot/board/qemu/x86/readme.txt +++ b/buildroot/board/qemu/x86/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-i386 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append "root=/dev/vda" -net nic,model=virtio -net user + qemu-system-i386 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append "rootwait root=/dev/vda" -net nic,model=virtio -net user Optionally add -smp N to emulate a SMP system with N CPUs. diff --git a/buildroot/board/qemu/x86_64/readme.txt b/buildroot/board/qemu/x86_64/readme.txt index 425e34b12..4a1c0c0ff 100644 --- a/buildroot/board/qemu/x86_64/readme.txt +++ b/buildroot/board/qemu/x86_64/readme.txt @@ -1,6 +1,6 @@ Run the emulation with: - qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append "root=/dev/vda" -net nic,model=virtio -net user + qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append "rootwait root=/dev/vda" -net nic,model=virtio -net user Optionally add -smp N to emulate a SMP system with N CPUs. diff --git a/buildroot/boot/arm-trusted-firmware/arm-trusted-firmware.mk b/buildroot/boot/arm-trusted-firmware/arm-trusted-firmware.mk index 8ca3864dd..464e4d95e 100644 --- a/buildroot/boot/arm-trusted-firmware/arm-trusted-firmware.mk +++ b/buildroot/boot/arm-trusted-firmware/arm-trusted-firmware.mk @@ -5,8 +5,6 @@ ################################################################################ ARM_TRUSTED_FIRMWARE_VERSION = $(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_VERSION)) -ARM_TRUSTED_FIRMWARE_LICENSE = BSD-3-Clause -ARM_TRUSTED_FIRMWARE_LICENSE_FILES = license.rst ifeq ($(ARM_TRUSTED_FIRMWARE_VERSION),custom) # Handle custom ATF tarballs as specified by the configuration @@ -19,6 +17,10 @@ ARM_TRUSTED_FIRMWARE_SITE_METHOD = git else # Handle stable official ATF versions ARM_TRUSTED_FIRMWARE_SITE = $(call github,ARM-software,arm-trusted-firmware,$(ARM_TRUSTED_FIRMWARE_VERSION)) +# The licensing of custom or from-git versions is unknown. +# This is valid only for the official v1.4. +ARM_TRUSTED_FIRMWARE_LICENSE = BSD-3-Clause +ARM_TRUSTED_FIRMWARE_LICENSE_FILES = license.rst endif ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE)$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_LATEST_VERSION),y) diff --git a/buildroot/boot/barebox/barebox.mk b/buildroot/boot/barebox/barebox.mk index 9e8a9f67b..52178d89c 100644 --- a/buildroot/boot/barebox/barebox.mk +++ b/buildroot/boot/barebox/barebox.mk @@ -76,6 +76,10 @@ $(1)_KCONFIG_FRAGMENT_FILES = $$(call qstrip,$$(BR2_TARGET_$(1)_CONFIG_FRAGMENT_ $(1)_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig $(1)_KCONFIG_OPTS = $$($(1)_MAKE_FLAGS) +$(1)_KCONFIG_DEPENDENCIES = \ + $(BR2_BISON_HOST_DEPENDENCY) \ + $(BR2_FLEX_HOST_DEPENDENCY) + ifeq ($$(BR2_TARGET_$(1)_BAREBOXENV),y) define $(1)_BUILD_BAREBOXENV_CMDS $$(TARGET_CC) $$(TARGET_CFLAGS) $$(TARGET_LDFLAGS) -o $$(@D)/bareboxenv \ diff --git a/buildroot/configs/aarch64_efi_defconfig b/buildroot/configs/aarch64_efi_defconfig index e87193218..2aab6e969 100644 --- a/buildroot/configs/aarch64_efi_defconfig +++ b/buildroot/configs/aarch64_efi_defconfig @@ -13,7 +13,7 @@ BR2_PACKAGE_HOST_GENIMAGE=y # Bootloader BR2_TARGET_GRUB2=y -BR2_TARGET_GRUB2_AARCH64_EFI=y +BR2_TARGET_GRUB2_ARM64_EFI=y # Filesystem / image BR2_TARGET_ROOTFS_EXT2=y diff --git a/buildroot/configs/beaglebone_defconfig b/buildroot/configs/beaglebone_defconfig index b4f152fd6..fbb259f57 100644 --- a/buildroot/configs/beaglebone_defconfig +++ b/buildroot/configs/beaglebone_defconfig @@ -2,7 +2,6 @@ BR2_arm=y BR2_cortex_a8=y BR2_GLOBAL_PATCH_DIR="board/beaglebone/patches" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y -BR2_TARGET_GENERIC_GETTY_PORT="ttyO0" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/beaglebone/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y diff --git a/buildroot/docs/manual/adding-packages-cargo.txt b/buildroot/docs/manual/adding-packages-cargo.txt index b7fc09acf..b6029e1ee 100644 --- a/buildroot/docs/manual/adding-packages-cargo.txt +++ b/buildroot/docs/manual/adding-packages-cargo.txt @@ -17,7 +17,7 @@ The +Config.in+ file of Cargo-based package 'foo' should contain: --------------------------- 01: config BR2_PACKAGE_FOO 02: bool "foo" -03: depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS +03: depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS 04: select BR2_PACKAGE_HOST_CARGO 05: help 06: This is a comment that explains what foo is. diff --git a/buildroot/docs/manual/adding-packages-python.txt b/buildroot/docs/manual/adding-packages-python.txt index 15137cfd6..74e2e78b2 100644 --- a/buildroot/docs/manual/adding-packages-python.txt +++ b/buildroot/docs/manual/adding-packages-python.txt @@ -67,9 +67,13 @@ Python build system, but are not Python modules, can freely choose their name (existing examples in Buildroot are +scons+ and +supervisor+). -In their +Config.in+ file, they should depend on +BR2_PACKAGE_PYTHON+ -so that when Buildroot will enable Python 3 usage for modules, we will -be able to enable Python modules progressively on Python 3. +Packages that are only compatible with one version of Python (as in: +Python 2 or Python 3) should depend on that version explicitely in +their +Config.in+ file (+BR2_PACKAGE_PYTHON+ for Python 2, ++BR2_PACKAGE_PYTHON3+ for Python 3). Packages that are compatible +with both versions should not explicitely depend on them in their ++Config.in+ file, since that condition is already expressed for the +whole "External python modules" menu. The main macro of the Python package infrastructure is +python-package+. It is similar to the +generic-package+ macro. It is diff --git a/buildroot/docs/manual/common-usage.txt b/buildroot/docs/manual/common-usage.txt index e3d7578c8..a36301afd 100644 --- a/buildroot/docs/manual/common-usage.txt +++ b/buildroot/docs/manual/common-usage.txt @@ -310,8 +310,8 @@ installed (+python-matplotlib+ on most distributions), and also the +argparse+ module if you're using a Python version older than 2.7 (+python-argparse+ on most distributions). -Just like for the duration graph, a +BR2_GRAPH_OUT+ environment is -supported to adjust the output file format. See xref:graph-depends[] +Just like for the duration graph, a +BR2_GRAPH_OUT+ environment variable +is supported to adjust the output file format. See xref:graph-depends[] for details about this environment variable. .Note diff --git a/buildroot/docs/manual/configure.txt b/buildroot/docs/manual/configure.txt index 008813c9b..c9eef567f 100644 --- a/buildroot/docs/manual/configure.txt +++ b/buildroot/docs/manual/configure.txt @@ -206,9 +206,9 @@ Buildroot or crosstool-NG. If you want to generate a custom toolchain for your project, that can be used as an external toolchain in Buildroot, our recommendation is -definitely to build it with http://crosstool-ng.org[crosstool-NG]. We -recommend to build the toolchain separately from Buildroot, and then -_import_ it in Buildroot using the external toolchain backend. +to build it either with Buildroot itself (see +xref:build-toolchain-with-buildroot[]) or with +http://crosstool-ng.org[crosstool-NG]. Advantages of this backend: @@ -223,7 +223,53 @@ Drawbacks of this backend: * If your pre-built external toolchain has a bug, may be hard to get a fix from the toolchain vendor, unless you build your external - toolchain by yourself using Crosstool-NG. + toolchain by yourself using Buildroot or Crosstool-NG. + +[[build-toolchain-with-buildroot]] +==== Build an external toolchain with Buildroot + +The Buildroot internal toolchain option can be used to create an +external toolchain. Here are a series of steps to build an internal +toolchain and package it up for reuse by Buildroot itself (or other +projects). + +Create a new Buildroot configuration, with the following details: + +* Select the appropriate *Target options* for your target CPU + architecture + +* In the *Toolchain* menu, keep the default of *Buildroot toolchain* + for *Toolchain type*, and configure your toolchain as desired + +* In the *System configuration* menu, select *None* as the *Init + system* and *none* as */bin/sh* + +* In the *Target packages* menu, disable *BusyBox* + +* In the *Filesystem images* menu, disable *tar the root filesystem* + +Then, we can trigger the build, and also ask Buildroot to generate a +SDK. This will conveniently generate for us a tarball which contains +our toolchain: + +----- +make sdk +----- + +This produces the SDK tarball in +$(O)/images+, with a name similar to ++arm-buildroot-linux-uclibcgnueabi_sdk-buildroot.tar.gz+. Save this +tarball, as it is now the toolchain that you can re-use as an external +toolchain in other Buildroot projects. + +In those other Buildroot projects, in the *Toolchain* menu: + +* Set *Toolchain type* to *External toolchain* + +* Set *Toolchain* to *Custom toolchain* + +* Set *Toolchain origin* to *Toolchain to be downloaded and installed* + +* Set *Toolchain URL* to +file:///path/to/your/sdk/tarball.tar.gz+ ===== External toolchain wrapper diff --git a/buildroot/docs/manual/contribute.txt b/buildroot/docs/manual/contribute.txt index 5530ce154..f339ca50b 100644 --- a/buildroot/docs/manual/contribute.txt +++ b/buildroot/docs/manual/contribute.txt @@ -73,7 +73,7 @@ basically two things that can be done: In the commit message of a patch fixing an autobuild failure, add a reference to the build result directory, as follows: --------------------- -Fixes http://autobuild.buildroot.org/results/51000a9d4656afe9e0ea6f07b9f8ed374c2e4069 +Fixes: http://autobuild.buildroot.org/results/51000a9d4656afe9e0ea6f07b9f8ed374c2e4069 --------------------- === Reviewing and testing patches @@ -402,7 +402,7 @@ the problem is complex, it is OK to add more paragraphs. All paragraphs should be wrapped at 72 characters. A paragraph that explains the root cause of the problem. Again, more -than on paragraph is OK. +than one paragraph is OK. Finally, one or more paragraphs that explain how the problem is solved. Don't hesitate to explain complex solutions in detail. diff --git a/buildroot/docs/manual/manual.html b/buildroot/docs/manual/manual.html index bc5aa774d..615893952 100644 --- a/buildroot/docs/manual/manual.html +++ b/buildroot/docs/manual/manual.html @@ -1,8 +1,8 @@ -The Buildroot user manual

The Buildroot user manual


Table of Contents

I. Getting started
1. About Buildroot
2. System requirements
2.1. Mandatory packages
2.2. Optional packages
3. Getting Buildroot
4. Buildroot quick start
5. Community resources
II. User guide
6. Buildroot configuration
6.1. Cross-compilation toolchain
6.2. /dev management
6.3. init system
7. Configuration of other components
8. General Buildroot usage
8.1. make tips
8.2. Understanding when a full rebuild is necessary
8.3. Understanding how to rebuild packages
8.4. Offline builds
8.5. Building out-of-tree
8.6. Environment variables
8.7. Dealing efficiently with filesystem images
8.8. Graphing the dependencies between packages
8.9. Graphing the build duration
8.10. Graphing the filesystem size contribution of packages
8.11. Integration with Eclipse
8.12. Advanced usage
9. Project-specific customization
9.1. Recommended directory structure
9.2. Keeping customizations outside of Buildroot
9.3. Storing the Buildroot configuration
9.4. Storing the configuration of other components
9.5. Customizing the generated target filesystem
9.6. Adding custom user accounts
9.7. Customization after the images have been created
9.8. Adding project-specific patches
9.9. Adding project-specific packages
9.10. Quick guide to storing your project-specific customizations
10. Frequently Asked Questions & Troubleshooting
10.1. The boot hangs after Starting network…
10.2. Why is there no compiler on the target?
10.3. Why are there no development files on the target?
10.4. Why is there no documentation on the target?
10.5. Why are some packages not visible in the Buildroot config menu?
10.6. Why not use the target directory as a chroot directory?
10.7. Why doesn’t Buildroot generate binary packages (.deb, .ipkg…)?
10.8. How to speed-up the build process?
11. Known issues
12. Legal notice and licensing
12.1. Complying with open source licenses
12.2. Complying with the Buildroot license
13. Beyond Buildroot
13.1. Boot the generated images
13.2. Chroot
III. Developer guide
14. How Buildroot works
15. Coding style
15.1. Config.in file
15.2. The .mk file
15.3. The documentation
15.4. Support scripts
16. Adding support for a particular board
17. Adding new packages to Buildroot
17.1. Package directory
17.2. Config files
17.3. The .mk file
17.4. The .hash file
17.5. Infrastructure for packages with specific build systems
17.6. Infrastructure for autotools-based packages
17.7. Infrastructure for CMake-based packages
17.8. Infrastructure for Python packages
17.9. Infrastructure for LuaRocks-based packages
17.10. Infrastructure for Perl/CPAN packages
17.11. Infrastructure for virtual packages
17.12. Infrastructure for packages using kconfig for configuration files
17.13. Infrastructure for rebar-based packages
17.14. Infrastructure for Waf-based packages
17.15. Infrastructure for Meson-based packages
17.16. Integration of Cargo-based packages
17.17. Infrastructure for Go packages
17.18. Infrastructure for packages building kernel modules
17.19. Infrastructure for asciidoc documents
17.20. Infrastructure specific to the Linux kernel package
17.21. Hooks available in the various build steps
17.22. Gettext integration and interaction with packages
17.23. Tips and tricks
17.24. Conclusion
18. Patching a package
18.1. Providing patches
18.2. How patches are applied
18.3. Format and licensing of the package patches
18.4. Integrating patches found on the Web
19. Download infrastructure
20. Debugging Buildroot
21. Contributing to Buildroot
21.1. Reproducing, analyzing and fixing bugs
21.2. Analyzing and fixing autobuild failures
21.3. Reviewing and testing patches
21.4. Work on items from the TODO list
21.5. Submitting patches
21.6. Reporting issues/bugs or getting help
22. DEVELOPERS file and get-developers
IV. Appendix
23. Makedev syntax documentation
24. Makeusers syntax documentation
25. Migrating from older Buildroot versions
25.1. Migrating to 2016.11
25.2. Migrating to 2017.08

Buildroot 2019.02.3 manual generated on 2019-06-07 -07:39:11 UTC from git revision 3e8b918b87

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

The Buildroot user manual


Table of Contents

I. Getting started
1. About Buildroot
2. System requirements
2.1. Mandatory packages
2.2. Optional packages
3. Getting Buildroot
4. Buildroot quick start
5. Community resources
II. User guide
6. Buildroot configuration
6.1. Cross-compilation toolchain
6.2. /dev management
6.3. init system
7. Configuration of other components
8. General Buildroot usage
8.1. make tips
8.2. Understanding when a full rebuild is necessary
8.3. Understanding how to rebuild packages
8.4. Offline builds
8.5. Building out-of-tree
8.6. Environment variables
8.7. Dealing efficiently with filesystem images
8.8. Graphing the dependencies between packages
8.9. Graphing the build duration
8.10. Graphing the filesystem size contribution of packages
8.11. Integration with Eclipse
8.12. Advanced usage
9. Project-specific customization
9.1. Recommended directory structure
9.2. Keeping customizations outside of Buildroot
9.3. Storing the Buildroot configuration
9.4. Storing the configuration of other components
9.5. Customizing the generated target filesystem
9.6. Adding custom user accounts
9.7. Customization after the images have been created
9.8. Adding project-specific patches
9.9. Adding project-specific packages
9.10. Quick guide to storing your project-specific customizations
10. Frequently Asked Questions & Troubleshooting
10.1. The boot hangs after Starting network…
10.2. Why is there no compiler on the target?
10.3. Why are there no development files on the target?
10.4. Why is there no documentation on the target?
10.5. Why are some packages not visible in the Buildroot config menu?
10.6. Why not use the target directory as a chroot directory?
10.7. Why doesn’t Buildroot generate binary packages (.deb, .ipkg…)?
10.8. How to speed-up the build process?
11. Known issues
12. Legal notice and licensing
12.1. Complying with open source licenses
12.2. Complying with the Buildroot license
13. Beyond Buildroot
13.1. Boot the generated images
13.2. Chroot
III. Developer guide
14. How Buildroot works
15. Coding style
15.1. Config.in file
15.2. The .mk file
15.3. The documentation
15.4. Support scripts
16. Adding support for a particular board
17. Adding new packages to Buildroot
17.1. Package directory
17.2. Config files
17.3. The .mk file
17.4. The .hash file
17.5. Infrastructure for packages with specific build systems
17.6. Infrastructure for autotools-based packages
17.7. Infrastructure for CMake-based packages
17.8. Infrastructure for Python packages
17.9. Infrastructure for LuaRocks-based packages
17.10. Infrastructure for Perl/CPAN packages
17.11. Infrastructure for virtual packages
17.12. Infrastructure for packages using kconfig for configuration files
17.13. Infrastructure for rebar-based packages
17.14. Infrastructure for Waf-based packages
17.15. Infrastructure for Meson-based packages
17.16. Integration of Cargo-based packages
17.17. Infrastructure for Go packages
17.18. Infrastructure for packages building kernel modules
17.19. Infrastructure for asciidoc documents
17.20. Infrastructure specific to the Linux kernel package
17.21. Hooks available in the various build steps
17.22. Gettext integration and interaction with packages
17.23. Tips and tricks
17.24. Conclusion
18. Patching a package
18.1. Providing patches
18.2. How patches are applied
18.3. Format and licensing of the package patches
18.4. Integrating patches found on the Web
19. Download infrastructure
20. Debugging Buildroot
21. Contributing to Buildroot
21.1. Reproducing, analyzing and fixing bugs
21.2. Analyzing and fixing autobuild failures
21.3. Reviewing and testing patches
21.4. Work on items from the TODO list
21.5. Submitting patches
21.6. Reporting issues/bugs or getting help
22. DEVELOPERS file and get-developers
IV. Appendix
23. Makedev syntax documentation
24. Makeusers syntax documentation
25. Migrating from older Buildroot versions
25.1. Migrating to 2016.11
25.2. Migrating to 2017.08

Buildroot 2019.02.8 manual generated on 2019-12-07 +19:24:18 UTC from git revision aaa1437b11

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

Copyright © 2004-2019 The Buildroot developers

logo.png

Part I. Getting started

Chapter 1. About Buildroot

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

In order to achieve this, Buildroot is able to generate a @@ -16,8 +16,8 @@ processors everyone is used to having in his PC. They can be PowerPC processors, MIPS processors, ARM processors, etc.

Buildroot supports numerous processors and their variants; it also comes with default configurations for several boards available off-the-shelf. Besides this, a number of third-party projects are based on, -or develop their BSP [1] or -SDK [2] on top of Buildroot.



[1] BSP: Board Support Package

[2] SDK: Software Development Kit

Chapter 2. System requirements

Buildroot is designed to run on Linux systems.

While Buildroot itself will build most host packages it needs for the +or develop their BSP [1] or +SDK [2] on top of Buildroot.



[1] BSP: Board Support Package

[2] SDK: Software Development Kit

Chapter 2. System requirements

Buildroot is designed to run on Linux systems.

While Buildroot itself will build most host packages it needs for the compilation, certain standard Linux utilities are expected to be already installed on the host system. Below you will find an overview of the mandatory and optional packages (note that package names may vary @@ -142,7 +142,6 @@ utility (including the interface), so you may need to install "development" packages for relevant libraries used by the configuration utilities. Refer to Chapter 2, System requirements for more details, specifically the optional requirements -Section 2.2, “Optional packages” to get the dependencies of your favorite interface.

For each menu entry in the configuration tool, you can find associated help that describes the purpose of the entry. Refer to Chapter 6, Buildroot configuration for details on some specific configuration aspects.

Once everything is configured, the configuration tool generates a @@ -174,15 +173,21 @@ This directory contains several subdirectories:

  • -staging/ which contains a hierarchy similar to a root filesystem - hierarchy. This directory contains the headers and libraries of the - cross-compilation toolchain and all the userspace packages selected - for the target. However, this directory is not intended to be - the root filesystem for the target: it contains a lot of development - files, unstripped binaries and libraries that make it far too big - for an embedded system. These development files are used to compile - libraries and applications for the target that depend on other - libraries. +host/ contains both the tools built for the host, and the sysroot + of the target toolchain. The former is an installation of tools + compiled for the host that are needed for the proper execution of + Buildroot, including the cross-compilation toolchain. The latter + is a hierarchy similar to a root filesystem hierarchy. It contains + the headers and libraries of all user-space packages that provide + and install libraries used by other packages. However, this + directory is not intended to be the root filesystem for the target: + it contains a lot of development files, unstripped binaries and + libraries that make it far too big for an embedded system. These + development files are used to compile libraries and applications for + the target that depend on other libraries. +
  • +staging/ is a symlink to the target toolchain sysroot inside + host/, which exists for backwards compatibility.
  • target/ which contains almost the complete root filesystem for the target: everything needed is present except the device files in @@ -197,10 +202,6 @@ This directory contains several subdirectories:

    • -host/ contains the installation of tools compiled for the host - that are needed for the proper execution of Buildroot, including the - cross-compilation toolchain.

    These commands, make menuconfig|nconfig|gconfig|xconfig and make, are the basic ones that allow to easily and quickly generate images fitting your needs, with all the features and applications you enabled.

    More details about the "make" command usage are given in @@ -272,7 +273,7 @@ processor. Under most Linux systems, the compilation toolchain uses the GNU libc (glibc) as the C standard library. This compilation toolchain is called the "host compilation toolchain". The machine on which it is running, and on which you’re working, is called the "host -system" [3].

    The compilation toolchain is provided by your distribution, and +system" [3].

    The compilation toolchain is provided by your distribution, and Buildroot has nothing to do with it (other than using it to build a cross-compilation toolchain and other tools that are run on the development host).

    As said above, the compilation toolchain that comes with your system @@ -398,9 +399,9 @@ build environment. So even if you are building a system for a x86 or x86_64 target, you have to generate a cross-compilation toolchain with Buildroot or crosstool-NG.

    If you want to generate a custom toolchain for your project, that can be used as an external toolchain in Buildroot, our recommendation is -definitely to build it with crosstool-NG. We -recommend to build the toolchain separately from Buildroot, and then -import it in Buildroot using the external toolchain backend.

    Advantages of this backend:

    • +to build it either with Buildroot itself (see +Section 6.1.3, “Build an external toolchain with Buildroot”) or with +crosstool-NG.

      Advantages of this backend:

      • Allows to use well-known and well-tested cross-compilation toolchains.
      • @@ -410,7 +411,36 @@ Avoids the build time of the cross-compilation toolchain, which is

      Drawbacks of this backend:

      • If your pre-built external toolchain has a bug, may be hard to get a fix from the toolchain vendor, unless you build your external - toolchain by yourself using Crosstool-NG. + toolchain by yourself using Buildroot or Crosstool-NG. +

    6.1.3. Build an external toolchain with Buildroot

    The Buildroot internal toolchain option can be used to create an +external toolchain. Here are a series of steps to build an internal +toolchain and package it up for reuse by Buildroot itself (or other +projects).

    Create a new Buildroot configuration, with the following details:

    • +Select the appropriate Target options for your target CPU + architecture +
    • +In the Toolchain menu, keep the default of Buildroot toolchain + for Toolchain type, and configure your toolchain as desired +
    • +In the System configuration menu, select None as the Init + system and none as /bin/sh +
    • +In the Target packages menu, disable BusyBox +
    • +In the Filesystem images menu, disable tar the root filesystem +

    Then, we can trigger the build, and also ask Buildroot to generate a +SDK. This will conveniently generate for us a tarball which contains +our toolchain:

    make sdk

    This produces the SDK tarball in $(O)/images, with a name similar to +arm-buildroot-linux-uclibcgnueabi_sdk-buildroot.tar.gz. Save this +tarball, as it is now the toolchain that you can re-use as an external +toolchain in other Buildroot projects.

    In those other Buildroot projects, in the Toolchain menu:

    • +Set Toolchain type to External toolchain +
    • +Set Toolchain to Custom toolchain +
    • +Set Toolchain origin to Toolchain to be downloaded and installed +
    • +Set Toolchain URL to file:///path/to/your/sdk/tarball.tar.gz

    External toolchain wrapper

    When using an external toolchain, Buildroot generates a wrapper program, that transparently passes the appropriate options (according to the configuration) to the external toolchain programs. In case you need to @@ -547,7 +577,7 @@ The third solution is systemd. http://www.freedesktop.org/wiki/Software/systemd.

The solution recommended by Buildroot developers is to use the BusyBox init as it is sufficient for most embedded -systems. systemd can be used for more complex situations.



[3] This terminology differs from what is used by GNU +systems. systemd can be used for more complex situations.



[3] This terminology differs from what is used by GNU configure, where the host is the machine on which the application will run (which is usually the same as target)

Chapter 7. Configuration of other components

Before attempting to modify any of the components below, make sure you have already configured Buildroot itself, and have enabled the @@ -715,14 +745,16 @@ depending on the availability of another package.

The easiest way to rebui its build directory in output/build. Buildroot will then re-extract, re-configure, re-compile and re-install this package from scratch. You can ask buildroot to do this with the make <package>-dirclean command.

On the other hand, if you only want to restart the build process of a -package from its compilation step, you can run make -<package>-rebuild, followed by make or make <package>. It will -restart the compilation and installation of the package, but not from -scratch: it basically re-executes make and make install -inside the package, so it will only rebuild files that changed.

If you want to restart the build process of a package from its -configuration step, you can run make <package>-reconfigure, followed -by make or make <package>. It will restart the configuration, -compilation and installation of the package.

Internally, Buildroot creates so-called stamp files to keep track of +package from its compilation step, you can run make <package>-rebuild. It +will restart the compilation and installation of the package, but not from +scratch: it basically re-executes make and make install inside the package, +so it will only rebuild files that changed.

If you want to restart the build process of a package from its configuration +step, you can run make <package>-reconfigure. It will restart the +configuration, compilation and installation of the package.

While <package>-rebuild implies <package>-reinstall and +<package>-reconfigure implies <package>-rebuild, these targets as well +as <package> only act on the said package, and do not trigger re-creating +the root filesystem image. If re-creating the root filesystem in necessary, +one should in addition run make or make all.

Internally, Buildroot creates so-called stamp files to keep track of which build steps have been completed for each package. They are stored in the package build directory, output/build/<package>-<version>/ and are named @@ -900,8 +932,8 @@ the different packages.

To generate these data after a build, run:

This graph-size target requires the Python Matplotlib library to be installed (python-matplotlib on most distributions), and also the argparse module if you’re using a Python version older than 2.7 -(python-argparse on most distributions).

Just like for the duration graph, a BR2_GRAPH_OUT environment is -supported to adjust the output file format. See Section 8.8, “Graphing the dependencies between packages” +(python-argparse on most distributions).

Just like for the duration graph, a BR2_GRAPH_OUT environment variable +is supported to adjust the output file format. See Section 8.8, “Graphing the dependencies between packages” for details about this environment variable.

Note. The collected filesystem size data is only meaningful after a complete clean rebuild. Be sure to run make clean all before using make graph-size.

To compare the root filesystem size of two different Buildroot compilations, @@ -1025,8 +1057,7 @@ package

graph-depends

Generate a dependency graph of the package, in the context of the current Buildroot configuration. See -this section -Section 8.8, “Graphing the dependencies between packages” for more details about dependency +this section for more details about dependency graphs.

graph-rdepends

Generate a graph of this package reverse dependencies (i.e the packages that depend on it, directly or indirectly)

dirclean

Remove the whole package build directory

reinstall

Re-run the install commands

rebuild

Re-run the compilation commands - this only makes @@ -1093,7 +1124,11 @@ a local WebKit source tree:

WEBKITGTK_OVERRIDE_SRCDIR = /
 WEBKITGTK_OVERRIDE_SRCDIR_RSYNC_EXCLUSIONS = \
         --exclude JSTests --exclude ManualTests --exclude PerformanceTests \
         --exclude WebDriverTests --exclude WebKitBuild --exclude WebKitLibraries \
-        --exclude WebKit.xcworkspace --exclude Websites --exclude Examples

Chapter 9. Project-specific customization

Typical actions you may need to perform for a given project are:

  • + --exclude WebKit.xcworkspace --exclude Websites --exclude Examples

    By default, Buildroot skips syncing of VCS artifacts (e.g., the .git and +.svn directories). Some packages prefer to have these VCS directories +available during build, for example for automatically determining a precise +commit reference for version information. To undo this built-in filtering at a +cost of a slower speed, add these directories back:

    LINUX_OVERRIDE_SRCDIR_RSYNC_EXCLUSIONS = --include .git

Chapter 9. Project-specific customization

Typical actions you may need to perform for a given project are:

  • configuring Buildroot (including build options and toolchain, bootloader, kernel, package and filesystem image type selection)
  • @@ -1548,8 +1583,7 @@ such changes from there unless you use an explicit fakeroot from the post-build script.

    Instead, Buildroot provides support for so-called permission tables. To use this feature, set config option BR2_ROOTFS_DEVICE_TABLE to a space-separated list of permission tables, regular text files following -the makedev syntax -Chapter 23, Makedev syntax documentation.

    If you are using a static device table (i.e. not using devtmpfs, +the makedev syntax.

    If you are using a static device table (i.e. not using devtmpfs, mdev, or (e)udev) then you can add device nodes using the same syntax, in so-called device tables. To use this feature, set config option BR2_ROOTFS_STATIC_DEVICE_TABLE to a space-separated list of @@ -1561,8 +1595,7 @@ related to a specific application, you should set variables To cover this requirement, Buildroot provides support for so-called users tables. To use this feature, set config option BR2_ROOTFS_USERS_TABLES to a space-separated list of users tables, -regular text files following the makeusers syntax -Chapter 24, Makeusers syntax documentation.

    As shown in Section 9.1, “Recommended directory structure”, the recommended location for +regular text files following the makeusers syntax.

    As shown in Section 9.1, “Recommended directory structure”, the recommended location for such files is board/<company>/<boardname>/.

    It should be noted that if the custom users are related to a specific application, you should set variable FOO_USERS in the package’s .mk file instead (see Section 17.5.2, “generic-package reference”).

9.7. Customization after the images have been created

While post-build scripts (Section 9.5, “Customizing the generated target filesystem”) are run before @@ -2332,8 +2365,7 @@ preferred.

Note that such dependencies will ensure that the dependency opt is also enabled, but not necessarily built before your package. To do so, the dependency also needs to be expressed in the .mk file of the package.

Further formatting details: see the -coding style -Section 15.1, “Config.in file”.

17.2.4. Dependencies on target and toolchain options

Many packages depend on certain options of the toolchain: the choice of +coding style.

17.2.4. Dependencies on target and toolchain options

Many packages depend on certain options of the toolchain: the choice of C library, C++ support, thread support, RPC support, wchar support, or dynamic library support. Some packages can only be built on certain target architectures, or if an MMU is available in the processor.

These dependencies have to be expressed with the appropriate depends @@ -2483,46 +2515,35 @@ different way, using different infrastructures:

Further formatting details: see the writing -rules -Section 15.2, “The .mk file”.

17.4. The .hash file

When possible, you must add a third file, named libfoo.hash, that +rules.

17.4. The .hash file

When possible, you must add a third file, named libfoo.hash, that contains the hashes of the downloaded files for the libfoo package. The only reason for not adding a .hash file is when hash checking is not possible due to how the package is downloaded.

When a package has a version selection choice, then the hash file may be @@ -2679,7 +2700,7 @@ flags. The argument to be given to LIBFOO_CONFIG_SCRIPTS is the file name(s) of the shell script(s) needing fixing. All these names are relative to $(STAGING_DIR)/usr/bin and if needed multiple names can be given.

In addition, the scripts listed in LIBFOO_CONFIG_SCRIPTS are removed -from $(TARGET_DIR)/usr/bin, since they are not needed on the target.

Example 17.1. Config script: divine package

Package divine installs shell script $(STAGING_DIR)/usr/bin/divine-config.

So its fixup would be:

DIVINE_CONFIG_SCRIPTS = divine-config

Example 17.2. Config script: imagemagick package:

Package imagemagick installs the following scripts: +from $(TARGET_DIR)/usr/bin, since they are not needed on the target.

Example 17.1. Config script: divine package

Package divine installs shell script $(STAGING_DIR)/usr/bin/divine-config.

So its fixup would be:

DIVINE_CONFIG_SCRIPTS = divine-config

Example 17.2. Config script: imagemagick package:

Package imagemagick installs the following scripts: $(STAGING_DIR)/usr/bin/{Magick,Magick++,MagickCore,MagickWand,Wand}-config

So it’s fixup would be:

IMAGEMAGICK_CONFIG_SCRIPTS = \
    Magick-config Magick++-config \
    MagickCore-config MagickWand-config Wand-config

On line 14, we specify the list of dependencies this package relies @@ -2766,8 +2787,7 @@ because two builds can never be perfectly simultaneous, and because itself use a different mechanism: all files of the form *.patch present in the package directory inside Buildroot will be applied to the package after extraction (see - patching a package -Chapter 18, Patching a package). Finally, patches listed in + patching a package). Finally, patches listed in the LIBFOO_PATCH variable are applied before the patches stored in the Buildroot package directory.

  • @@ -3385,16 +3405,19 @@ built.

  • python-<something> in Buildroot. Other packages that use the Python build system, but are not Python modules, can freely choose their name (existing examples in Buildroot are scons and -supervisor).

    In their Config.in file, they should depend on BR2_PACKAGE_PYTHON -so that when Buildroot will enable Python 3 usage for modules, we will -be able to enable Python modules progressively on Python 3.

    The main macro of the Python package infrastructure is +supervisor).

    Packages that are only compatible with one version of Python (as in: +Python 2 or Python 3) should depend on that version explicitely in +their Config.in file (BR2_PACKAGE_PYTHON for Python 2, +BR2_PACKAGE_PYTHON3 for Python 3). Packages that are compatible +with both versions should not explicitely depend on them in their +Config.in file, since that condition is already expressed for the +whole "External python modules" menu.

    The main macro of the Python package infrastructure is python-package. It is similar to the generic-package macro. It is also possible to create Python host packages with the host-python-package macro.

    Just like the generic infrastructure, the Python infrastructure works by defining a number of variables before calling the python-package or host-python-package macros.

    All the package metadata information variables that exist in the -generic package infrastructure -Section 17.5.2, “generic-package reference” also +generic package infrastructure also exist in the Python infrastructure: PYTHON_FOO_VERSION, PYTHON_FOO_SOURCE, PYTHON_FOO_PATCH, PYTHON_FOO_SITE, PYTHON_FOO_SUBDIR, PYTHON_FOO_DEPENDENCIES, PYTHON_FOO_LICENSE, @@ -3974,7 +3997,7 @@ user to build programs or libraries written in Rust, but it also downloads and manages their dependencies, to ensure repeatable builds. Cargo packages are called "crates".

    17.16.1. Cargo-based package’s Config.in file

    The Config.in file of Cargo-based package foo should contain:

    01: config BR2_PACKAGE_FOO
     02:     bool "foo"
    -03:     depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS
    +03:     depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS
     04:     select BR2_PACKAGE_HOST_CARGO
     05:     help
     06:       This is a comment that explains what foo is.
    @@ -4017,8 +4040,7 @@ package. Let’s start with an example:

    01: #############
     34:
     35: $(eval $(generic-package))

    The Makefile starts with the definition of the standard variables for package declaration (lines 7 to 11).

    As seen in line 35, it is based on the -generic-package infrastructure -Section 17.5.1, “generic-package tutorial”. So, it defines +generic-package infrastructure. So, it defines the variables required by this particular infrastructure, where Cargo is invoked:

    • FOO_BUILD_CMDS: Cargo is invoked to perform the build. The options required @@ -4064,8 +4086,7 @@ automatically add a dependency on host-go to such p golang-package. It is similar to the generic-package macro. Only target packages are supported with golang-package.

      Just like the generic infrastructure, the Go infrastructure works by defining a number of variables before calling the golang-package.

      All the package metadata information variables that exist in the -generic package infrastructure -Section 17.5.2, “generic-package reference” also +generic package infrastructure also exist in the Go infrastructure: FOO_VERSION, FOO_SOURCE, FOO_PATCH, FOO_SITE, FOO_SUBDIR, FOO_DEPENDENCIES, FOO_LICENSE, FOO_LICENSE_FILES, FOO_INSTALL_STAGING, etc.

      Note that it is not necessary to add host-go in the @@ -4139,8 +4160,7 @@ builds a kernel module, and no other component:

      01: #####
       remote URI where to find the package source, licensing information.

      On line 13, we invoke the kernel-module helper infrastructure, that generates all the appropriate Makefile rules and variables to build that kernel module.

      Finally, on line 14, we invoke the -generic-package infrastructure -Section 17.5.1, “generic-package tutorial”.

      The dependency on linux is automatically added, so it is not needed to +generic-package infrastructure.

      The dependency on linux is automatically added, so it is not needed to specify it in FOO_DEPENDENCIES.

      What you may have noticed is that, unlike other package infrastructures, we explicitly invoke a second infrastructure. This allows a package to build a kernel module, but also, if needed, use any one of other package @@ -4225,8 +4245,7 @@ text

    Although Buildroot only contains one document written in AsciiDoc, there is, as for packages, an infrastructure for rendering documents using the AsciiDoc syntax.

    Also as for packages, the AsciiDoc infrastructure is available from a -br2-external tree -Section 9.2, “Keeping customizations outside of Buildroot”. This allows documentation for +br2-external tree. This allows documentation for a br2-external tree to match the Buildroot documentation, as it will be rendered to the same formats and use the same layout and theme.

    17.19.1. asciidoc-document tutorial

    Whereas package infrastructures are suffixed with -package, the document infrastructures are suffixed with -document. So, the AsciiDoc infrastructure @@ -4349,8 +4368,7 @@ Linux tools.

    On line 9, we specify the list of dependencies this tool reli dependencies are added to the Linux package dependencies list only when the foo tool is selected.

    The rest of the Makefile, lines 11-25 defines what should be done at the different steps of the Linux tool build process like for a -generic package -Section 17.5.1, “generic-package tutorial”. They will actually be +generic package. They will actually be used only when the foo tool is selected. The only supported commands are _BUILD_CMDS, _INSTALL_STAGING_CMDS and _INSTALL_TARGET_CMDS.

    Note. One must not call $(eval $(generic-package)) or any other package infrastructure! Linux tools are not packages by themselves, @@ -4391,8 +4409,7 @@ the Linux kernel tree; this is specific to the linux extension and can use the variables defined by the foo package, like: $(FOO_DIR) or $(FOO_VERSION)… as well as all the Linux variables, like: $(LINUX_VERSION) or $(LINUX_VERSION_PROBED), $(KERNEL_ARCH)… -See the definition of those kernel variables -Section 17.18.2, “kernel-module reference”.

    17.21. Hooks available in the various build steps

    The generic infrastructure (and as a result also the derived autotools +See the definition of those kernel variables.

    17.21. Hooks available in the various build steps

    The generic infrastructure (and as a result also the derived autotools and cmake infrastructures) allow packages to specify hooks. These define further actions to perform after existing steps. Most hooks aren’t really useful for generic packages, since the .mk @@ -4816,7 +4833,7 @@ Send the fix to the Buildroot mailing list (see can be removed. In the commit message of a patch fixing an autobuild failure, add a reference to the build result directory, as follows: -

    Fixes http://autobuild.buildroot.org/results/51000a9d4656afe9e0ea6f07b9f8ed374c2e4069

    21.3. Reviewing and testing patches

    With the amount of patches sent to the mailing list each day, the +

    Fixes: http://autobuild.buildroot.org/results/51000a9d4656afe9e0ea6f07b9f8ed374c2e4069

    21.3. Reviewing and testing patches

    With the amount of patches sent to the mailing list each day, the maintainer has a very hard job to judge which patches are ready to apply and which ones aren’t. Contributors can greatly help here by reviewing and testing these patches.

    In the review process, do not hesitate to respond to patch submissions @@ -4961,7 +4978,6 @@ options that no longer exist or are no longer needed.

    If you are intereste further changes in the packages you added or modified, please add yourself to the DEVELOPERS file. This should be done in the same patch creating or modifying the package. See the DEVELOPERS file -Chapter 22, DEVELOPERS file and get-developers for more information.

    Buildroot provides a handy tool to check for common coding style mistakes on files you created or modified, called check-package (see Section 17.23.2, “How to check the coding style” for more information).

    21.5.2. Preparing a patch series

    Starting from the changes committed in your local git view, rebase @@ -4988,7 +5004,7 @@ large number of commits in the series;

  • deep impact of the changes in the rest of the project;
  • -RFC [4]; +RFC [4];
  • whenever you feel it will help presenting your work, your choices, the review process, etc. @@ -5012,7 +5028,7 @@ the problem is complex, it is OK to add more paragraphs. All paragraphs should be wrapped at 72 characters. A paragraph that explains the root cause of the problem. Again, more -than on paragraph is OK. +than one paragraph is OK. Finally, one or more paragraphs that explain how the problem is solved. Don't hesitate to explain complex solutions in detail. @@ -5043,13 +5059,10 @@ can be found under the "Message Id" tag on patchwork. The advantage of in-reply-to is that patchwork will automatically mark the previous version of the patch as superseded.

  • 21.6. Reporting issues/bugs or getting help

    Before reporting any issue, please check in -the mailing list archive -Chapter 5, Community resources whether someone has +the mailing list archive whether someone has already reported and/or fixed a similar problem.

    However you choose to report bugs or get help, either by -opening a bug in the bug tracker -Chapter 5, Community resources or by -sending a mail to the mailing list -Chapter 5, Community resources, there are +opening a bug in the bug tracker or by +sending a mail to the mailing list, there are a number of details to provide in order to help people reproduce and find a solution to the issue.

    Try to think as if you were trying to help someone else; in that case, what would you need?

    Here is a short list of details to provide in such case:

    • @@ -5070,7 +5083,7 @@ pastebin service. Note that not all available pastebin services will preserve Unix-style line terminators when downloading raw pastes. Following pastebin services are known to work correctly: - https://gist.github.com/ -- http://code.bulix.org/



    [4] RFC: (Request for comments) change proposal

    Chapter 22. DEVELOPERS file and get-developers

    The main Buildroot directory contains a file named DEVELOPERS that +- http://code.bulix.org/



    [4] RFC: (Request for comments) change proposal

    Chapter 22. DEVELOPERS file and get-developers

    The main Buildroot directory contains a file named DEVELOPERS that lists the developers involved with various areas of Buildroot. Thanks to this file, the get-developers tool allows to:

    • Calculate the list of developers to whom patches should be sent, by diff --git a/buildroot/docs/manual/manual.pdf b/buildroot/docs/manual/manual.pdf index 76215b7e6..7a3c20db3 100644 Binary files a/buildroot/docs/manual/manual.pdf and b/buildroot/docs/manual/manual.pdf differ diff --git a/buildroot/docs/manual/manual.text b/buildroot/docs/manual/manual.text index 545202cd9..0a69a8343 100644 --- a/buildroot/docs/manual/manual.text +++ b/buildroot/docs/manual/manual.text @@ -161,13 +161,13 @@ List of Examples --------------------------------------------------------------------- -Buildroot 2019.02.3 manual generated on 2019-06-07 07:39:18 UTC from -git revision 3e8b918b87 +Buildroot 2019.02.8 manual generated on 2019-12-07 19:24:23 UTC from +git revision aaa1437b11 The Buildroot manual is written by the Buildroot developers. It is licensed under the GNU General Public License, version 2. Refer to the COPYING [http://git.buildroot.org/buildroot/tree/COPYING?id= -3e8b918b871f484b3ef57832aa41982e368d74c2] file in the Buildroot +aaa1437b110f886ee24757595542f715a77d702a] file in the Buildroot sources for the full text of this license. Copyright © 2004-2019 The Buildroot developers @@ -362,9 +362,8 @@ All of these "make" commands will need to build a configuration utility (including the interface), so you may need to install "development" packages for relevant libraries used by the configuration utilities. Refer to Chapter 2, System requirements for -more details, specifically the optional requirements Section 2.2, -“Optional packages” to get the dependencies of your favorite -interface. +more details, specifically the optional requirements to get the +dependencies of your favorite interface. For each menu entry in the configuration tool, you can find associated help that describes the purpose of the entry. Refer to @@ -404,15 +403,21 @@ directory contains several subdirectories: needed by Buildroot on the host and packages compiled for the target). This directory contains one subdirectory for each of these components. - * staging/ which contains a hierarchy similar to a root filesystem - hierarchy. This directory contains the headers and libraries of - the cross-compilation toolchain and all the userspace packages - selected for the target. However, this directory is not intended - to be the root filesystem for the target: it contains a lot of - development files, unstripped binaries and libraries that make it - far too big for an embedded system. These development files are - used to compile libraries and applications for the target that - depend on other libraries. + * host/ contains both the tools built for the host, and the sysroot + of the target toolchain. The former is an installation of tools + compiled for the host that are needed for the proper execution of + Buildroot, including the cross-compilation toolchain. The latter + is a hierarchy similar to a root filesystem hierarchy. It + contains the headers and libraries of all user-space packages + that provide and install libraries used by other packages. + However, this directory is not intended to be the root filesystem + for the target: it contains a lot of development files, + unstripped binaries and libraries that make it far too big for an + embedded system. These development files are used to compile + libraries and applications for the target that depend on other + libraries. + * staging/ is a symlink to the target toolchain sysroot inside host + /, which exists for backwards compatibility. * target/ which contains almost the complete root filesystem for the target: everything needed is present except the device files in /dev/ (Buildroot can’t create them because Buildroot doesn’t @@ -426,9 +431,6 @@ directory contains several subdirectories: /, target/ contains only the files and libraries needed to run the selected target applications: the development files (headers, etc.) are not present, the binaries are stripped. - * host/ contains the installation of tools compiled for the host - that are needed for the proper execution of Buildroot, including - the cross-compilation toolchain. These commands, make menuconfig|nconfig|gconfig|xconfig and make, are the basic ones that allow to easily and quickly generate images @@ -765,9 +767,9 @@ Buildroot or crosstool-NG. If you want to generate a custom toolchain for your project, that can be used as an external toolchain in Buildroot, our recommendation is -definitely to build it with crosstool-NG [http://crosstool-ng.org]. -We recommend to build the toolchain separately from Buildroot, and -then import it in Buildroot using the external toolchain backend. +to build it either with Buildroot itself (see Section 6.1.3, “Build +an external toolchain with Buildroot”) or with crosstool-NG [http:// +crosstool-ng.org]. Advantages of this backend: @@ -781,9 +783,45 @@ Drawbacks of this backend: * If your pre-built external toolchain has a bug, may be hard to get a fix from the toolchain vendor, unless you build your - external toolchain by yourself using Crosstool-NG. + external toolchain by yourself using Buildroot or Crosstool-NG. -6.1.2.1. External toolchain wrapper +6.1.3. Build an external toolchain with Buildroot + +The Buildroot internal toolchain option can be used to create an +external toolchain. Here are a series of steps to build an internal +toolchain and package it up for reuse by Buildroot itself (or other +projects). + +Create a new Buildroot configuration, with the following details: + + * Select the appropriate Target options for your target CPU + architecture + * In the Toolchain menu, keep the default of Buildroot toolchain + for Toolchain type, and configure your toolchain as desired + * In the System configuration menu, select None as the Init system + and none as /bin/sh + * In the Target packages menu, disable BusyBox + * In the Filesystem images menu, disable tar the root filesystem + +Then, we can trigger the build, and also ask Buildroot to generate a +SDK. This will conveniently generate for us a tarball which contains +our toolchain: + +make sdk + +This produces the SDK tarball in $(O)/images, with a name similar to +arm-buildroot-linux-uclibcgnueabi_sdk-buildroot.tar.gz. Save this +tarball, as it is now the toolchain that you can re-use as an +external toolchain in other Buildroot projects. + +In those other Buildroot projects, in the Toolchain menu: + + * Set Toolchain type to External toolchain + * Set Toolchain to Custom toolchain + * Set Toolchain origin to Toolchain to be downloaded and installed + * Set Toolchain URL to file:///path/to/your/sdk/tarball.tar.gz + +6.1.3.1. External toolchain wrapper When using an external toolchain, Buildroot generates a wrapper program, that transparently passes the appropriate options (according @@ -1193,15 +1231,21 @@ command. On the other hand, if you only want to restart the build process of a package from its compilation step, you can run make --rebuild, followed by make or make . It will restart the -compilation and installation of the package, but not from scratch: it -basically re-executes make and make install inside the package, so it -will only rebuild files that changed. +-rebuild. It will restart the compilation and installation of the +package, but not from scratch: it basically re-executes make and make +install inside the package, so it will only rebuild files that +changed. If you want to restart the build process of a package from its -configuration step, you can run make -reconfigure, followed -by make or make . It will restart the configuration, -compilation and installation of the package. +configuration step, you can run make -reconfigure. It will +restart the configuration, compilation and installation of the +package. + +While -rebuild implies -reinstall and +-reconfigure implies -rebuild, these targets as well as + only act on the said package, and do not trigger +re-creating the root filesystem image. If re-creating the root +filesystem in necessary, one should in addition run make or make all. Internally, Buildroot creates so-called stamp files to keep track of which build steps have been completed for each package. They are @@ -1469,10 +1513,10 @@ installed (python-matplotlib on most distributions), and also the argparse module if you’re using a Python version older than 2.7 (python-argparse on most distributions). -Just like for the duration graph, a BR2_GRAPH_OUT environment is -supported to adjust the output file format. See Section 8.8, -“Graphing the dependencies between packages” for details about this -environment variable. +Just like for the duration graph, a BR2_GRAPH_OUT environment +variable is supported to adjust the output file format. See +Section 8.8, “Graphing the dependencies between packages” for details +about this environment variable. Note. The collected filesystem size data is only meaningful after a complete clean rebuild. Be sure to run make clean all before using @@ -1738,10 +1782,8 @@ Additionally, there are some other useful make targets: | graph-depends |Generate a dependency graph of the | | |package, in the context of the | | |current Buildroot configuration. See| -| |this section Section 8.8, “Graphing | -| |the dependencies between packages” | -| |for more details about dependency | -| |graphs. | +| |this section for more details about | +| |dependency graphs. | |-----------------------+------------------------------------| | graph-rdepends |Generate a graph of this package | | |reverse dependencies (i.e the | @@ -1864,6 +1906,15 @@ WEBKITGTK_OVERRIDE_SRCDIR_RSYNC_EXCLUSIONS = \ --exclude WebDriverTests --exclude WebKitBuild --exclude WebKitLibraries \ --exclude WebKit.xcworkspace --exclude Websites --exclude Examples +By default, Buildroot skips syncing of VCS artifacts (e.g., the .git +and .svn directories). Some packages prefer to have these VCS +directories available during build, for example for automatically +determining a precise commit reference for version information. To +undo this built-in filtering at a cost of a slower speed, add these +directories back: + +LINUX_OVERRIDE_SRCDIR_RSYNC_EXCLUSIONS = --include .git + Chapter 9. Project-specific customization Typical actions you may need to perform for a given project are: @@ -2531,8 +2582,7 @@ from the post-build script. Instead, Buildroot provides support for so-called permission tables. To use this feature, set config option BR2_ROOTFS_DEVICE_TABLE to a space-separated list of permission tables, regular text files -following the makedev syntax Chapter 23, Makedev syntax documentation -. +following the makedev syntax. If you are using a static device table (i.e. not using devtmpfs, mdev, or (e)udev) then you can add device nodes using the same @@ -2554,8 +2604,7 @@ Sometimes it is needed to add specific users in the target system. To cover this requirement, Buildroot provides support for so-called users tables. To use this feature, set config option BR2_ROOTFS_USERS_TABLES to a space-separated list of users tables, -regular text files following the makeusers syntax Chapter 24, -Makeusers syntax documentation. +regular text files following the makeusers syntax. As shown in Section 9.1, “Recommended directory structure”, the recommended location for such files is board///. @@ -3664,8 +3713,7 @@ also enabled, but not necessarily built before your package. To do so, the dependency also needs to be expressed in the .mk file of the package. -Further formatting details: see the coding style Section 15.1, -“Config.in file”. +Further formatting details: see the coding style. 17.2.4. Dependencies on target and toolchain options @@ -3849,36 +3897,27 @@ different way, using different infrastructures: infrastructure must be used for all packages that do not use the autotools as their build system. In the future, other specialized infrastructures might be written for other build systems. We - cover them through in a tutorial Section 17.5.1, “generic-package - tutorial” and a reference Section 17.5.2, “generic-package - reference”. + cover them through in a tutorial and a reference. * Makefiles for autotools-based software (autoconf, automake, etc.): We provide a dedicated infrastructure for such packages, since autotools is a very common build system. This infrastructure must be used for new packages that rely on the autotools as their build system. We cover them through a tutorial - Section 17.6.1, “autotools-package tutorial” and reference - Section 17.6.2, “autotools-package reference”. + and reference. * Makefiles for cmake-based software: We provide a dedicated infrastructure for such packages, as CMake is a more and more commonly used build system and has a standardized behaviour. This infrastructure must be used for new packages that rely on CMake. - We cover them through a tutorial Section 17.7.1, “cmake-package - tutorial” and reference Section 17.7.2, “cmake-package reference” - . + We cover them through a tutorial and reference. * Makefiles for Python modules: We have a dedicated infrastructure for Python modules that use either the distutils or the - setuptools mechanism. We cover them through a tutorial - Section 17.8.1, “python-package tutorial” and a reference - Section 17.8.2, “python-package reference”. + setuptools mechanism. We cover them through a tutorial and a + reference. * Makefiles for Lua modules: We have a dedicated infrastructure for Lua modules available through the LuaRocks web site. We cover - them through a tutorial Section 17.9.1, “luarocks-package - tutorial” and a reference Section 17.9.2, “luarocks-package - reference”. + them through a tutorial and a reference. -Further formatting details: see the writing rules Section 15.2, “The -.mk file”. +Further formatting details: see the writing rules. 17.4. The .hash file @@ -4220,9 +4259,9 @@ information is (assuming the package name is libfoo) : are included in Buildroot itself use a different mechanism: all files of the form *.patch present in the package directory inside Buildroot will be applied to the package after extraction (see - patching a package Chapter 18, Patching a package). Finally, - patches listed in the LIBFOO_PATCH variable are applied before - the patches stored in the Buildroot package directory. + patching a package). Finally, patches listed in the LIBFOO_PATCH + variable are applied before the patches stored in the Buildroot + package directory. * LIBFOO_SITE provides the location of the package, which can be a URL or a local filesystem path. HTTP, FTP and SCP are supported URL types for retrieving package tarballs. In these cases don’t @@ -4881,9 +4920,13 @@ be named python- in Buildroot. Other packages that use the Python build system, but are not Python modules, can freely choose their name (existing examples in Buildroot are scons and supervisor). -In their Config.in file, they should depend on BR2_PACKAGE_PYTHON so -that when Buildroot will enable Python 3 usage for modules, we will -be able to enable Python modules progressively on Python 3. +Packages that are only compatible with one version of Python (as in: +Python 2 or Python 3) should depend on that version explicitely in +their Config.in file (BR2_PACKAGE_PYTHON for Python 2, +BR2_PACKAGE_PYTHON3 for Python 3). Packages that are compatible with +both versions should not explicitely depend on them in their +Config.in file, since that condition is already expressed for the +whole "External python modules" menu. The main macro of the Python package infrastructure is python-package. It is similar to the generic-package macro. It is @@ -4895,12 +4938,11 @@ by defining a number of variables before calling the python-package or host-python-package macros. All the package metadata information variables that exist in the -generic package infrastructure Section 17.5.2, “generic-package -reference” also exist in the Python infrastructure: -PYTHON_FOO_VERSION, PYTHON_FOO_SOURCE, PYTHON_FOO_PATCH, -PYTHON_FOO_SITE, PYTHON_FOO_SUBDIR, PYTHON_FOO_DEPENDENCIES, -PYTHON_FOO_LICENSE, PYTHON_FOO_LICENSE_FILES, -PYTHON_FOO_INSTALL_STAGING, etc. +generic package infrastructure also exist in the Python +infrastructure: PYTHON_FOO_VERSION, PYTHON_FOO_SOURCE, +PYTHON_FOO_PATCH, PYTHON_FOO_SITE, PYTHON_FOO_SUBDIR, +PYTHON_FOO_DEPENDENCIES, PYTHON_FOO_LICENSE, +PYTHON_FOO_LICENSE_FILES, PYTHON_FOO_INSTALL_STAGING, etc. Note that: @@ -5765,7 +5807,7 @@ The Config.in file of Cargo-based package foo should contain: 01: config BR2_PACKAGE_FOO 02: bool "foo" -03: depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS +03: depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS 04: select BR2_PACKAGE_HOST_CARGO 05: help 06: This is a comment that explains what foo is. @@ -5818,9 +5860,8 @@ The Makefile starts with the definition of the standard variables for package declaration (lines 7 to 11). As seen in line 35, it is based on the generic-package infrastructure -Section 17.5.1, “generic-package tutorial”. So, it defines the -variables required by this particular infrastructure, where Cargo is -invoked: +. So, it defines the variables required by this particular +infrastructure, where Cargo is invoked: * FOO_BUILD_CMDS: Cargo is invoked to perform the build. The options required to configure the cross-compilation of the @@ -5903,10 +5944,10 @@ Just like the generic infrastructure, the Go infrastructure works by defining a number of variables before calling the golang-package. All the package metadata information variables that exist in the -generic package infrastructure Section 17.5.2, “generic-package -reference” also exist in the Go infrastructure: FOO_VERSION, -FOO_SOURCE, FOO_PATCH, FOO_SITE, FOO_SUBDIR, FOO_DEPENDENCIES, -FOO_LICENSE, FOO_LICENSE_FILES, FOO_INSTALL_STAGING, etc. +generic package infrastructure also exist in the Go infrastructure: +FOO_VERSION, FOO_SOURCE, FOO_PATCH, FOO_SITE, FOO_SUBDIR, +FOO_DEPENDENCIES, FOO_LICENSE, FOO_LICENSE_FILES, +FOO_INSTALL_STAGING, etc. Note that it is not necessary to add host-go in the FOO_DEPENDENCIES variable of a package, since this basic dependency is automatically @@ -5995,8 +6036,7 @@ On line 13, we invoke the kernel-module helper infrastructure, that generates all the appropriate Makefile rules and variables to build that kernel module. -Finally, on line 14, we invoke the generic-package infrastructure -Section 17.5.1, “generic-package tutorial”. +Finally, on line 14, we invoke the generic-package infrastructure. The dependency on linux is automatically added, so it is not needed to specify it in FOO_DEPENDENCIES. @@ -6108,10 +6148,9 @@ there is, as for packages, an infrastructure for rendering documents using the AsciiDoc syntax. Also as for packages, the AsciiDoc infrastructure is available from a -br2-external tree Section 9.2, “Keeping customizations outside of -Buildroot”. This allows documentation for a br2-external tree to -match the Buildroot documentation, as it will be rendered to the same -formats and use the same layout and theme. +br2-external tree. This allows documentation for a br2-external tree +to match the Buildroot documentation, as it will be rendered to the +same formats and use the same layout and theme. 17.19.1. asciidoc-document tutorial @@ -6282,10 +6321,9 @@ only when the foo tool is selected. The rest of the Makefile, lines 11-25 defines what should be done at the different steps of the Linux tool build process like for a -generic package Section 17.5.1, “generic-package tutorial”. They will -actually be used only when the foo tool is selected. The only -supported commands are _BUILD_CMDS, _INSTALL_STAGING_CMDS and -_INSTALL_TARGET_CMDS. +generic package. They will actually be used only when the foo tool is +selected. The only supported commands are _BUILD_CMDS, +_INSTALL_STAGING_CMDS and _INSTALL_TARGET_CMDS. Note. One must not call $(eval $(generic-package)) or any other package infrastructure! Linux tools are not packages by themselves, @@ -6346,8 +6384,7 @@ modify the Linux kernel tree; this is specific to the linux extension and can use the variables defined by the foo package, like: $ (FOO_DIR) or $(FOO_VERSION)… as well as all the Linux variables, like: $(LINUX_VERSION) or $(LINUX_VERSION_PROBED), $(KERNEL_ARCH)… -See the definition of those kernel variables Section 17.18.2, -“kernel-module reference”. +See the definition of those kernel variables. 17.21. Hooks available in the various build steps @@ -6937,7 +6974,7 @@ basically two things that can be done: patch fixing an autobuild failure, add a reference to the build result directory, as follows: -Fixes http://autobuild.buildroot.org/results/51000a9d4656afe9e0ea6f07b9f8ed374c2e4069 +Fixes: http://autobuild.buildroot.org/results/51000a9d4656afe9e0ea6f07b9f8ed374c2e4069 21.3. Reviewing and testing patches @@ -7135,8 +7172,8 @@ options that no longer exist or are no longer needed. If you are interested in getting notified of build failures and of further changes in the packages you added or modified, please add yourself to the DEVELOPERS file. This should be done in the same -patch creating or modifying the package. See the DEVELOPERS file -Chapter 22, DEVELOPERS file and get-developers for more information. +patch creating or modifying the package. See the DEVELOPERS file for +more information. Buildroot provides a handy tool to check for common coding style mistakes on files you created or modified, called check-package (see @@ -7244,7 +7281,7 @@ the problem is complex, it is OK to add more paragraphs. All paragraphs should be wrapped at 72 characters. A paragraph that explains the root cause of the problem. Again, more -than on paragraph is OK. +than one paragraph is OK. Finally, one or more paragraphs that explain how the problem is solved. Don't hesitate to explain complex solutions in detail. @@ -7294,14 +7331,12 @@ as superseded. 21.6. Reporting issues/bugs or getting help Before reporting any issue, please check in the mailing list archive -Chapter 5, Community resources whether someone has already reported -and/or fixed a similar problem. +whether someone has already reported and/or fixed a similar problem. However you choose to report bugs or get help, either by opening a -bug in the bug tracker Chapter 5, Community resources or by sending a -mail to the mailing list Chapter 5, Community resources, there are a -number of details to provide in order to help people reproduce and -find a solution to the issue. +bug in the bug tracker or by sending a mail to the mailing list, +there are a number of details to provide in order to help people +reproduce and find a solution to the issue. Try to think as if you were trying to help someone else; in that case, what would you need? diff --git a/buildroot/docs/manual/quickstart.txt b/buildroot/docs/manual/quickstart.txt index 74158ae24..542b27860 100644 --- a/buildroot/docs/manual/quickstart.txt +++ b/buildroot/docs/manual/quickstart.txt @@ -87,15 +87,21 @@ This directory contains several subdirectories: target). This directory contains one subdirectory for each of these components. -* +staging/+ which contains a hierarchy similar to a root filesystem - hierarchy. This directory contains the headers and libraries of the - cross-compilation toolchain and all the userspace packages selected - for the target. However, this directory is 'not' intended to be - the root filesystem for the target: it contains a lot of development - files, unstripped binaries and libraries that make it far too big - for an embedded system. These development files are used to compile - libraries and applications for the target that depend on other - libraries. +* +host/+ contains both the tools built for the host, and the sysroot + of the target toolchain. The former is an installation of tools + compiled for the host that are needed for the proper execution of + Buildroot, including the cross-compilation toolchain. The latter + is a hierarchy similar to a root filesystem hierarchy. It contains + the headers and libraries of all user-space packages that provide + and install libraries used by other packages. However, this + directory is 'not' intended to be the root filesystem for the target: + it contains a lot of development files, unstripped binaries and + libraries that make it far too big for an embedded system. These + development files are used to compile libraries and applications for + the target that depend on other libraries. + +* +staging/+ is a symlink to the target toolchain sysroot inside + +host/+, which exists for backwards compatibility. * +target/+ which contains 'almost' the complete root filesystem for the target: everything needed is present except the device files in @@ -111,10 +117,6 @@ This directory contains several subdirectories: development files (headers, etc.) are not present, the binaries are stripped. -* +host/+ contains the installation of tools compiled for the host - that are needed for the proper execution of Buildroot, including the - cross-compilation toolchain. - These commands, +make menuconfig|nconfig|gconfig|xconfig+ and +make+, are the basic ones that allow to easily and quickly generate images fitting your needs, with all the features and applications you enabled. diff --git a/buildroot/docs/manual/rebuilding-packages.txt b/buildroot/docs/manual/rebuilding-packages.txt index 6faa67adc..8f4d40d4d 100644 --- a/buildroot/docs/manual/rebuilding-packages.txt +++ b/buildroot/docs/manual/rebuilding-packages.txt @@ -99,16 +99,20 @@ re-configure, re-compile and re-install this package from scratch. You can ask buildroot to do this with the +make -dirclean+ command. On the other hand, if you only want to restart the build process of a -package from its compilation step, you can run +make --rebuild+, followed by +make+ or +make +. It will -restart the compilation and installation of the package, but not from -scratch: it basically re-executes +make+ and +make install+ -inside the package, so it will only rebuild files that changed. +package from its compilation step, you can run +make -rebuild+. It +will restart the compilation and installation of the package, but not from +scratch: it basically re-executes +make+ and +make install+ inside the package, +so it will only rebuild files that changed. -If you want to restart the build process of a package from its -configuration step, you can run +make -reconfigure+, followed -by +make+ or +make +. It will restart the configuration, -compilation and installation of the package. +If you want to restart the build process of a package from its configuration +step, you can run +make -reconfigure+. It will restart the +configuration, compilation and installation of the package. + +While +-rebuild+ implies +-reinstall+ and ++-reconfigure+ implies +-rebuild+, these targets as well +as ++ only act on the said package, and do not trigger re-creating +the root filesystem image. If re-creating the root filesystem in necessary, +one should in addition run +make+ or +make all+. Internally, Buildroot creates so-called _stamp files_ to keep track of which build steps have been completed for each package. They are diff --git a/buildroot/docs/manual/using-buildroot-development.txt b/buildroot/docs/manual/using-buildroot-development.txt index 65a9f1a3f..da6dd822f 100644 --- a/buildroot/docs/manual/using-buildroot-development.txt +++ b/buildroot/docs/manual/using-buildroot-development.txt @@ -109,3 +109,13 @@ WEBKITGTK_OVERRIDE_SRCDIR_RSYNC_EXCLUSIONS = \ --exclude WebDriverTests --exclude WebKitBuild --exclude WebKitLibraries \ --exclude WebKit.xcworkspace --exclude Websites --exclude Examples ------------------ + +By default, Buildroot skips syncing of VCS artifacts (e.g., the *.git* and +*.svn* directories). Some packages prefer to have these VCS directories +available during build, for example for automatically determining a precise +commit reference for version information. To undo this built-in filtering at a +cost of a slower speed, add these directories back: + +------------------ +LINUX_OVERRIDE_SRCDIR_RSYNC_EXCLUSIONS = --include .git +------------------ diff --git a/buildroot/fs/common.mk b/buildroot/fs/common.mk index b361ecce2..34849e698 100644 --- a/buildroot/fs/common.mk +++ b/buildroot/fs/common.mk @@ -82,7 +82,7 @@ ROOTFS_$(2)_DEPENDENCIES += rootfs-common ifeq ($$(BR2_TARGET_ROOTFS_$(2)_GZIP),y) ROOTFS_$(2)_COMPRESS_EXT = .gz -ROOTFS_$(2)_COMPRESS_CMD = gzip -9 -c +ROOTFS_$(2)_COMPRESS_CMD = gzip -9 -c -n endif ifeq ($$(BR2_TARGET_ROOTFS_$(2)_BZIP2),y) ROOTFS_$(2)_COMPRESS_EXT = .bz2 diff --git a/buildroot/fs/tar/tar.mk b/buildroot/fs/tar/tar.mk index 4c6327ace..393d01bfe 100644 --- a/buildroot/fs/tar/tar.mk +++ b/buildroot/fs/tar/tar.mk @@ -8,6 +8,9 @@ TAR_OPTS := $(call qstrip,$(BR2_TARGET_ROOTFS_TAR_OPTIONS)) ROOTFS_TAR_DEPENDENCIES = $(BR2_TAR_HOST_DEPENDENCY) +# do not store atime/ctime in PaxHeaders to ensure reproducbility +TAR_OPTS += --pax-option=exthdr.name=%d/PaxHeaders/%f,atime:=0,ctime:=0 + define ROOTFS_TAR_CMD (cd $(TARGET_DIR); find -print0 | LC_ALL=C sort -z | \ tar $(TAR_OPTS) -cf $@ --null --xattrs-include='*' --no-recursion -T - --numeric-owner) diff --git a/buildroot/linux/Config.in b/buildroot/linux/Config.in index 6f93c2122..c5a3f9eda 100644 --- a/buildroot/linux/Config.in +++ b/buildroot/linux/Config.in @@ -122,7 +122,7 @@ endif config BR2_LINUX_KERNEL_VERSION string - default "4.19.47" if BR2_LINUX_KERNEL_LATEST_VERSION + default "4.19.88" if BR2_LINUX_KERNEL_LATEST_VERSION default "v4.4.176-cip31" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \ if BR2_LINUX_KERNEL_CUSTOM_VERSION diff --git a/buildroot/linux/linux.hash b/buildroot/linux/linux.hash index 1f580c86c..9e5dc6a01 100644 --- a/buildroot/linux/linux.hash +++ b/buildroot/linux/linux.hash @@ -1,6 +1,6 @@ # From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc sha256 d011245629b980d4c15febf080b54804aaf215167b514a3577feddb2495f8a3e linux-4.20.17.tar.xz -sha256 5d08f3890e7ca2b94529675120f170c5b764f795e6dd184a1190c23a40ef5365 linux-4.19.47.tar.xz -sha256 25f58cb56bde388ac9bcee984f5f2d0ca094b0a8af6b92ad1f5b2fd0e6725b85 linux-4.14.123.tar.xz -sha256 d25a490d62a3e96a587333e163862585eac4086fc8d4893b4ec1711e7d387c5f linux-4.9.180.tar.xz -sha256 1a450217d381bb7fd259d026d3b7a57c717e8d1f66754cd6fcc9df3c4a8a6a7a linux-4.4.180.tar.xz +sha256 5da5e16fe08fa506f8f74aa4f17be22b52c0f513e9a3f7e7ae22fc53597ad493 linux-4.4.206.tar.xz +sha256 1df27899a9bc4dd874f3830ab9e7b638f0026dffd67a2e230444e5d2805ccad6 linux-4.9.206.tar.xz +sha256 0d49ec72e273f6fc7462ad56849b2285f13fd5f4185e8f932a0074fc2eca1bb3 linux-4.14.158.tar.xz +sha256 c1923b6bd166e6dd07be860c15f59e8273aaa8692bc2a1fce1d31b826b9b3fbe linux-4.19.88.tar.xz diff --git a/buildroot/linux/linux.mk b/buildroot/linux/linux.mk index dd182d06b..a1378345c 100644 --- a/buildroot/linux/linux.mk +++ b/buildroot/linux/linux.mk @@ -316,6 +316,8 @@ define LINUX_KCONFIG_FIXUP_CMDS $(LINUX_FIXUP_CONFIG_ENDIANNESS) $(if $(BR2_arm)$(BR2_armeb), $(call KCONFIG_ENABLE_OPT,CONFIG_AEABI,$(@D)/.config)) + $(if $(BR2_powerpc)$(BR2_powerpc64)$(BR2_powerpc64le), + $(call KCONFIG_ENABLE_OPT,CONFIG_PPC_DISABLE_WERROR,$(@D)/.config)) $(if $(BR2_TARGET_ROOTFS_CPIO), $(call KCONFIG_ENABLE_OPT,CONFIG_BLK_DEV_INITRD,$(@D)/.config)) # As the kernel gets compiled before root filesystems are diff --git a/buildroot/package/Config.in b/buildroot/package/Config.in index cc232b9fb..ce6745348 100644 --- a/buildroot/package/Config.in +++ b/buildroot/package/Config.in @@ -1042,7 +1042,7 @@ menu "External python modules" source "package/python-slob/Config.in" source "package/python-smbus-cffi/Config.in" source "package/python-socketio/Config.in" - source "package/python-sortedcontainers//Config.in" + source "package/python-sortedcontainers/Config.in" source "package/python-spidev/Config.in" source "package/python-sqlalchemy/Config.in" source "package/python-subprocess32/Config.in" @@ -1161,6 +1161,7 @@ endmenu menu "Compression and decompression" source "package/libarchive/Config.in" + source "package/libmspack/Config.in" source "package/libsquish/Config.in" source "package/libzip/Config.in" source "package/lzo/Config.in" diff --git a/buildroot/package/Config.in.host b/buildroot/package/Config.in.host index b4c501a33..2c68fb7e3 100644 --- a/buildroot/package/Config.in.host +++ b/buildroot/package/Config.in.host @@ -16,6 +16,7 @@ menu "Host utilities" source "package/dtc/Config.in.host" source "package/e2fsprogs/Config.in.host" source "package/e2tools/Config.in.host" + source "package/eudev/Config.in.host" source "package/f2fs-tools/Config.in.host" source "package/faketime/Config.in.host" source "package/fwup/Config.in.host" diff --git a/buildroot/package/am33x-cm3/0002-Makefile-unconditionally-disable-SSP.patch b/buildroot/package/am33x-cm3/0002-Makefile-unconditionally-disable-SSP.patch new file mode 100644 index 000000000..ed333bfe0 --- /dev/null +++ b/buildroot/package/am33x-cm3/0002-Makefile-unconditionally-disable-SSP.patch @@ -0,0 +1,35 @@ +From 6c3b05b74ccd49d8ba246bfef0c2e549b9f2bf7b Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 29 Oct 2019 16:14:18 +0100 +Subject: [PATCH] Makefile: unconditionally disable SSP + +Though -nostdlib is passed in $(CFLAGS), -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: + - http://autobuild.buildroot.net/results/3a3a21f3c35ea025e9b93e09c2454aed0ad31034 + +Signed-off-by: Fabrice Fontaine +--- + Makefile | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index c3ec071..5226006 100644 +--- a/Makefile ++++ b/Makefile +@@ -16,7 +16,8 @@ INCLUDES = $(SRCDIR)/include + CFLAGS =-march=armv7-m -mcpu=cortex-m3 -mthumb -nostdlib -Wall -Wundef \ + -Werror-implicit-function-declaration -Wstrict-prototypes \ + -Wdeclaration-after-statement -fno-delete-null-pointer-checks \ +- -Wempty-body -fno-strict-overflow -g -I$(INCLUDES) -O2 ++ -Wempty-body -fno-strict-overflow -fno-stack-protector \ ++ -g -I$(INCLUDES) -O2 + LDFLAGS =-nostartfiles -fno-exceptions -Tfirmware.ld + + EXECUTABLE=am335x-pm-firmware.elf +-- +2.23.0 + diff --git a/buildroot/package/am33x-cm3/0003-Makefile-unconditionally-disable-PIE.patch b/buildroot/package/am33x-cm3/0003-Makefile-unconditionally-disable-PIE.patch new file mode 100644 index 000000000..6be157932 --- /dev/null +++ b/buildroot/package/am33x-cm3/0003-Makefile-unconditionally-disable-PIE.patch @@ -0,0 +1,33 @@ +From 0e8c3c4851ce64268a8ae1810ef72594251d917d Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 10 Nov 2019 21:57:12 +0100 +Subject: [PATCH] Makefile: unconditionally disable PIE + +Though -nostdlib is passed in $(CFLAGS), -fno-pie must also be passed to +avoid linking errors related to overlapping sections if toolchain +enforces PIE. + +Fixes: + - http://autobuild.buildroot.org/results/418a40b995e91bc66e692dfbc4b0521db3fa5fbb + +Signed-off-by: Fabrice Fontaine +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 5226006..fe3d844 100644 +--- a/Makefile ++++ b/Makefile +@@ -17,7 +17,7 @@ CFLAGS =-march=armv7-m -mcpu=cortex-m3 -mthumb -nostdlib -Wall -Wundef \ + -Werror-implicit-function-declaration -Wstrict-prototypes \ + -Wdeclaration-after-statement -fno-delete-null-pointer-checks \ + -Wempty-body -fno-strict-overflow -fno-stack-protector \ +- -g -I$(INCLUDES) -O2 ++ -fno-pie -g -I$(INCLUDES) -O2 + LDFLAGS =-nostartfiles -fno-exceptions -Tfirmware.ld + + EXECUTABLE=am335x-pm-firmware.elf +-- +2.23.0 + diff --git a/buildroot/package/apache/apache.hash b/buildroot/package/apache/apache.hash index 0c3a1d530..24c00eb94 100644 --- a/buildroot/package/apache/apache.hash +++ b/buildroot/package/apache/apache.hash @@ -1,4 +1,4 @@ -# From http://archive.apache.org/dist/httpd/httpd-2.4.39.tar.bz2.sha256 -sha256 b4ca9d05773aa59b54d66cd8f4744b945289f084d3be17d7981d1783a5decfa2 httpd-2.4.39.tar.bz2 +# From http://archive.apache.org/dist/httpd/httpd-2.4.41.tar.bz2.sha256 +sha256 133d48298fe5315ae9366a0ec66282fa4040efa5d566174481077ade7d18ea40 httpd-2.4.41.tar.bz2 # Locally computed sha256 c49c0819a726b70142621715dae3159c47b0349c2bc9db079070f28dadac0229 LICENSE diff --git a/buildroot/package/apache/apache.mk b/buildroot/package/apache/apache.mk index ebb28b653..1d62538b1 100644 --- a/buildroot/package/apache/apache.mk +++ b/buildroot/package/apache/apache.mk @@ -4,7 +4,7 @@ # ################################################################################ -APACHE_VERSION = 2.4.39 +APACHE_VERSION = 2.4.41 APACHE_SOURCE = httpd-$(APACHE_VERSION).tar.bz2 APACHE_SITE = http://archive.apache.org/dist/httpd APACHE_LICENSE = Apache-2.0 diff --git a/buildroot/package/asterisk/asterisk.hash b/buildroot/package/asterisk/asterisk.hash index d8cc56695..26aa4b89b 100644 --- a/buildroot/package/asterisk/asterisk.hash +++ b/buildroot/package/asterisk/asterisk.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 c022e9d5410ed94ab1aa51ba1e2a8b196f0dfa15bcd0bd545d06efee4c786578 asterisk-16.2.1.tar.gz +sha256 474cbc6f9dddee94616f8af8e097bc4d340dc9698c4165dc45be6e0be80ff725 asterisk-16.6.2.tar.gz # sha1 from: http://downloads.asterisk.org/pub/telephony/sounds/releases # sha256 locally computed @@ -11,5 +11,5 @@ sha256 449fb810d16502c3052fedf02f7e77b36206ac5a145f3dacf4177843a2fcb538 asteri # License files, locally computed sha256 82af40ed7f49c08685360811993d9396320842f021df828801d733e8fdc0312f COPYING sha256 ac5571f00e558e3b7c9b3f13f421b874cc12cf4250c4f70094c71544cf486312 main/sha1.c -sha256 309462c10e84f46bda22032ebe6359f3e9e3e23afcf1fc2aaed5b59daf800d84 codecs/speex/speex_resampler.h +sha256 6215e3ed73c3982a5c6701127d681ec0b9f1121ac78a28805bd93f93c3eb84c0 codecs/speex/speex_resampler.h sha256 1ca2c7a7a1ae7ccd75212a8c1e85dd9ec92bdbc9170aafd97ea60459387755fd utils/db1-ast/include/db.h diff --git a/buildroot/package/asterisk/asterisk.mk b/buildroot/package/asterisk/asterisk.mk index 65f8d3fdf..00070aadb 100644 --- a/buildroot/package/asterisk/asterisk.mk +++ b/buildroot/package/asterisk/asterisk.mk @@ -4,7 +4,7 @@ # ################################################################################ -ASTERISK_VERSION = 16.2.1 +ASTERISK_VERSION = 16.6.2 # Use the github mirror: it's an official mirror maintained by Digium, and # provides tarballs, which the main Asterisk git tree (behind Gerrit) does not. ASTERISK_SITE = $(call github,asterisk,asterisk,$(ASTERISK_VERSION)) diff --git a/buildroot/package/atk/Config.in b/buildroot/package/atk/Config.in index c98061499..d9371b879 100644 --- a/buildroot/package/atk/Config.in +++ b/buildroot/package/atk/Config.in @@ -7,6 +7,8 @@ config BR2_PACKAGE_ATK help The ATK accessibility toolkit, needed to build GTK+-2.x. + https://gitlab.gnome.org/GNOME/atk + comment "atk needs a toolchain w/ wchar, threads" depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/buildroot/package/atk/atk.mk b/buildroot/package/atk/atk.mk index 228b24a7d..6a0cb370d 100644 --- a/buildroot/package/atk/atk.mk +++ b/buildroot/package/atk/atk.mk @@ -11,6 +11,8 @@ ATK_SITE = http://ftp.gnome.org/pub/gnome/sources/atk/$(ATK_VERSION_MAJOR) ATK_LICENSE = LGPL-2.0+ ATK_LICENSE_FILES = COPYING ATK_INSTALL_STAGING = YES -ATK_DEPENDENCIES = libglib2 +ATK_DEPENDENCIES = libglib2 $(TARGET_NLS_DEPENDENCIES) + +ATK_LDFLAGS = $(TARGET_LDFLAGS) $(TARGET_NLS_LIBS) $(eval $(meson-package)) diff --git a/buildroot/package/augeas/augeas.mk b/buildroot/package/augeas/augeas.mk index 8cb4f74e4..7897d8f49 100644 --- a/buildroot/package/augeas/augeas.mk +++ b/buildroot/package/augeas/augeas.mk @@ -11,9 +11,6 @@ AUGEAS_LICENSE = LGPL-2.1+ AUGEAS_LICENSE_FILES = COPYING AUGEAS_DEPENDENCIES = host-pkgconf readline libxml2 -# patching examples/Makefile.am, can be removed when updating from version 1.9.0 -AUGEAS_AUTORECONF = YES - AUGEAS_CONF_OPTS = --disable-gnulib-tests # Remove the test lenses which occupy about 1.4 MB on the target diff --git a/buildroot/package/autofs/autofs.mk b/buildroot/package/autofs/autofs.mk index e7c65ef4b..0af00fa93 100644 --- a/buildroot/package/autofs/autofs.mk +++ b/buildroot/package/autofs/autofs.mk @@ -11,11 +11,18 @@ AUTOFS_LICENSE = GPL-2.0+ AUTOFS_LICENSE_FILES = COPYING COPYRIGHT AUTOFS_DEPENDENCIES = host-flex host-bison host-pkgconf host-nfs-utils -# autofs looks on the build machine for the path of modprobe, so tell -# it explicitly where it will be located on the target. +# autofs looks on the build machine for the path of modprobe, mount, +# umount and fsck programs so tell it explicitly where they will be +# located on the target. AUTOFS_CONF_ENV = \ + ac_cv_path_E2FSCK=/usr/sbin/fsck.ext2 \ + ac_cv_path_E3FSCK=/usr/sbin/fsck.ext3 \ + ac_cv_path_E4FSCK=/usr/sbin/fsck.ext4 \ ac_cv_path_KRB5_CONFIG=no \ ac_cv_path_MODPROBE=/sbin/modprobe \ + ac_cv_path_MOUNT=/bin/mount \ + ac_cv_path_MOUNT_NFS=/usr/sbin/mount.nfs \ + ac_cv_path_UMOUNT=/bin/umount \ ac_cv_linux_procfs=yes # instead of looking in the PATH like any reasonable package, autofs diff --git a/buildroot/package/azmq/Config.in b/buildroot/package/azmq/Config.in index eeafa2ad6..2904890d5 100644 --- a/buildroot/package/azmq/Config.in +++ b/buildroot/package/azmq/Config.in @@ -20,7 +20,7 @@ config BR2_PACKAGE_AZMQ https://github.com/zeromq/azmq -comment "azmq needs a toolchain w/ C++11, wchar and NTPL" +comment "azmq needs a toolchain w/ C++11, wchar and NPTL" depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 \ && BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS_NPTL) diff --git a/buildroot/package/batctl/batctl.mk b/buildroot/package/batctl/batctl.mk index 122263e46..824d2e15f 100644 --- a/buildroot/package/batctl/batctl.mk +++ b/buildroot/package/batctl/batctl.mk @@ -6,7 +6,7 @@ BATCTL_VERSION = 2017.0 BATCTL_SITE = http://downloads.open-mesh.org/batman/releases/batman-adv-$(BATCTL_VERSION) -BATCTL_LICENSE = GPL-2.0 +BATCTL_LICENSE = GPL-2.0, MIT (batman_adv.h, list.h) BATCTL_DEPENDENCIES = libnl host-pkgconf define BATCTL_BUILD_CMDS diff --git a/buildroot/package/batman-adv/batman-adv.mk b/buildroot/package/batman-adv/batman-adv.mk index 51799186d..2cebe1356 100644 --- a/buildroot/package/batman-adv/batman-adv.mk +++ b/buildroot/package/batman-adv/batman-adv.mk @@ -6,7 +6,7 @@ BATMAN_ADV_VERSION = 2017.0.1 BATMAN_ADV_SITE = https://downloads.open-mesh.org/batman/stable/sources/batman-adv -BATMAN_ADV_LICENSE = GPL-2.0 +BATMAN_ADV_LICENSE = GPL-2.0, MIT (batman_adv.h) # Bridge Loop Avoidance, Distributed Arp Table are always enabled BATMAN_ADV_CFLAGS = \ diff --git a/buildroot/package/bcg729/Config.in b/buildroot/package/bcg729/Config.in index 8e9bcfe66..cb936ae15 100644 --- a/buildroot/package/bcg729/Config.in +++ b/buildroot/package/bcg729/Config.in @@ -4,4 +4,4 @@ config BR2_PACKAGE_BCG729 Bcg729 is an opensource implementation of both encoder and decoder of the ITU G729 Annex A/B speech codec. - http://www.linphone.org/technical-corner/bcg729/overview + https://www.linphone.org/technical-corner/bcg729 diff --git a/buildroot/package/berkeleydb/berkeleydb.mk b/buildroot/package/berkeleydb/berkeleydb.mk index e5c11bddc..e077eb464 100644 --- a/buildroot/package/berkeleydb/berkeleydb.mk +++ b/buildroot/package/berkeleydb/berkeleydb.mk @@ -44,6 +44,22 @@ define BERKELEYDB_CONFIGURE_CMDS ) endef +define HOST_BERKELEYDB_CONFIGURE_CMDS + (cd $(@D)/build_unix; rm -rf config.cache; \ + $(HOST_CONFIGURE_OPTS) \ + ../dist/configure $(QUIET) \ + --prefix=$(HOST_DIR) \ + --with-gnu-ld \ + --disable-cxx \ + --disable-java \ + --disable-tcl \ + --disable-compat185 \ + --with-pic \ + --enable-o_direct \ + --disable-mutexsupport \ + ) +endef + ifneq ($(BR2_PACKAGE_BERKELEYDB_TOOLS),y) define BERKELEYDB_REMOVE_TOOLS @@ -61,3 +77,4 @@ endef BERKELEYDB_POST_INSTALL_TARGET_HOOKS += BERKELEYDB_REMOVE_DOCS $(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/buildroot/package/bind/0001-cross.patch b/buildroot/package/bind/0001-cross.patch index 5b4b1cd83..d3e7cc68a 100644 --- a/buildroot/package/bind/0001-cross.patch +++ b/buildroot/package/bind/0001-cross.patch @@ -1,18 +1,23 @@ Use host compiler to build 'gen' since it's run when building. Signed-off-by: Gustavo Zacarias +[Fabrice: updated for 9.11.10] +Signed-off-by: Fabrice Fontaine diff -Nura bind-9.5.1-P1/lib/dns/Makefile.in bind-9.5.1-P1.gencross/lib/dns/Makefile.in --- bind-9.5.1-P1/lib/dns/Makefile.in 2007-09-11 22:09:08.000000000 -0300 +++ bind-9.5.1-P1.gencross/lib/dns/Makefile.in 2009-03-04 16:35:23.000000000 -0200 -@@ -160,8 +160,8 @@ - ./gen -s ${srcdir} > code.h +@@ -160,10 +160,8 @@ + ./gen -s ${srcdir} > code.h || { rm -f $@ ; exit 1; } gen: gen.c - ${BUILD_CC} ${BUILD_CFLAGS} -I${top_srcdir}/lib/isc/include \ -- ${BUILD_CPPFLAGS} ${BUILD_LDFLAGS} -o $@ ${srcdir}/gen.c ${BUILD_LIBS} +- ${LFS_CFLAGS} ${LFS_LDFLAGS} \ +- ${BUILD_CPPFLAGS} ${BUILD_LDFLAGS} -o $@ ${srcdir}/gen.c \ +- ${BUILD_LIBS} ${LFS_LIBS} + ${HOSTCC} ${HOST_CFLAGS} -I${top_srcdir}/lib/isc/include \ + ${HOST_LDFLAGS} -o $@ ${srcdir}/gen.c - rbtdb64.@O@: rbtdb.c + timestamp: include libdns.@A@ + touch timestamp diff --git a/buildroot/package/bind/0002-Replace-atomic-operations-in-bin-named-client.c-with.patch b/buildroot/package/bind/0002-Replace-atomic-operations-in-bin-named-client.c-with.patch deleted file mode 100644 index 2701de766..000000000 --- a/buildroot/package/bind/0002-Replace-atomic-operations-in-bin-named-client.c-with.patch +++ /dev/null @@ -1,133 +0,0 @@ -From ef49780d30d3ddc5735cfc32561b678a634fa72f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ond=C5=99ej=20Sur=C3=BD?= -Date: Wed, 17 Apr 2019 15:22:27 +0200 -Subject: [PATCH] Replace atomic operations in bin/named/client.c with - isc_refcount reference counting - -Signed-off-by: Peter Korsgaard ---- - bin/named/client.c | 18 +++++++----------- - bin/named/include/named/interfacemgr.h | 5 +++-- - bin/named/interfacemgr.c | 7 +++++-- - 3 files changed, 15 insertions(+), 15 deletions(-) - -diff --git a/bin/named/client.c b/bin/named/client.c -index 845326abc0..29fecadca8 100644 ---- a/bin/named/client.c -+++ b/bin/named/client.c -@@ -402,12 +402,10 @@ tcpconn_detach(ns_client_t *client) { - static void - mark_tcp_active(ns_client_t *client, bool active) { - if (active && !client->tcpactive) { -- isc_atomic_xadd(&client->interface->ntcpactive, 1); -+ isc_refcount_increment0(&client->interface->ntcpactive, NULL); - client->tcpactive = active; - } else if (!active && client->tcpactive) { -- uint32_t old = -- isc_atomic_xadd(&client->interface->ntcpactive, -1); -- INSIST(old > 0); -+ isc_refcount_decrement(&client->interface->ntcpactive, NULL); - client->tcpactive = active; - } - } -@@ -554,7 +552,7 @@ exit_check(ns_client_t *client) { - if (client->mortal && TCP_CLIENT(client) && - client->newstate != NS_CLIENTSTATE_FREED && - !ns_g_clienttest && -- isc_atomic_xadd(&client->interface->ntcpaccepting, 0) == 0) -+ isc_refcount_current(&client->interface->ntcpaccepting) == 0) - { - /* Nobody else is accepting */ - client->mortal = false; -@@ -3328,7 +3326,6 @@ client_newconn(isc_task_t *task, isc_event_t *event) { - isc_result_t result; - ns_client_t *client = event->ev_arg; - isc_socket_newconnev_t *nevent = (isc_socket_newconnev_t *)event; -- uint32_t old; - - REQUIRE(event->ev_type == ISC_SOCKEVENT_NEWCONN); - REQUIRE(NS_CLIENT_VALID(client)); -@@ -3348,8 +3345,7 @@ client_newconn(isc_task_t *task, isc_event_t *event) { - INSIST(client->naccepts == 1); - client->naccepts--; - -- old = isc_atomic_xadd(&client->interface->ntcpaccepting, -1); -- INSIST(old > 0); -+ isc_refcount_decrement(&client->interface->ntcpaccepting, NULL); - - /* - * We must take ownership of the new socket before the exit -@@ -3480,8 +3476,8 @@ client_accept(ns_client_t *client) { - * quota is tcp-clients plus the number of listening - * interfaces plus 1.) - */ -- exit = (isc_atomic_xadd(&client->interface->ntcpactive, 0) > -- (client->tcpactive ? 1 : 0)); -+ exit = (isc_refcount_current(&client->interface->ntcpactive) > -+ (client->tcpactive ? 1U : 0U)); - if (exit) { - client->newstate = NS_CLIENTSTATE_INACTIVE; - (void)exit_check(client); -@@ -3539,7 +3535,7 @@ client_accept(ns_client_t *client) { - * listening for connections itself to prevent the interface - * going dead. - */ -- isc_atomic_xadd(&client->interface->ntcpaccepting, 1); -+ isc_refcount_increment0(&client->interface->ntcpaccepting, NULL); - } - - static void -diff --git a/bin/named/include/named/interfacemgr.h b/bin/named/include/named/interfacemgr.h -index 3535ef22a8..6e10f210fd 100644 ---- a/bin/named/include/named/interfacemgr.h -+++ b/bin/named/include/named/interfacemgr.h -@@ -45,6 +45,7 @@ - #include - #include - #include -+#include - - #include - -@@ -75,11 +76,11 @@ struct ns_interface { - /*%< UDP dispatchers. */ - isc_socket_t * tcpsocket; /*%< TCP socket. */ - isc_dscp_t dscp; /*%< "listen-on" DSCP value */ -- int32_t ntcpaccepting; /*%< Number of clients -+ isc_refcount_t ntcpaccepting; /*%< Number of clients - ready to accept new - TCP connections on this - interface */ -- int32_t ntcpactive; /*%< Number of clients -+ isc_refcount_t ntcpactive; /*%< Number of clients - servicing TCP queries - (whether accepting or - connected) */ -diff --git a/bin/named/interfacemgr.c b/bin/named/interfacemgr.c -index d9f6df5802..135533be6b 100644 ---- a/bin/named/interfacemgr.c -+++ b/bin/named/interfacemgr.c -@@ -386,8 +386,8 @@ ns_interface_create(ns_interfacemgr_t *mgr, isc_sockaddr_t *addr, - * connections will be handled in parallel even though there is - * only one client initially. - */ -- ifp->ntcpaccepting = 0; -- ifp->ntcpactive = 0; -+ isc_refcount_init(&ifp->ntcpaccepting, 0); -+ isc_refcount_init(&ifp->ntcpactive, 0); - - ifp->nudpdispatch = 0; - -@@ -618,6 +618,9 @@ ns_interface_destroy(ns_interface_t *ifp) { - - ns_interfacemgr_detach(&ifp->mgr); - -+ isc_refcount_destroy(&ifp->ntcpactive); -+ isc_refcount_destroy(&ifp->ntcpaccepting); -+ - ifp->magic = 0; - isc_mem_put(mctx, ifp, sizeof(*ifp)); - } --- -2.11.0 - diff --git a/buildroot/package/bind/Config.in b/buildroot/package/bind/Config.in index 049a90cba..951dd2356 100644 --- a/buildroot/package/bind/Config.in +++ b/buildroot/package/bind/Config.in @@ -24,7 +24,7 @@ config BR2_PACKAGE_BIND intended to be linked with applications requiring name service. - http://www.isc.org/sw/bind/ + https://www.isc.org/bind/ if BR2_PACKAGE_BIND diff --git a/buildroot/package/bind/bind.hash b/buildroot/package/bind/bind.hash index cdd4bdd31..53b5ce3a4 100644 --- a/buildroot/package/bind/bind.hash +++ b/buildroot/package/bind/bind.hash @@ -1,4 +1,4 @@ -# Verified from https://ftp.isc.org/isc/bind9/9.11.6-P1/bind-9.11.6-P1.tar.gz.asc -# with key 156890685EA0DF6A1371EF2017CC5DB1F0088407 -sha256 58ace2abb4d048b67abcdef0649ecd6cbd3b0652734a41a1d34f942d5500f8ef bind-9.11.6-P1.tar.gz +# Verified from https://ftp.isc.org/isc/bind9/9.11.13/bind-9.11.13.tar.gz.asc +# with key AE3FAC796711EC59FC007AA474BB6B9A4CBB3D38 +sha256 fd3f3cc9fcfcdaa752db35eb24598afa1fdcc2509d3227fc90a8631b7b400f7d bind-9.11.13.tar.gz sha256 cd02c93b8dcda794f55dfd1231828d69633072a98eee4874f9cf732d22d9dcde COPYRIGHT diff --git a/buildroot/package/bind/bind.mk b/buildroot/package/bind/bind.mk index 42c240a74..efe4abde9 100644 --- a/buildroot/package/bind/bind.mk +++ b/buildroot/package/bind/bind.mk @@ -4,7 +4,7 @@ # ################################################################################ -BIND_VERSION = 9.11.6-P1 +BIND_VERSION = 9.11.13 BIND_SITE = https://ftp.isc.org/isc/bind9/$(BIND_VERSION) # bind does not support parallel builds. BIND_MAKE = $(MAKE1) diff --git a/buildroot/package/bluez5_utils-headers/bluez5_utils-headers.mk b/buildroot/package/bluez5_utils-headers/bluez5_utils-headers.mk index 020e8b4d4..c61f93a23 100644 --- a/buildroot/package/bluez5_utils-headers/bluez5_utils-headers.mk +++ b/buildroot/package/bluez5_utils-headers/bluez5_utils-headers.mk @@ -5,7 +5,7 @@ ################################################################################ # Keep the version and patches in sync with bluez5_utils -BLUEZ5_UTILS_HEADERS_VERSION = 5.50 +BLUEZ5_UTILS_HEADERS_VERSION = 5.52 BLUEZ5_UTILS_HEADERS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz BLUEZ5_UTILS_HEADERS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth BLUEZ5_UTILS_HEADERS_DL_SUBDIR = bluez5_utils diff --git a/buildroot/package/bluez5_utils/bluez5_utils.hash b/buildroot/package/bluez5_utils/bluez5_utils.hash index b96570855..00112bc0b 100644 --- a/buildroot/package/bluez5_utils/bluez5_utils.hash +++ b/buildroot/package/bluez5_utils/bluez5_utils.hash @@ -1,4 +1,4 @@ # From https://www.kernel.org/pub/linux/bluetooth/sha256sums.asc: -sha256 5ffcaae18bbb6155f1591be8c24898dc12f062075a40b538b745bfd477481911 bluez-5.50.tar.xz +sha256 f7144ce2039202cfac18ccb52426efea11c98e4f6e1bb8041bcb994b8378560a bluez-5.52.tar.xz sha256 b499eddebda05a8859e32b820a64577d91f1de2b52efa2a1575a2cb4000bc259 COPYING sha256 ec60b993835e2c6b79e6d9226345f4e614e686eb57dc13b6420c15a33a8996e5 COPYING.LIB diff --git a/buildroot/package/bluez5_utils/bluez5_utils.mk b/buildroot/package/bluez5_utils/bluez5_utils.mk index 15c9b670a..7c5202b71 100644 --- a/buildroot/package/bluez5_utils/bluez5_utils.mk +++ b/buildroot/package/bluez5_utils/bluez5_utils.mk @@ -5,7 +5,7 @@ ################################################################################ # Keep the version and patches in sync with bluez5_utils-headers -BLUEZ5_UTILS_VERSION = 5.50 +BLUEZ5_UTILS_VERSION = 5.52 BLUEZ5_UTILS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz BLUEZ5_UTILS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth BLUEZ5_UTILS_INSTALL_STAGING = YES diff --git a/buildroot/package/brotli/brotli.mk b/buildroot/package/brotli/brotli.mk index 2c1ad4875..134f48089 100644 --- a/buildroot/package/brotli/brotli.mk +++ b/buildroot/package/brotli/brotli.mk @@ -14,4 +14,12 @@ BROTLI_CONF_OPTS = \ -DBROTLI_DISABLE_TESTS=ON \ -DBROTLI_BUNDLED_MODE=OFF +BROTLI_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_68485),y) +BROTLI_CFLAGS += -O0 +endif + +BROTLI_CONF_OPTS += -DCMAKE_C_FLAGS="$(BROTLI_CFLAGS)" + $(eval $(cmake-package)) diff --git a/buildroot/package/busybox/busybox.config b/buildroot/package/busybox/busybox.config index 1d9560d65..ab04854c8 100644 --- a/buildroot/package/busybox/busybox.config +++ b/buildroot/package/busybox/busybox.config @@ -967,9 +967,9 @@ CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script" # CONFIG_FEATURE_UDHCP_PORT is not set CONFIG_UDHCP_DEBUG=0 CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80 -# CONFIG_FEATURE_UDHCP_RFC3397 is not set +CONFIG_FEATURE_UDHCP_RFC3397=y CONFIG_FEATURE_UDHCP_8021Q=y -CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n" +CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n -O search" # # Print Utilities diff --git a/buildroot/package/busybox/udhcpc.script b/buildroot/package/busybox/udhcpc.script index ad110d3a7..131c138b1 100755 --- a/buildroot/package/busybox/udhcpc.script +++ b/buildroot/package/busybox/udhcpc.script @@ -56,7 +56,7 @@ case "$1" in cat $TMPFILE > $RESOLV_CONF rm -f $TMPFILE - # prefer rfc3359 domain search list (option 119) if available + # prefer rfc3397 domain search list (option 119) if available if [ -n "$search" ]; then search_list=$search elif [ -n "$domain" ]; then diff --git a/buildroot/package/bwm-ng/bwm-ng.mk b/buildroot/package/bwm-ng/bwm-ng.mk index 587ffbea5..32e097e23 100644 --- a/buildroot/package/bwm-ng/bwm-ng.mk +++ b/buildroot/package/bwm-ng/bwm-ng.mk @@ -7,7 +7,7 @@ BWM_NG_VERSION = f54b3fad2c80bfe63f920c9b5e7c1d80389c57ef BWM_NG_SITE = $(call github,vgropp,bwm-ng,$(BWM_NG_VERSION)) BWM_NG_CONF_OPTS = --with-procnetdev --with-diskstats -BWM_NG_LICENSE = GPL-2.0 +BWM_NG_LICENSE = GPL-2.0+ BWM_NG_LICENSE_FILES = COPYING BWM_NG_AUTORECONF = YES diff --git a/buildroot/package/bzip2/0002-improve-build-system.patch b/buildroot/package/bzip2/0002-improve-build-system.patch index 90099aa28..2d6e2cf90 100644 --- a/buildroot/package/bzip2/0002-improve-build-system.patch +++ b/buildroot/package/bzip2/0002-improve-build-system.patch @@ -70,15 +70,15 @@ Index: b/Makefile-libbz2_so huffman.o \ @@ -37,8 +36,11 @@ all: $(OBJS) - $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6 $(OBJS) - $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.6 + $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.8 $(OBJS) + $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.8 - rm -f libbz2.so.1.0 -- ln -s libbz2.so.1.0.6 libbz2.so.1.0 +- ln -s libbz2.so.1.0.8 libbz2.so.1.0 + +install: -+ install -m 0755 -D libbz2.so.1.0.6 $(PREFIX)/lib/libbz2.so.1.0.6 -+ ln -sf libbz2.so.1.0.6 $(PREFIX)/lib/libbz2.so -+ ln -sf libbz2.so.1.0.6 $(PREFIX)/lib/libbz2.so.1.0 ++ install -m 0755 -D libbz2.so.1.0.8 $(PREFIX)/lib/libbz2.so.1.0.8 ++ ln -sf libbz2.so.1.0.8 $(PREFIX)/lib/libbz2.so ++ ln -sf libbz2.so.1.0.8 $(PREFIX)/lib/libbz2.so.1.0 clean: - rm -f $(OBJS) bzip2.o libbz2.so.1.0.6 libbz2.so.1.0 bzip2-shared + rm -f $(OBJS) bzip2.o libbz2.so.1.0.8 libbz2.so.1.0 bzip2-shared diff --git a/buildroot/package/bzip2/Config.in b/buildroot/package/bzip2/Config.in index ca447bbb2..7db1902b6 100644 --- a/buildroot/package/bzip2/Config.in +++ b/buildroot/package/bzip2/Config.in @@ -5,3 +5,5 @@ config BR2_PACKAGE_BZIP2 It typically compresses files to within 10% to 15% of the best available techniques, while being around twice as fast at compression and six times faster at decompression. + + https://sourceware.org/bzip2/ diff --git a/buildroot/package/bzip2/bzip2.hash b/buildroot/package/bzip2/bzip2.hash index 60b0a191e..cf66c402f 100644 --- a/buildroot/package/bzip2/bzip2.hash +++ b/buildroot/package/bzip2/bzip2.hash @@ -1,2 +1,4 @@ -# From http://www.bzip.org/downloads.html -md5 00b516f4704d4a7cb50a1d97e6e8e15b bzip2-1.0.6.tar.gz +# From https://sourceware.org/pub/bzip2/sha512.sum +sha512 083f5e675d73f3233c7930ebe20425a533feedeaaa9d8cc86831312a6581cefbe6ed0d08d2fa89be81082f2a5abdabca8b3c080bf97218a1bd59dc118a30b9f3 bzip2-1.0.8.tar.gz +# Locally calculated +sha256 c6dbbf828498be844a89eaa3b84adbab3199e342eb5cb2ed2f0d4ba7ec0f38a3 LICENSE diff --git a/buildroot/package/bzip2/bzip2.mk b/buildroot/package/bzip2/bzip2.mk index a3af32299..b4d8eea25 100644 --- a/buildroot/package/bzip2/bzip2.mk +++ b/buildroot/package/bzip2/bzip2.mk @@ -4,8 +4,8 @@ # ################################################################################ -BZIP2_VERSION = 1.0.6 -BZIP2_SITE = http://sources.buildroot.net +BZIP2_VERSION = 1.0.8 +BZIP2_SITE = https://sourceware.org/pub/bzip2 BZIP2_INSTALL_STAGING = YES BZIP2_LICENSE = bzip2 license BZIP2_LICENSE_FILES = LICENSE diff --git a/buildroot/package/ca-certificates/Config.in b/buildroot/package/ca-certificates/Config.in index 6bb71820d..cd9825a81 100644 --- a/buildroot/package/ca-certificates/Config.in +++ b/buildroot/package/ca-certificates/Config.in @@ -9,4 +9,4 @@ config BR2_PACKAGE_CA_CERTIFICATES Debian infrastructure and those shipped with Mozilla's browsers. - http://anonscm.debian.org/gitweb/?p=collab-maint/ca-certificates.git + https://salsa.debian.org/debian/ca-certificates diff --git a/buildroot/package/chrony/chrony.mk b/buildroot/package/chrony/chrony.mk index b5821b238..00709e6f8 100644 --- a/buildroot/package/chrony/chrony.mk +++ b/buildroot/package/chrony/chrony.mk @@ -13,6 +13,7 @@ CHRONY_CONF_OPTS = \ --host-system=Linux \ --host-machine=$(BR2_ARCH) \ --prefix=/usr \ + --without-readline \ --without-tomcrypt ifeq ($(BR2_PACKAGE_LIBCAP),y) @@ -34,10 +35,10 @@ else CHRONY_CONF_OPTS += --without-seccomp endif -ifeq ($(BR2_PACKAGE_READLINE),y) -CHRONY_DEPENDENCIES += readline +ifeq ($(BR2_PACKAGE_LIBEDIT),y) +CHRONY_DEPENDENCIES += libedit else -CHRONY_CONF_OPTS += --disable-readline +CHRONY_CONF_OPTS += --without-editline --disable-readline endif # If pps-tools is available, build it before so the package can use it diff --git a/buildroot/package/clamav/Config.in b/buildroot/package/clamav/Config.in index 2017011b6..57338e910 100644 --- a/buildroot/package/clamav/Config.in +++ b/buildroot/package/clamav/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_CLAMAV depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() depends on BR2_USE_WCHAR + select BR2_PACKAGE_LIBMSPACK select BR2_PACKAGE_LIBTOOL select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_ZLIB diff --git a/buildroot/package/clamav/clamav.hash b/buildroot/package/clamav/clamav.hash index 4b61cd965..84758c5cc 100644 --- a/buildroot/package/clamav/clamav.hash +++ b/buildroot/package/clamav/clamav.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 0a12ebdf6ff7a74c0bde2bdc2b55cae33449e6dd953ec90824a9e01291277634 clamav-0.101.2.tar.gz +sha256 04bc4af7aa61cd4ce419a1cfbf77605ee40128455c7627fe2725dd157392d58c clamav-0.101.5.tar.gz sha256 0c4fd2fa9733fc9122503797648710851e4ee6d9e4969dd33fcbd8c63cd2f584 COPYING sha256 d72a145c90918184a05ef65a04c9e6f7466faa59bc1b82c8f6a8ddc7ddcb9bed COPYING.bzip2 sha256 dfb818a0d41411c6fb1c193c68b73018ceadd1994bda41ad541cbff292894bc6 COPYING.file diff --git a/buildroot/package/clamav/clamav.mk b/buildroot/package/clamav/clamav.mk index 5bb0aa09d..5285c7afd 100644 --- a/buildroot/package/clamav/clamav.mk +++ b/buildroot/package/clamav/clamav.mk @@ -4,7 +4,7 @@ # ################################################################################ -CLAMAV_VERSION = 0.101.2 +CLAMAV_VERSION = 0.101.5 CLAMAV_SITE = https://www.clamav.net/downloads/production CLAMAV_LICENSE = GPL-2.0 CLAMAV_LICENSE_FILES = COPYING COPYING.bzip2 COPYING.file COPYING.getopt \ @@ -12,6 +12,7 @@ CLAMAV_LICENSE_FILES = COPYING COPYING.bzip2 COPYING.file COPYING.getopt \ COPYING.unrar COPYING.zlib CLAMAV_DEPENDENCIES = \ host-pkgconf \ + libmspack \ libtool \ openssl \ zlib \ @@ -32,6 +33,7 @@ CLAMAV_CONF_OPTS = \ --with-ltdl-include=$(STAGING_DIR)/usr/include \ --with-ltdl-lib=$(STAGING_DIR)/usr/lib \ --with-openssl=$(STAGING_DIR)/usr \ + --with-system-libmspack=$(STAGING_DIR)/usr \ --with-zlib=$(STAGING_DIR)/usr \ --disable-zlib-vcheck \ --disable-rpath \ diff --git a/buildroot/package/cloop/cloop.mk b/buildroot/package/cloop/cloop.mk index ad50d0a94..585f422ce 100644 --- a/buildroot/package/cloop/cloop.mk +++ b/buildroot/package/cloop/cloop.mk @@ -13,7 +13,8 @@ CLOOP_LICENSE_FILES = README advancecomp-1.15/COPYING HOST_CLOOP_DEPENDENCIES = host-zlib define HOST_CLOOP_BUILD_CMDS - $(HOST_CONFIGURE_OPTS) $(MAKE1) -C $(@D) APPSONLY=yes + $(HOST_CONFIGURE_OPTS) $(MAKE1) -C $(@D) APPSONLY=yes \ + CFLAGS="$(HOST_CFLAGS) -D_GNU_SOURCE" endef define HOST_CLOOP_INSTALL_CMDS diff --git a/buildroot/package/collectd/collectd.hash b/buildroot/package/collectd/collectd.hash index cf7e0b83f..08682b6bc 100644 --- a/buildroot/package/collectd/collectd.hash +++ b/buildroot/package/collectd/collectd.hash @@ -1,5 +1,5 @@ # From https://collectd.org/files/SHA256SUM -sha256 7edd3643c0842215553b2421d5456f4e9a8a58b07e216b40a7e8e91026d8e501 collectd-5.7.1.tar.bz2 +sha256 9d20a0221569a8d6b80bbc52b86e5e84965f5bafdbf5dfc3790e0fed0763e592 collectd-5.7.2.tar.bz2 # Hash for license files sha256 ed0409b2b1c30566dab5fcdaf46ee70e140c99788e22f0267645a9357b476ae4 COPYING diff --git a/buildroot/package/collectd/collectd.mk b/buildroot/package/collectd/collectd.mk index 589324e61..6cb040ab1 100644 --- a/buildroot/package/collectd/collectd.mk +++ b/buildroot/package/collectd/collectd.mk @@ -4,7 +4,7 @@ # ################################################################################ -COLLECTD_VERSION = 5.7.1 +COLLECTD_VERSION = 5.7.2 COLLECTD_SITE = http://collectd.org/files COLLECTD_SOURCE = collectd-$(COLLECTD_VERSION).tar.bz2 COLLECTD_CONF_ENV = ac_cv_lib_yajl_yajl_alloc=yes @@ -15,7 +15,7 @@ COLLECTD_LICENSE_FILES = COPYING libltdl/COPYING.LIB # These require unmet dependencies, are fringe, pointless or deprecated COLLECTD_PLUGINS_DISABLE = \ amqp apple_sensors aquaero ascent barometer dbi dpdkstat email \ - gmond grpc hddtemp intel_rdt ipmi java libvirt lpar lvm \ + gmond grpc hddtemp intel_rdt ipmi java lpar lua lvm \ madwifi mbmon mic multimeter netapp notify_desktop numa \ nut onewire oracle perl pf pinba powerdns python redis routeros \ rrdcached sigrok tape target_v5upgrade teamspeak2 ted \ @@ -184,7 +184,7 @@ COLLECTD_CONF_OPTS += --with-libpq=$(STAGING_DIR)/usr/bin/pg_config COLLECTD_CONF_ENV += LIBS="-lpthread -lm" endif ifeq ($(BR2_PACKAGE_YAJL),y) -COLLECTD_CONF_OPTS += --with-yajl=$(STAGING_DIR)/usr +COLLECTD_CONF_OPTS += --with-libyajl=$(STAGING_DIR)/usr endif # network can use libgcrypt diff --git a/buildroot/package/connman-gtk/connman-gtk.hash b/buildroot/package/connman-gtk/connman-gtk.hash index d71e77d2c..fbc4acb14 100644 --- a/buildroot/package/connman-gtk/connman-gtk.hash +++ b/buildroot/package/connman-gtk/connman-gtk.hash @@ -1,2 +1,3 @@ # Locally calculated sha256 49bdc4769a7c508b0130e4705eef21aec9df1ea4f5c29fee48a0cae8db828fca connman-gtk-1.1.1.tar.bz2 +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/buildroot/package/connman-gtk/connman-gtk.mk b/buildroot/package/connman-gtk/connman-gtk.mk index 9888fcd4a..0ea49198e 100644 --- a/buildroot/package/connman-gtk/connman-gtk.mk +++ b/buildroot/package/connman-gtk/connman-gtk.mk @@ -8,8 +8,10 @@ CONNMAN_GTK_VERSION = 1.1.1 CONNMAN_GTK_SITE = https://github.com/jgke/connman-gtk/releases/download/v$(CONNMAN_GTK_VERSION) CONNMAN_GTK_SOURCE = connman-gtk-$(CONNMAN_GTK_VERSION).tar.bz2 CONNMAN_GTK_INSTALL_STAGING = YES -CONNMAN_GTK_DEPENDENCIES = host-intltool connman libglib2 libgtk3 +CONNMAN_GTK_DEPENDENCIES = host-intltool connman libglib2 libgtk3 \ + $(TARGET_NLS_DEPENDENCIES) CONNMAN_GTK_LICENSE = GPL-2.0+ CONNMAN_GTK_LICENSE_FILES = COPYING +CONNMAN_GTK_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) $(eval $(autotools-package)) diff --git a/buildroot/package/connman/connman.mk b/buildroot/package/connman/connman.mk index b67d1c4b8..043175944 100644 --- a/buildroot/package/connman/connman.mk +++ b/buildroot/package/connman/connman.mk @@ -39,6 +39,7 @@ define CONNMAN_INSTALL_INIT_SYSTEMD endef ifeq ($(BR2_PACKAGE_CONNMAN_CLIENT),y) +CONNMAN_LICENSE += , GPL-2.0+ (client) CONNMAN_CONF_OPTS += --enable-client CONNMAN_DEPENDENCIES += readline diff --git a/buildroot/package/copas/Config.in b/buildroot/package/copas/Config.in index 2de196710..347d86ddf 100644 --- a/buildroot/package/copas/Config.in +++ b/buildroot/package/copas/Config.in @@ -8,4 +8,4 @@ config BR2_PACKAGE_COPAS servers. But it also features timers and client support for http(s), ftp and smtp requests. - http://www.keplerproject.org/copas/ + http://keplerproject.github.io/copas/ diff --git a/buildroot/package/cryptopp/cryptopp.mk b/buildroot/package/cryptopp/cryptopp.mk index 8e3277a94..4565785cf 100644 --- a/buildroot/package/cryptopp/cryptopp.mk +++ b/buildroot/package/cryptopp/cryptopp.mk @@ -15,16 +15,23 @@ define HOST_CRYPTOPP_EXTRACT_CMDS $(UNZIP) $(HOST_CRYPTOPP_DL_DIR)/$(CRYPTOPP_SOURCE) -d $(@D) endef +HOST_CRYPTOPP_CXXFLAGS = $(HOST_CFLAGS) -fPIC + +# _mm256_broadcastsi128_si256 has been added only in gcc 4.9 +ifneq ($(BR2_HOST_GCC_AT_LEAST_4_9),y) +HOST_CRYPTOPP_CXXFLAGS += -DCRYPTOPP_DISABLE_AVX2 +endif + HOST_CRYPTOPP_MAKE_OPTS = \ $(HOST_CONFIGURE_OPTS) \ - CXXFLAGS="$(HOST_CXXFLAGS) -fPIC" + CXXFLAGS="$(HOST_CRYPTOPP_CXXFLAGS)" define HOST_CRYPTOPP_BUILD_CMDS $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_CRYPTOPP_MAKE_OPTS) shared endef define HOST_CRYPTOPP_INSTALL_CMDS - $(HOST_MAKE_ENV) $(MAKE) -C $(@D) PREFIX=$(HOST_DIR) install + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) PREFIX=$(HOST_DIR) install-lib endef $(eval $(host-generic-package)) diff --git a/buildroot/package/cups-filters/0001-Replace-relative-linking-with-absolute-linking.patch b/buildroot/package/cups-filters/0001-Replace-relative-linking-with-absolute-linking.patch deleted file mode 100644 index e4b35cda3..000000000 --- a/buildroot/package/cups-filters/0001-Replace-relative-linking-with-absolute-linking.patch +++ /dev/null @@ -1,46 +0,0 @@ -From c26b4c3550557442890f2f790d4f8b61a3734c1f Mon Sep 17 00:00:00 2001 -From: Olivier Schonken -Date: Thu, 8 Mar 2018 12:32:23 +0200 -Subject: [PATCH] install: don't use ln -r - -Oldish enterprise-class distributions have too old versions of -coreutils, with ln not supporting -r. - -So we fake it. - -ln -r would create minimalist relative paths, but they are not -trivial to generate. Instead, we always create paths relative to the -root, i.e.: - - ln -s -r /usr/bin/foo /usr/sbin/foo - -would create: /usr/sbin/foo -> ../bin/foo -while we do : /usr/sbin/foo -> ../../usr/bin/foo - -Signed-off-by: Olivier Schonken ---- - Makefile.am | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index d959227..b49914a 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -998,11 +998,11 @@ install-exec-hook: - $(INSTALL) -d -m 755 $(DESTDIR)$(pkgfilterdir) - $(INSTALL) -d -m 755 $(DESTDIR)$(pkgbackenddir) - if ENABLE_FOOMATIC -- $(LN_S) -r -f $(DESTDIR)$(pkgfilterdir)/foomatic-rip $(DESTDIR)$(bindir) -+ $(LN_S) -f ../..$(pkgfilterdir)/foomatic-rip $(DESTDIR)$(bindir) - endif - if ENABLE_DRIVERLESS -- $(LN_S) -r -f $(DESTDIR)$(pkgppdgendir)/driverless $(DESTDIR)$(bindir) -- $(LN_S) -r -f $(DESTDIR)$(pkgppdgendir)/driverless $(DESTDIR)$(pkgbackenddir) -+ $(LN_S) -f ../..$(pkgppdgendir)/driverless $(DESTDIR)$(bindir) -+ $(LN_S) -f ../..$(pkgppdgendir)/driverless $(DESTDIR)$(pkgbackenddir) - endif - if ENABLE_BRAILLE - $(LN_S) -f imagetobrf $(DESTDIR)$(pkgfilterdir)/imagetoubrl --- -2.14.1 - diff --git a/buildroot/package/cups-filters/0001-install-support-old-ln-versions-without-the-r-option.patch b/buildroot/package/cups-filters/0001-install-support-old-ln-versions-without-the-r-option.patch new file mode 100644 index 000000000..1f155fcef --- /dev/null +++ b/buildroot/package/cups-filters/0001-install-support-old-ln-versions-without-the-r-option.patch @@ -0,0 +1,214 @@ +From edd44df686b4ec983a327cabc5035106addb274f Mon Sep 17 00:00:00 2001 +From: Carlos Santos +Date: Mon, 16 Sep 2019 22:22:37 -0300 +Subject: [PATCH] install: support old ln versions without the -r option + +Oldish enterprise-class Linux distributions have outdated versions of +coreutils whose ln command do not support the -r option. Also non-Linux +systems like FreeBSD don't support that option. Use a shell script that +mimics the missing functionality. + +The script creates minimalist relative paths, like ln -r does, but in +order to simplify the logic, it requires that the arguments be absolute +paths and do not end with '/'. This is enough for our purposes. + +Add configuration logic to detect if ln supports the -r option, based on +the logic used by Autoconf to check if ln supports the -s option. + +Signed-off-by: Carlos Santos +--- + Makefile.am | 6 ++-- + configure.ac | 2 ++ + ln-srf | 49 ++++++++++++++++++++++++++ + m4/ac_ln_srf.m4 | 91 +++++++++++++++++++++++++++++++++++++++++++++++++ + 4 files changed, 145 insertions(+), 3 deletions(-) + create mode 100755 ln-srf + create mode 100644 m4/ac_ln_srf.m4 + +diff --git a/Makefile.am b/Makefile.am +index 76b81de5..beb2882e 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -988,11 +988,11 @@ install-exec-hook: + $(INSTALL) -d -m 755 $(DESTDIR)$(pkgfilterdir) + $(INSTALL) -d -m 755 $(DESTDIR)$(pkgbackenddir) + if ENABLE_FOOMATIC +- $(LN_S) -r -f $(DESTDIR)$(pkgfilterdir)/foomatic-rip $(DESTDIR)$(bindir) ++ $(LN_SRF) $(DESTDIR)$(pkgfilterdir)/foomatic-rip $(DESTDIR)$(bindir) + endif + if ENABLE_DRIVERLESS +- $(LN_S) -r -f $(DESTDIR)$(pkgppdgendir)/driverless $(DESTDIR)$(bindir) +- $(LN_S) -r -f $(DESTDIR)$(pkgppdgendir)/driverless $(DESTDIR)$(pkgbackenddir) ++ $(LN_SRF) $(DESTDIR)$(pkgppdgendir)/driverless $(DESTDIR)$(bindir) ++ $(LN_SRF) $(DESTDIR)$(pkgppdgendir)/driverless $(DESTDIR)$(pkgbackenddir) + endif + if ENABLE_BRAILLE + $(LN_S) -f imagetobrf $(DESTDIR)$(pkgfilterdir)/imagetoubrl +diff --git a/configure.ac b/configure.ac +index d5a539b6..fbcf829a 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -58,6 +58,8 @@ AM_ICONV + AC_PROG_CPP + AC_PROG_INSTALL + AC_PROG_LN_S ++AS_LN_SRF_PREPARE ++AC_PROG_LN_SRF + AC_PROG_MAKE_SET + AC_PROG_LIBTOOL + PKG_PROG_PKG_CONFIG([0.20]) +diff --git a/ln-srf b/ln-srf +new file mode 100755 +index 00000000..f395a760 +--- /dev/null ++++ b/ln-srf +@@ -0,0 +1,49 @@ ++#!/bin/sh ++# ++# Author: Carlos Santos ++# This file is in public domain. ++# ++ ++error() { ++ echo "$@" 1>&2 ++ exit 1 ++} ++ ++src="$1" ++dst="$2" ++ ++check_path() { ++ case "$2" in ++ */../*|*/./*|*/.|*/..) error "$1 path '$2' must be absolute";; ++ */) error "$1 path '$2' must not end with '/'";; ++ /?*) ;; ++ *) error "$1 path '$2' must start with '/'";; ++ esac ++} ++ ++check_path "source" "$src" ++check_path "destination" "$dst" ++ ++# strip leading '/' ++src=${src#/*} ++tmp=${dst#/*} ++ ++s_prefix=${src%%/*} ++d_prefix=${tmp%%/*} ++ ++# strip leading common ++while [ "$s_prefix" = "$d_prefix" ]; do ++ src="${src#$s_prefix/}" ++ tmp="${tmp#$d_prefix/}" ++ s_prefix=${src%%/*} ++ d_prefix=${tmp%%/*} ++done ++ ++s_prefix="../" ++while [ -n "$d_prefix" ] && [ "$tmp" != "$d_prefix" ]; do ++ s_prefix="../$s_prefix" ++ tmp="${tmp#$d_prefix/}" ++ d_prefix=${tmp%%/*} ++done ++ ++ln -s -f "$s_prefix$src" "$dst" +diff --git a/m4/ac_ln_srf.m4 b/m4/ac_ln_srf.m4 +new file mode 100644 +index 00000000..204b3439 +--- /dev/null ++++ b/m4/ac_ln_srf.m4 +@@ -0,0 +1,91 @@ ++# Adapted from Autoconf Version 2.63 (GPLv2). ++# ++# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 ++# Free Software Foundation, Inc. ++# ++# This program is free software: you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 2, or (at your option) ++# any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software ++# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA ++# 02110-1301, USA. ++# ++# As a special exception, the Free Software Foundation gives unlimited ++# permission to copy, distribute and modify the configure scripts that ++# are the output of Autoconf. You need not follow the terms of the GNU ++# General Public License when using or distributing such scripts, even ++# though portions of the text of Autoconf appear in them. The GNU ++# General Public License (GPL) does govern all other use of the material ++# that constitutes the Autoconf program. ++# ++# Certain portions of the Autoconf source text are designed to be copied ++# (in certain cases, depending on the input) into the output of ++# Autoconf. We call these the "data" portions. The rest of the Autoconf ++# source text consists of comments plus executable code that decides which ++# of the data portions to output in any given case. We call these ++# comments and executable code the "non-data" portions. Autoconf never ++# copies any of the non-data portions into its output. ++# ++# This special exception to the GPL applies to versions of Autoconf ++# released by the Free Software Foundation. When you make and ++# distribute a modified version of Autoconf, you may extend this special ++# exception to the GPL to apply to your modified version as well, *unless* ++# your modified version has the potential to copy into its output some ++# of the text that was the non-data portion of the version that you started ++# with. (In other words, unless your change moves or copies text from ++# the non-data portions to the data portions.) If your modification has ++# such potential, you must delete any notice of this special exception ++# to the GPL from your modified version. ++ ++# AS_LN_SRF_PREPARE ++# ------------------------------------ ++m4_defun([AS_LN_SRF_PREPARE], ++[rm -f conf$$ conf$$.exe conf$$.file ++if test -d conf$$.dir; then ++ rm -f conf$$.dir/conf$$.file ++else ++ rm -f conf$$.dir ++ mkdir conf$$.dir 2>/dev/null ++fi ++if (echo >conf$$.file) 2>/dev/null; then ++ if ln -s -r conf$$.file conf$$ 2>/dev/null; then ++ as_ln_srf='ln -s -r -f' ++ elif ln -s conf$$.file conf$$ 2>/dev/null; then ++ as_ln_srf='./ln-srf' ++ # ... but there are two gotchas: ++ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. ++ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. ++ # In both cases, we have to default to `cp -pRf'. ++ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || ++ as_ln_srf='cp -pRf' ++ elif ln conf$$.file conf$$ 2>/dev/null; then ++ as_ln_srf=ln ++ else ++ as_ln_srf='cp -pRf' ++ fi ++else ++ as_ln_srf='cp -pRf' ++fi ++rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file ++rmdir conf$$.dir 2>/dev/null ++])# AS_LN_SRF_PREPARE ++ ++# AC_PROG_LN_SRF ++# -------------------------------- ++AC_DEFUN([AC_PROG_LN_SRF], ++[AC_MSG_CHECKING([whether ln -s -r -f works]) ++AC_SUBST([LN_SRF], [$as_ln_srf])dnl ++if test "$LN_SRF" = "ln -s -r -f"; then ++ AC_MSG_RESULT([yes]) ++else ++ AC_MSG_RESULT([no, using $LN_SRF]) ++fi ++])# AC_PROG_LN_SRF +-- +2.18.1 + diff --git a/buildroot/package/cups-filters/0002-filter-texttotext.c-link-with-libiconv-if-needed.patch b/buildroot/package/cups-filters/0002-filter-texttotext.c-link-with-libiconv-if-needed.patch new file mode 100644 index 000000000..cace0773a --- /dev/null +++ b/buildroot/package/cups-filters/0002-filter-texttotext.c-link-with-libiconv-if-needed.patch @@ -0,0 +1,122 @@ +From 734ef160b428c545d8c6ae16c4bfe3c036173aa4 Mon Sep 17 00:00:00 2001 +From: Carlos Santos +Date: Sun, 21 Jul 2019 23:54:29 -0300 +Subject: [PATCH] filter/texttotext.c: link with libiconv if needed + +texttotext.c uses iconv so it should link with libiconv on platforms +where it is a separate library (e.g. uClibc-ng without built-in NLS) +otherwise texttotext fails to link: + + CCLD texttotext +[...]/ld: texttotext-texttotext.o: in function `main': +texttotext.c:(.text.startup+0xde0): undefined reference to `libiconv_open' +[...]/ld: texttotext.c:(.text.startup+0xf9d): undefined reference to `libiconv' +[...]/ld: texttotext.c:(.text.startup+0xfd6): undefined reference to `libiconv' +[...]/ld: texttotext.c:(.text.startup+0x16c3): undefined reference to `libiconv_close' + +Modify autogen.sh to call autopoint, which adds the libiconv discovery. +It also creates a "po" skeleton but we can discard it, since it is not +really necessary. + +Fixes: https://bugs.busybox.net/show_bug.cgi?id=12031 + +Signed-off-by: Carlos Santos +--- + Makefile.am | 4 +++- + autogen.sh | 17 +++++++++++++++++ + configure.ac | 6 +++++- + 3 files changed, 25 insertions(+), 2 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 72e023ed..76b81de5 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -778,7 +778,7 @@ texttotext_SOURCES = \ + filter/texttotext.c + EXTRA_texttotext_SOURCES = filter/strcasestr.c + texttotext_CFLAGS = $(CUPS_CFLAGS) +-texttotext_LDADD = $(STRCASESTR) $(CUPS_LIBS) ++texttotext_LDADD = $(STRCASESTR) $(CUPS_LIBS) $(LIBICONV) + texttotext_DEPENDENCIES = $(STRCASESTR) + + pdftops_SOURCES = \ +@@ -1049,3 +1049,5 @@ if ENABLE_BRAILLE + $(RM) $(DESTDIR)$(pkgfilterdir)/vectortoubrl + $(RM) $(DESTDIR)$(pkgfilterdir)/textbrftoindexv4 + endif ++ ++SUBDIRS = +diff --git a/autogen.sh b/autogen.sh +index 5462a323..cd7397a9 100755 +--- a/autogen.sh ++++ b/autogen.sh +@@ -13,11 +13,22 @@ aclocal --version > /dev/null 2> /dev/null || { + echo "error: aclocal not found" + exit 1 + } ++ + automake --version > /dev/null 2> /dev/null || { + echo "error: automake not found" + exit 1 + } + ++autopoint --version > /dev/null 2> /dev/null || { ++ echo "error: autopoint not found" ++ exit 1 ++} ++ ++gettext --version > /dev/null 2> /dev/null || { ++ echo "error: gettext not found" ++ exit 1 ++} ++ + for i in $TESTLIBTOOLIZE; do + if which $i > /dev/null 2>&1; then + LIBTOOLIZE=$i +@@ -39,6 +50,12 @@ fi + + rm -rf autom4te*.cache + ++autopoint --force || { ++ echo "error: autopoint failed" ++ exit 1 ++} ++# autopoint is for libiconv discovery; we don't want the po directory ++rm -rf po + $LIBTOOLIZE --force --copy || { + echo "error: libtoolize failed" + exit 1 +diff --git a/configure.ac b/configure.ac +index 607dc17a..d5a539b6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -18,7 +18,7 @@ AC_CONFIG_MACRO_DIR([m4]) + m4_include([m4/ac_define_dir.m4]) + m4_include([m4/ax_compare_version.m4]) + m4_include([m4/basic-directories.m4]) +-AM_INIT_AUTOMAKE([1.11 gnu dist-xz dist-bzip2]) ++AM_INIT_AUTOMAKE([1.11 gnu dist-xz dist-bzip2 subdir-objects]) + AM_SILENT_RULES([yes]) + AC_LANG([C++]) + AC_CONFIG_HEADERS([config.h]) +@@ -54,6 +54,7 @@ AC_PROG_CC + AC_PROG_CXX + AX_CXX_COMPILE_STDCXX([11],[noext],[mandatory]) + AM_PROG_CC_C_O ++AM_ICONV + AC_PROG_CPP + AC_PROG_INSTALL + AC_PROG_LN_S +@@ -61,6 +62,9 @@ AC_PROG_MAKE_SET + AC_PROG_LIBTOOL + PKG_PROG_PKG_CONFIG([0.20]) + ++AM_GNU_GETTEXT_VERSION([0.18.3]) ++AM_GNU_GETTEXT([external]) ++ + # ======================================== + # Specify the fontdir patch if not default + # ======================================== +-- +2.18.1 + diff --git a/buildroot/package/cups-filters/cups-filters.mk b/buildroot/package/cups-filters/cups-filters.mk index 81d919565..e5d731896 100644 --- a/buildroot/package/cups-filters/cups-filters.mk +++ b/buildroot/package/cups-filters/cups-filters.mk @@ -8,7 +8,7 @@ CUPS_FILTERS_VERSION = 1.21.3 CUPS_FILTERS_SITE = http://openprinting.org/download/cups-filters CUPS_FILTERS_LICENSE = GPL-2.0, GPL-2.0+, GPL-3.0, GPL-3.0+, LGPL-2, LGPL-2.1+, MIT, BSD-4-Clause CUPS_FILTERS_LICENSE_FILES = COPYING -# 0001-Replace-relative-linking-with-absolute-linking.patch +# 0001-install-support-old-ln-versions-without-the-r-option.patch CUPS_FILTERS_AUTORECONF = YES CUPS_FILTERS_DEPENDENCIES = cups libglib2 lcms2 qpdf fontconfig freetype jpeg @@ -16,11 +16,30 @@ CUPS_FILTERS_DEPENDENCIES = cups libglib2 lcms2 qpdf fontconfig freetype jpeg CUPS_FILTERS_CONF_OPTS = --disable-imagefilters \ --disable-mutool \ --disable-foomatic \ + --disable-braille \ --with-cups-config=$(STAGING_DIR)/usr/bin/cups-config \ --with-sysroot=$(STAGING_DIR) \ --with-pdftops=pdftops \ --with-jpeg +# 0001-install-support-old-ln-versions-without-the-r-option.patch adds +# a ln-srf script for older distributions, but GNU patch < 2.7 does +# not handle the git patch permission extensions - So ensure it is +# executable +define CUPS_FILTERS_MAKE_LN_SRF_EXECUTABLE + chmod +x $(@D)/ln-srf +endef + +CUPS_FILTERS_POST_PATCH_HOOKS += CUPS_FILTERS_MAKE_LN_SRF_EXECUTABLE + +# After 0002-filter-texttotext.c-link-with-libiconv-if-needed.patch autoreconf +# needs config.rpath and ABOUT-NLS, which are not in v1.25.4 yet. Fake them. +define CUPS_FILTERS_ADD_MISSING_FILE + touch $(@D)/config.rpath $(@D)/ABOUT-NLS +endef + +CUPS_FILTERS_PRE_CONFIGURE_HOOKS = CUPS_FILTERS_ADD_MISSING_FILE + ifeq ($(BR2_PACKAGE_LIBPNG),y) CUPS_FILTERS_CONF_OPTS += --with-png CUPS_FILTERS_DEPENDENCIES += libpng diff --git a/buildroot/package/cups/cups.hash b/buildroot/package/cups/cups.hash index 3d238d61e..d75387c40 100644 --- a/buildroot/package/cups/cups.hash +++ b/buildroot/package/cups/cups.hash @@ -1,3 +1,3 @@ # Locally calculated: -sha256 77c8b2b3bb7fe8b5fbfffc307f2c817b2d7ec67b657f261a1dd1c61ab81205bb cups-2.2.10-source.tar.gz +sha256 0f61ab449e4748a24c6ab355b481ff7691247a140d327b2b7526fce34b7f9aa8 cups-2.2.12-source.tar.gz sha256 6e0e0ffbde118aae709f7ef65590de9071e8b2cd322f84fd645c6b64f3cc452c LICENSE.txt diff --git a/buildroot/package/cups/cups.mk b/buildroot/package/cups/cups.mk index b91fe7ac4..21e4c221f 100644 --- a/buildroot/package/cups/cups.mk +++ b/buildroot/package/cups/cups.mk @@ -4,7 +4,7 @@ # ################################################################################ -CUPS_VERSION = 2.2.10 +CUPS_VERSION = 2.2.12 CUPS_SOURCE = cups-$(CUPS_VERSION)-source.tar.gz CUPS_SITE = https://github.com/apple/cups/releases/download/v$(CUPS_VERSION) CUPS_LICENSE = GPL-2.0, LGPL-2.0 diff --git a/buildroot/package/dahdi-linux/dahdi-linux.hash b/buildroot/package/dahdi-linux/dahdi-linux.hash index c362f8ea3..1847a4da4 100644 --- a/buildroot/package/dahdi-linux/dahdi-linux.hash +++ b/buildroot/package/dahdi-linux/dahdi-linux.hash @@ -1,7 +1,7 @@ # sha1 from: http://downloads.asterisk.org/pub/telephony/dahdi-linux/releases # sha256 locally computed -sha1 8cbd55b8611c6ed80bcdf84d537566b4934f3def dahdi-linux-2.11.1.tar.gz -sha256 f59f382365118205e77d2874f1c0e1546e936247bcc45f07a43bc21778bee9df dahdi-linux-2.11.1.tar.gz +sha1 9827f0afc625e293021b81daf94ec054145c975b dahdi-linux-3.0.0.tar.gz +sha256 02a8a680d20a3e243f37259edc3554ab9a488595a28562c45c33da3792d12caa dahdi-linux-3.0.0.tar.gz # Firmware files have no upstream hash, so sha56 locally computed sha256 3ff26cf80555fd7470b43a87c51d03c1db2a75abcd4561d79f69b6c48298e4a1 dahdi-fwload-vpmadt032-1.25.0.tar.gz diff --git a/buildroot/package/dahdi-linux/dahdi-linux.mk b/buildroot/package/dahdi-linux/dahdi-linux.mk index 6ac1e8894..4d2c7e717 100644 --- a/buildroot/package/dahdi-linux/dahdi-linux.mk +++ b/buildroot/package/dahdi-linux/dahdi-linux.mk @@ -4,7 +4,7 @@ # ################################################################################ -DAHDI_LINUX_VERSION = 2.11.1 +DAHDI_LINUX_VERSION = 3.0.0 DAHDI_LINUX_SITE = http://downloads.asterisk.org/pub/telephony/dahdi-linux/releases # We need to download all thoe firmware blobs ourselves, otherwise diff --git a/buildroot/package/dahdi-tools/dahdi-tools.hash b/buildroot/package/dahdi-tools/dahdi-tools.hash index 7b668c604..5538ed6b8 100644 --- a/buildroot/package/dahdi-tools/dahdi-tools.hash +++ b/buildroot/package/dahdi-tools/dahdi-tools.hash @@ -1,7 +1,7 @@ # sha1 from http://downloads.asterisk.org/pub/telephony/dahdi-tools/releases # sha256 locally computed -sha1 5da944e6d59a977f814230253f3ddf2847e7f31b dahdi-tools-2.11.1.tar.gz -sha256 53ffeb333f3e44b0c88e5b17475cdbf87d3f652eb81a6422de76250c061e2909 dahdi-tools-2.11.1.tar.gz +sha1 3e988256aae4b6a6ed8efb3ecc07753779f54823 dahdi-tools-3.0.0.tar.gz +sha256 5bebb20d5ae13fa13f0e2075603013954b962be477db02271eef44b3e41557c5 dahdi-tools-3.0.0.tar.gz # License files, locally computed sha256 fa5fc1d1eec39532ea517518eeefd7b6e3c14341a55e5880a0e2a49eee47a5b7 LICENSE diff --git a/buildroot/package/dahdi-tools/dahdi-tools.mk b/buildroot/package/dahdi-tools/dahdi-tools.mk index e97d944c5..392dc0914 100644 --- a/buildroot/package/dahdi-tools/dahdi-tools.mk +++ b/buildroot/package/dahdi-tools/dahdi-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -DAHDI_TOOLS_VERSION = 2.11.1 +DAHDI_TOOLS_VERSION = 3.0.0 DAHDI_TOOLS_SITE = http://downloads.asterisk.org/pub/telephony/dahdi-tools/releases DAHDI_TOOLS_LICENSE = GPLv2, LGPLv2.1 diff --git a/buildroot/package/daq/daq.mk b/buildroot/package/daq/daq.mk index a23a9dc5e..f0f996ba2 100644 --- a/buildroot/package/daq/daq.mk +++ b/buildroot/package/daq/daq.mk @@ -18,6 +18,13 @@ DAQ_MAKE = $(MAKE1) # disable ipq module as libipq is deprecated DAQ_CONF_OPTS += --disable-ipq-module +# Set --with-dnet-{includes,libraries} even if ipq and nfq modules are disabled +# otherwise daq will call 'dnet-config --cflags' and 'dnet-config --libs' which +# will result in a build failure if libdnet is installed on host +DAQ_CONF_OPTS += \ + --with-dnet-includes=$(STAGING_DIR)/usr/include \ + --with-dnet-libraries=$(STAGING_DIR)/usr/lib + ifeq ($(BR2_PACKAGE_LIBDNET)$(BR2_PACKAGE_LIBNETFILTER_QUEUE),yy) DAQ_DEPENDENCIES += libdnet libnetfilter_queue DAQ_CONF_OPTS += --enable-nfq-module diff --git a/buildroot/package/davfs2/davfs2.hash b/buildroot/package/davfs2/davfs2.hash index 102659a38..7e2078bec 100644 --- a/buildroot/package/davfs2/davfs2.hash +++ b/buildroot/package/davfs2/davfs2.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 c9c4e0f0912a782386216b2147eb9c36c47f193b8fcf3d637719e0b9fe7c96e0 davfs2-1.5.4.tar.gz +sha256 587c6a25ad78109995a7ccb8e60aa1c491b149f2c99d47033f3d5e648430ad2f davfs2-1.5.5.tar.gz # License file, locally calculated sha256 0ae0485a5bd37a63e63603596417e4eb0e653334fa6c7f932ca3a0e85d4af227 COPYING diff --git a/buildroot/package/davfs2/davfs2.mk b/buildroot/package/davfs2/davfs2.mk index f2b2fdbe4..90f73f4df 100644 --- a/buildroot/package/davfs2/davfs2.mk +++ b/buildroot/package/davfs2/davfs2.mk @@ -4,7 +4,7 @@ # ################################################################################ -DAVFS2_VERSION = 1.5.4 +DAVFS2_VERSION = 1.5.5 DAVFS2_SITE = http://download.savannah.nongnu.org/releases/davfs2 DAVFS2_LICENSE = GPL-3.0+ DAVFS2_LICENSE_FILES = COPYING diff --git a/buildroot/package/dbus/dbus.hash b/buildroot/package/dbus/dbus.hash index 92c0c9421..9529d2e04 100644 --- a/buildroot/package/dbus/dbus.hash +++ b/buildroot/package/dbus/dbus.hash @@ -1,6 +1,6 @@ # Locally calculated after checking pgp signature -# https://dbus.freedesktop.org/releases/dbus/dbus-1.12.10.tar.gz.asc +# https://dbus.freedesktop.org/releases/dbus/dbus-1.12.16.tar.gz.asc # using key 36EC5A6448A4F5EF79BEFE98E05AE1478F814C4F -sha256 4b693d24976258c3f2fa9cc33ad9288c5fbfa7a16481dbd9a8a429f7aa8cdcf7 dbus-1.12.10.tar.gz +sha256 54a22d2fa42f2eb2a871f32811c6005b531b9613b1b93a0d269b05e7549fec80 dbus-1.12.16.tar.gz # Locally calculated sha256 0e46f54efb12d04ab5c33713bacd0e140c9a35b57ae29e03c853203266e8f3a1 COPYING diff --git a/buildroot/package/dbus/dbus.mk b/buildroot/package/dbus/dbus.mk index 0a56de5a4..a4043864d 100644 --- a/buildroot/package/dbus/dbus.mk +++ b/buildroot/package/dbus/dbus.mk @@ -4,7 +4,7 @@ # ################################################################################ -DBUS_VERSION = 1.12.10 +DBUS_VERSION = 1.12.16 DBUS_SITE = https://dbus.freedesktop.org/releases/dbus DBUS_LICENSE = AFL-2.1 or GPL-2.0+ (library, tools), GPL-2.0+ (tools) DBUS_LICENSE_FILES = COPYING diff --git a/buildroot/package/dehydrated/dehydrated.hash b/buildroot/package/dehydrated/dehydrated.hash index 1d194e5a7..388dd2474 100644 --- a/buildroot/package/dehydrated/dehydrated.hash +++ b/buildroot/package/dehydrated/dehydrated.hash @@ -1,6 +1,6 @@ # Locally computed after verifying -# https://github.com/lukas2511/dehydrated/releases/download/v0.6.2/dehydrated-0.6.2.tar.gz.asc +# https://github.com/lukas2511/dehydrated/releases/download/v0.6.5/dehydrated-0.6.5.tar.gz.asc # with key 3C2F2605E078A1E18F4793909C4DBE6CF438F333 from https://keybase.io/lukas2511 -sha256 163384479199f06f59382ceb6291a299567a2f4f0b963b9b61f2db65a407e80e dehydrated-0.6.2.tar.gz +sha256 10aabd0027450bc70a18e49acaca7a9697e0cfb92368d3e508b7a4d6d69bfa35 dehydrated-0.6.5.tar.gz # License, locally computed sha256 b4583b7dd07e3e2a08906de38e7e329d41f921ed9dcb6310b3886e013a6b8723 LICENSE diff --git a/buildroot/package/dehydrated/dehydrated.mk b/buildroot/package/dehydrated/dehydrated.mk index b7de27a40..17c67b847 100644 --- a/buildroot/package/dehydrated/dehydrated.mk +++ b/buildroot/package/dehydrated/dehydrated.mk @@ -4,7 +4,7 @@ # ################################################################################ -DEHYDRATED_VERSION = 0.6.2 +DEHYDRATED_VERSION = 0.6.5 DEHYDRATED_SITE = https://github.com/lukas2511/dehydrated/releases/download/v$(DEHYDRATED_VERSION) DEHYDRATED_LICENSE = MIT diff --git a/buildroot/package/dialog/dialog.mk b/buildroot/package/dialog/dialog.mk index 73fabe07c..b1933b883 100644 --- a/buildroot/package/dialog/dialog.mk +++ b/buildroot/package/dialog/dialog.mk @@ -9,7 +9,7 @@ DIALOG_SOURCE = dialog-$(DIALOG_VERSION).tgz DIALOG_SITE = ftp://ftp.invisible-island.net/dialog DIALOG_CONF_OPTS = --with-ncurses --with-curses-dir=$(STAGING_DIR)/usr \ --disable-rpath-hack -DIALOG_DEPENDENCIES = host-pkgconf ncurses +DIALOG_DEPENDENCIES = host-pkgconf ncurses $(TARGET_NLS_DEPENDENCIES) DIALOG_LICENSE = LGPL-2.1 DIALOG_LICENSE_FILES = COPYING diff --git a/buildroot/package/dmraid/Config.in b/buildroot/package/dmraid/Config.in index aa98c853a..3c375f4c6 100644 --- a/buildroot/package/dmraid/Config.in +++ b/buildroot/package/dmraid/Config.in @@ -12,6 +12,8 @@ config BR2_PACKAGE_DMRAID dmraid uses the Linux device-mapper to create devices with respective mappings for the ATARAID sets discovered. + http://people.redhat.com/~heinzm/sw/dmraid/ + comment "dmraid needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/buildroot/package/docker-cli/docker-cli.hash b/buildroot/package/docker-cli/docker-cli.hash index e8af45cce..061e61173 100644 --- a/buildroot/package/docker-cli/docker-cli.hash +++ b/buildroot/package/docker-cli/docker-cli.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 02bcb73dde1c9542fa65c8b87078aaa1b01b0dbdd62346637bcf0999a2a0909f docker-cli-v18.09.6.tar.gz +sha256 cef3f9e8615cde906619f7ab021655a8b974d1b497ce0e5787b1afccbeabb08d docker-cli-18.09.9.tar.gz sha256 2d81ea060825006fc8f3fe28aa5dc0ffeb80faf325b612c955229157b8c10dc0 LICENSE diff --git a/buildroot/package/docker-cli/docker-cli.mk b/buildroot/package/docker-cli/docker-cli.mk index b71bd7097..201d782e1 100644 --- a/buildroot/package/docker-cli/docker-cli.mk +++ b/buildroot/package/docker-cli/docker-cli.mk @@ -4,8 +4,8 @@ # ################################################################################ -DOCKER_CLI_VERSION = v18.09.6 -DOCKER_CLI_SITE = $(call github,docker,cli,$(DOCKER_CLI_VERSION)) +DOCKER_CLI_VERSION = 18.09.9 +DOCKER_CLI_SITE = $(call github,docker,cli,v$(DOCKER_CLI_VERSION)) DOCKER_CLI_WORKSPACE = gopath DOCKER_CLI_LICENSE = Apache-2.0 diff --git a/buildroot/package/docker-engine/docker-engine.hash b/buildroot/package/docker-engine/docker-engine.hash index 4e673f285..b89310f99 100644 --- a/buildroot/package/docker-engine/docker-engine.hash +++ b/buildroot/package/docker-engine/docker-engine.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 7cb45266fff79245c81ec86c455d4b0513ca5d4ec1b9be8c8330df30a9467481 docker-engine-v18.09.6.tar.gz +sha256 fa3a9e998627418d648495d06d168c4d26ed07859c9370d5fddbfd29c26d8592 docker-engine-18.09.9.tar.gz sha256 2d81ea060825006fc8f3fe28aa5dc0ffeb80faf325b612c955229157b8c10dc0 LICENSE diff --git a/buildroot/package/docker-engine/docker-engine.mk b/buildroot/package/docker-engine/docker-engine.mk index 4a14baaf9..84f34d43b 100644 --- a/buildroot/package/docker-engine/docker-engine.mk +++ b/buildroot/package/docker-engine/docker-engine.mk @@ -4,8 +4,8 @@ # ################################################################################ -DOCKER_ENGINE_VERSION = v18.09.6 -DOCKER_ENGINE_SITE = $(call github,docker,engine,$(DOCKER_ENGINE_VERSION)) +DOCKER_ENGINE_VERSION = 18.09.9 +DOCKER_ENGINE_SITE = $(call github,docker,engine,v$(DOCKER_ENGINE_VERSION)) DOCKER_ENGINE_LICENSE = Apache-2.0 DOCKER_ENGINE_LICENSE_FILES = LICENSE diff --git a/buildroot/package/docker-proxy/docker-proxy.hash b/buildroot/package/docker-proxy/docker-proxy.hash index 3ec184f54..58de69792 100644 --- a/buildroot/package/docker-proxy/docker-proxy.hash +++ b/buildroot/package/docker-proxy/docker-proxy.hash @@ -1,2 +1,3 @@ # Locally calculated -sha256 2eee331b6ded567a36e7db708405b34032b93938682cf049025f48b96d755bf6 docker-proxy-7b2b1feb1de4817d522cc372af149ff48d25028e.tar.gz +sha256 866c8d196b9396a383b437b0d775476459ed7c11f527c4f6bbf1fd08524b461d docker-proxy-55685ba49593e67f5e1c8180539379b16736c25e.tar.gz +sha256 cb5e8e7e5f4a3988e1063c142c60dc2df75605f4c46515e776e3aca6df976e14 LICENSE diff --git a/buildroot/package/docker-proxy/docker-proxy.mk b/buildroot/package/docker-proxy/docker-proxy.mk index dfa9d4347..8843266c3 100644 --- a/buildroot/package/docker-proxy/docker-proxy.mk +++ b/buildroot/package/docker-proxy/docker-proxy.mk @@ -4,7 +4,7 @@ # ################################################################################ -DOCKER_PROXY_VERSION = 7b2b1feb1de4817d522cc372af149ff48d25028e +DOCKER_PROXY_VERSION = 55685ba49593e67f5e1c8180539379b16736c25e DOCKER_PROXY_SITE = $(call github,docker,libnetwork,$(DOCKER_PROXY_VERSION)) DOCKER_PROXY_LICENSE = Apache-2.0 diff --git a/buildroot/package/domoticz/0003-CMakeLists.txt-add-c-argument-to-build-precompiled-h.patch b/buildroot/package/domoticz/0003-CMakeLists.txt-add-c-argument-to-build-precompiled-h.patch new file mode 100644 index 000000000..b14f4c56c --- /dev/null +++ b/buildroot/package/domoticz/0003-CMakeLists.txt-add-c-argument-to-build-precompiled-h.patch @@ -0,0 +1,34 @@ +From 17107b876fb308e3ef3e759ab90f3d8e4755cdc4 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 8 Nov 2019 14:17:58 +0100 +Subject: [PATCH] CMakeLists.txt: add -c argument to build precompiled headers + +Add "-c" argument when building precompiler headers as suggested +by Arnout in https://patchwork.ozlabs.org/patch/1187328. + +This will fix the build with RELRO + +Signed-off-by: Fabrice Fontaine +[Retrieved from: +https://github.com/domoticz/domoticz/commit/17107b876fb308e3ef3e759ab90f3d8e4755cdc4] +--- + CMakeLists.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 32a0dd2a8c..010cdf2db8 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -277,10 +277,10 @@ MACRO(ADD_PRECOMPILED_HEADER _targetName _input) + ENDFOREACH(item) + + SEPARATE_ARGUMENTS(_compiler_FLAGS) +- MESSAGE("${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} ${_compiler_FLAGS} -x c++-header -o ${_output} ${_source}") ++ MESSAGE("${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} ${_compiler_FLAGS} -x c++-header -c -o ${_output} ${_source}") + ADD_CUSTOM_COMMAND( + OUTPUT ${_output} +- COMMAND ${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} ${_compiler_FLAGS} -x c++-header -o ${_output} ${_source} ++ COMMAND ${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} ${_compiler_FLAGS} -x c++-header -c -o ${_output} ${_source} + DEPENDS ${_source} ) + ADD_CUSTOM_TARGET(${_targetName}_gch DEPENDS ${_output}) + ADD_DEPENDENCIES(${_targetName} ${_targetName}_gch) diff --git a/buildroot/package/doom-wad/Config.in b/buildroot/package/doom-wad/Config.in index 6f51cfb93..9ef4e3e5a 100644 --- a/buildroot/package/doom-wad/Config.in +++ b/buildroot/package/doom-wad/Config.in @@ -7,3 +7,5 @@ config BR2_PACKAGE_DOOM_WAD The wad file will be placed in the /usr/share/games/doom directory. + + https://doomwiki.org/wiki/DOOM1.WAD diff --git a/buildroot/package/dovecot-pigeonhole/dovecot-pigeonhole.hash b/buildroot/package/dovecot-pigeonhole/dovecot-pigeonhole.hash index f2b8720c6..eac675505 100644 --- a/buildroot/package/dovecot-pigeonhole/dovecot-pigeonhole.hash +++ b/buildroot/package/dovecot-pigeonhole/dovecot-pigeonhole.hash @@ -1,3 +1,3 @@ # Locally computed after checking signature -sha256 7c2fe7e23e732a8451172c00da5f19532448c95e03e44d47c61b123e8210f5b8 dovecot-2.3-pigeonhole-0.5.6.tar.gz +sha256 d59d0c5c5225a126e5b98bf95d75e8dd368bdeeb3da2e9766dbe4fddaa9411b0 dovecot-2.3-pigeonhole-0.5.7.2.tar.gz sha256 fc9e9522216f2a9a28b31300e3c73c1df56acc27dfae951bf516e7995366b51a COPYING diff --git a/buildroot/package/dovecot-pigeonhole/dovecot-pigeonhole.mk b/buildroot/package/dovecot-pigeonhole/dovecot-pigeonhole.mk index 1568cbc14..43519499c 100644 --- a/buildroot/package/dovecot-pigeonhole/dovecot-pigeonhole.mk +++ b/buildroot/package/dovecot-pigeonhole/dovecot-pigeonhole.mk @@ -4,7 +4,7 @@ # ################################################################################ -DOVECOT_PIGEONHOLE_VERSION = 0.5.6 +DOVECOT_PIGEONHOLE_VERSION = 0.5.7.2 DOVECOT_PIGEONHOLE_SOURCE = dovecot-2.3-pigeonhole-$(DOVECOT_PIGEONHOLE_VERSION).tar.gz DOVECOT_PIGEONHOLE_SITE = https://pigeonhole.dovecot.org/releases/2.3 DOVECOT_PIGEONHOLE_LICENSE = LGPL-2.1 diff --git a/buildroot/package/dovecot/dovecot.hash b/buildroot/package/dovecot/dovecot.hash index a57e51405..3d78af009 100644 --- a/buildroot/package/dovecot/dovecot.hash +++ b/buildroot/package/dovecot/dovecot.hash @@ -1,5 +1,5 @@ # Locally computed after checking signature -sha256 ed1d8dc1beeae9c6c73deac73a62ef19fe9262fbffd86604a3f690452f5536c7 dovecot-2.3.6.tar.gz +sha256 666ce084760a47e601d49a9be3c7993c48789d332631e8dfb45f443b367b1260 dovecot-2.3.7.2.tar.gz sha256 a363b132e494f662d98c820d1481297e6ae72f194c2c91b6c39e1518b86240a8 COPYING sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPL sha256 52b8c95fabb19575281874b661ef7968ea47e8f5d74ba0dd40ce512e52b3fc97 COPYING.MIT diff --git a/buildroot/package/dovecot/dovecot.mk b/buildroot/package/dovecot/dovecot.mk index 78bc41bff..65c2bcef6 100644 --- a/buildroot/package/dovecot/dovecot.mk +++ b/buildroot/package/dovecot/dovecot.mk @@ -5,8 +5,8 @@ ################################################################################ DOVECOT_VERSION_MAJOR = 2.3 -DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).6 -DOVECOT_SITE = https://www.dovecot.org/releases/$(DOVECOT_VERSION_MAJOR) +DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).7.2 +DOVECOT_SITE = https://dovecot.org/releases/$(DOVECOT_VERSION_MAJOR) DOVECOT_INSTALL_STAGING = YES DOVECOT_LICENSE = LGPL-2.1, MIT, Public Domain, BSD-3-Clause, Unicode-DFS-2015 DOVECOT_LICENSE_FILES = COPYING COPYING.LGPL COPYING.MIT @@ -64,6 +64,13 @@ else DOVECOT_CONF_OPTS += --without-sodium endif +ifeq ($(BR2_PACKAGE_LINUX_PAM),y) +DOVECOT_CONF_OPTS += --with-pam +DOVECOT_DEPENDENCIES += linux-pam +else +DOVECOT_CONF_OPTS += --without-pam +endif + ifeq ($(BR2_PACKAGE_DOVECOT_MYSQL),y) DOVECOT_CONF_ENV += MYSQL_CONFIG="$(STAGING_DIR)/usr/bin/mysql_config" DOVECOT_CONF_OPTS += --with-mysql diff --git a/buildroot/package/dropbear/0003-Fix-for-issue-successfull-login-of-disabled-user-78.patch b/buildroot/package/dropbear/0003-Fix-for-issue-successfull-login-of-disabled-user-78.patch new file mode 100644 index 000000000..b3cec4c08 --- /dev/null +++ b/buildroot/package/dropbear/0003-Fix-for-issue-successfull-login-of-disabled-user-78.patch @@ -0,0 +1,35 @@ +From a0aa2749813331134452f80bb8a808bdc871ba41 Mon Sep 17 00:00:00 2001 +From: vincentto13 <33652988+vincentto13@users.noreply.github.com> +Date: Wed, 20 Mar 2019 15:03:40 +0100 +Subject: [PATCH] Fix for issue successfull login of disabled user (#78) + +This commit introduces fix for scenario: +1. Root login disabled on dropbear +2. PAM authentication model enabled + +While login as root user, after prompt for password +user is being notified about login failrue, but +after second attempt of prompt for password within +same session, login becames succesfull. + +Signed-off-by: Pawel Rapkiewicz +Signed-off-by: Peter Korsgaard +--- + svr-authpam.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/svr-authpam.c b/svr-authpam.c +index d201bc9..e236db4 100644 +--- a/svr-authpam.c ++++ b/svr-authpam.c +@@ -275,6 +275,7 @@ void svr_auth_pam(int valid_user) { + /* PAM auth succeeded but the username isn't allowed in for another reason + (checkusername() failed) */ + send_msg_userauth_failure(0, 1); ++ goto cleanup; + } + + /* successful authentication */ +-- +2.11.0 + diff --git a/buildroot/package/duma/0004-Fix-build-with-latest-glibc.patch b/buildroot/package/duma/0004-Fix-build-with-latest-glibc.patch new file mode 100644 index 000000000..2d73d7ae5 --- /dev/null +++ b/buildroot/package/duma/0004-Fix-build-with-latest-glibc.patch @@ -0,0 +1,22 @@ +Fix build with latest glibc + +Fixes: + - http://autobuild.buildroot.net/results/c7de1a1d01edced2098a804ad87dcb67b5dc6832 + +Signed-off-by: Fabrice Fontaine + +diff -durN duma_2_5_15.orig/print.c duma_2_5_15/print.c +--- duma_2_5_15.orig/print.c 2019-10-28 10:21:14.080149620 +0100 ++++ duma_2_5_15/print.c 2019-10-28 10:22:01.256151561 +0100 +@@ -326,9 +326,9 @@ + if(DUMA_OUTPUT_FILE != NULL) + { + #if defined(WIN32) && !defined(__CYGWIN__) +- fd = _open(DUMA_OUTPUT_FILE, _O_APPEND|_O_CREAT|_O_WRONLY); ++ fd = _open(DUMA_OUTPUT_FILE, _O_APPEND|_O_CREAT|_O_WRONLY, 0600); + #else +- fd = open(DUMA_OUTPUT_FILE, O_APPEND|O_CREAT|O_WRONLY); ++ fd = open(DUMA_OUTPUT_FILE, O_APPEND|O_CREAT|O_WRONLY, 0600); + #endif + if ( fd >= 0 ) + { diff --git a/buildroot/package/e2fsprogs/e2fsprogs.hash b/buildroot/package/e2fsprogs/e2fsprogs.hash index 7619e2627..c9018715c 100644 --- a/buildroot/package/e2fsprogs/e2fsprogs.hash +++ b/buildroot/package/e2fsprogs/e2fsprogs.hash @@ -1,5 +1,5 @@ -# From https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.44.5/sha256sums.asc -sha256 ba5eb3069d69160d96818bb9700de9ab5a8458d9add1fd85d427c0000d34c5b9 e2fsprogs-1.44.5.tar.xz +# https://mirrors.edge.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.45.4/sha256sums.asc +sha256 65faf6b590ca1da97440d6446bd11de9e0914b42553740ba5d9d2a796fa0dc02 e2fsprogs-1.45.4.tar.xz # Locally calculated sha256 5da5ef153e559c1d990d4c3eedbedd4442db892d37eae1f35fff069de8ec9020 NOTICE sha256 032989b508f1a72ebee5b3417e55d06d473f9ee203e45ab11864a7e49cdec63d lib/ss/mit-sipb-copyright.h diff --git a/buildroot/package/e2fsprogs/e2fsprogs.mk b/buildroot/package/e2fsprogs/e2fsprogs.mk index f5785ab4f..28fd78047 100644 --- a/buildroot/package/e2fsprogs/e2fsprogs.mk +++ b/buildroot/package/e2fsprogs/e2fsprogs.mk @@ -4,7 +4,7 @@ # ################################################################################ -E2FSPROGS_VERSION = 1.44.5 +E2FSPROGS_VERSION = 1.45.4 E2FSPROGS_SOURCE = e2fsprogs-$(E2FSPROGS_VERSION).tar.xz E2FSPROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/people/tytso/e2fsprogs/v$(E2FSPROGS_VERSION) E2FSPROGS_LICENSE = GPL-2.0, MIT-like with advertising clause (libss and libet) @@ -28,7 +28,8 @@ HOST_E2FSPROGS_CONF_OPTS = \ --disable-libuuid \ --disable-testio-debug \ --enable-symlink-install \ - --enable-elf-shlibs + --enable-elf-shlibs \ + --with-crond-dir=no # Set the binary directories to "/bin" and "/sbin", as busybox does, # so that we do not end up with two versions of e2fs tools. diff --git a/buildroot/package/elf2flt/0002-elf2flt-fix-relocations-for-read-only-data.patch b/buildroot/package/elf2flt/0002-elf2flt-fix-relocations-for-read-only-data.patch new file mode 100644 index 000000000..6cb3a5543 --- /dev/null +++ b/buildroot/package/elf2flt/0002-elf2flt-fix-relocations-for-read-only-data.patch @@ -0,0 +1,58 @@ +From 6006e8d789f7a1129414fb3a8c930b094af0cafa Mon Sep 17 00:00:00 2001 +From: Greg Ungerer +Date: Wed, 6 Nov 2019 21:19:24 +0100 +Subject: [PATCH] elf2flt: fix relocations for read-only data + +Readonly data sections are mapped into the "text" section in the +elf2flt.ld linker script. The relocation generation code is not handling +that case properly though, and is actually mapping any data section type +into the "data" section of the target binary. + +This problem case has been detected with elf2flt core dumping when used +with binutils-2.33.1 (on ARM architecture targets). See thread at: + + https://sourceware.org/ml/binutils/2019-10/msg00132.html + +Tested by Christophe Priouzeau [1] + +* binutils 2.33.1 +* buildroot 2019.11-rc1 +* patch on top of elf2flt (patch available on this thread) +* configuration: stm32f469-disco with initramfs configuration on buildroot + +Result: +Build: OK, all the binaries are generated +Runtime test on stm32f469-disco: OK + +[1] https://github.com/uclinux-dev/elf2flt/issues/12 + +Signed-off-by: Greg Ungerer +Signed-off-by: Romain Naour +Cc: Christophe Priouzeau +--- + elf2flt.c | 8 +++++--- + 1 file changed, 5 insertions(+), 3 deletions(-) + +diff --git a/elf2flt.c b/elf2flt.c +index 67f720a..8973cef 100644 +--- a/elf2flt.c ++++ b/elf2flt.c +@@ -418,10 +418,12 @@ output_relocs ( + // continue; + + /* +- * Only relocate things in the data sections if we are PIC/GOT. +- * otherwise do text as well ++ * Only relocate things in the writable data sections if we are PIC/GOT. ++ * Otherwise do text (and read only data) as well. + */ +- if ((!pic_with_got || ALWAYS_RELOC_TEXT) && (a->flags & SEC_CODE)) ++ if ((!pic_with_got || ALWAYS_RELOC_TEXT) && ++ ((a->flags & SEC_CODE) || ++ ((a->flags & (SEC_DATA | SEC_READONLY)) == (SEC_DATA | SEC_READONLY)))) + sectionp = text + (a->vma - text_vma); + else if (a->flags & SEC_DATA) + sectionp = data + (a->vma - data_vma); +-- +2.21.0 + diff --git a/buildroot/package/elf2flt/Config.in.host b/buildroot/package/elf2flt/Config.in.host index b93795baa..d6685a7ff 100644 --- a/buildroot/package/elf2flt/Config.in.host +++ b/buildroot/package/elf2flt/Config.in.host @@ -9,3 +9,5 @@ config BR2_PACKAGE_HOST_ELF2FLT This option compiles the required tools and makes the required modifications on your toolchain (linker). + + https://github.com/uclinux-dev/elf2flt diff --git a/buildroot/package/elfutils/0004-libelf-Fix-possible-resource-leak-in-elf-32-64-_updatefile.patch b/buildroot/package/elfutils/0004-libelf-Fix-possible-resource-leak-in-elf-32-64-_updatefile.patch new file mode 100644 index 000000000..ab76bd7a4 --- /dev/null +++ b/buildroot/package/elfutils/0004-libelf-Fix-possible-resource-leak-in-elf-32-64-_updatefile.patch @@ -0,0 +1,32 @@ +From 75e147d0ab85262d9bb2fff093db7ce67dbd4b62 Mon Sep 17 00:00:00 2001 +From: Mark Wielaard +Date: Wed, 6 Mar 2019 19:56:54 +0100 +Subject: [PATCH] libelf: Fix possible resource leak in elf[32|64]_updatefile. + +When we cannot allocate enough memory to convert the data in +updatemmap we should free the scns before returning an error. + +Signed-off-by: Mark Wielaard +[Retrieved (and slightly updated to remove ChangeLog update) from: +https://sourceware.org/git/?p=elfutils.git;a=patch;h=75e147d0ab85262d9bb2fff093db7ce67dbd4b62] +Signed-off-by: Fabrice Fontaine +--- + libelf/elf32_updatefile.c | 1 + + 2 files changed, 6 insertions(+) + + * gelf_xlate.c (__elf_xfctstof): Remove alias. +diff --git a/libelf/elf32_updatefile.c b/libelf/elf32_updatefile.c +index 2899c6f..457d18e 100644 +--- a/libelf/elf32_updatefile.c ++++ b/libelf/elf32_updatefile.c +@@ -365,6 +365,7 @@ __elfw2(LIBELFBITS,updatemmap) (Elf *elf, int change_bo, size_t shnum) + char *converted = aligned_alloc (align, size); + if (converted == NULL) + { ++ free (scns); + __libelf_seterrno (ELF_E_NOMEM); + return 1; + } +-- +2.9.3 + diff --git a/buildroot/package/elfutils/0005-libelf-Use-posix_memalign-instead-of-aligned_alloc.patch b/buildroot/package/elfutils/0005-libelf-Use-posix_memalign-instead-of-aligned_alloc.patch new file mode 100644 index 000000000..70f1f9af2 --- /dev/null +++ b/buildroot/package/elfutils/0005-libelf-Use-posix_memalign-instead-of-aligned_alloc.patch @@ -0,0 +1,58 @@ +From 6bd060a23f43a842fbc37dd1bb8d6d7964eda36e Mon Sep 17 00:00:00 2001 +From: Mark Wielaard +Date: Thu, 7 Mar 2019 17:31:53 +0100 +Subject: [PATCH] libelf: Use posix_memalign instead of aligned_alloc. + +Older glibc might not have aligned_alloc (it is C11). +Use posix_memalign instead. posix_memalign requires the alignment to +be a multiple of sizeof (void *). So use malloc for smaller alignments. + +Signed-off-by: Mark Wielaard +[Retrieved (and slighlty updated to remove ChangeLog update) from: +https://sourceware.org/git/?p=elfutils.git;a=patch;h=6bd060a23f43a842fbc37dd1bb8d6d7964eda36e] +Signed-off-by: Fabrice Fontaine +--- + libelf/elf32_updatefile.c | 20 +++++++++++++++++--- + 2 files changed, 22 insertions(+), 3 deletions(-) + +diff --git a/libelf/elf32_updatefile.c b/libelf/elf32_updatefile.c +index 457d18e..eea51a7 100644 +--- a/libelf/elf32_updatefile.c ++++ b/libelf/elf32_updatefile.c +@@ -360,16 +360,30 @@ __elfw2(LIBELFBITS,updatemmap) (Elf *elf, int change_bo, size_t shnum) + else + { + /* We have to do the conversion on properly +- aligned memory first. */ ++ aligned memory first. align is a power of 2, ++ but posix_memalign only works for alignments ++ which are a multiple of sizeof (void *). ++ So use normal malloc for smaller alignments. */ + size_t size = dl->data.d.d_size; +- char *converted = aligned_alloc (align, size); ++ void *converted; ++ if (align < sizeof (void *)) ++ converted = malloc (size); ++ else ++ { ++ int res; ++ res = posix_memalign (&converted, align, size); ++ if (res != 0) ++ converted = NULL; ++ } ++ + if (converted == NULL) + { + free (scns); + __libelf_seterrno (ELF_E_NOMEM); + return 1; + } +- (*fctp) (converted, dl->data.d.d_buf, size, 1); ++ ++ (*fctp) (converted, dl->data.d.d_buf, size, 1); + + /* And then write it to the mmapped file. */ + memcpy (last_position, converted, size); +-- +2.9.3 + diff --git a/buildroot/package/elfutils/elfutils.hash b/buildroot/package/elfutils/elfutils.hash index 5a76cd586..15dddc2fd 100644 --- a/buildroot/package/elfutils/elfutils.hash +++ b/buildroot/package/elfutils/elfutils.hash @@ -1,5 +1,5 @@ -# From https://sourceware.org/elfutils/ftp/0.174/sha512.sum -sha512 696708309c2a9a076099748809ecdc0490f4a8a842b2efc1aae0d746e7c5a8b203743f5626739eff837216b0c052696516b2821f5d3cc3f2eef86597c96d42df elfutils-0.174.tar.bz2 +# From https://sourceware.org/elfutils/ftp/0.176/sha512.sum +sha512 7f032913be363a43229ded85d495dcf7542b3c85974aaaba0d984228dc9ac1721da3dc388d3fa02325a80940161db7e9ad2c9e4521a424ad8a7d050c0902915b elfutils-0.176.tar.bz2 # Locally calculated sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING-GPLV2 diff --git a/buildroot/package/elfutils/elfutils.mk b/buildroot/package/elfutils/elfutils.mk index 2d62017bb..ea5486287 100644 --- a/buildroot/package/elfutils/elfutils.mk +++ b/buildroot/package/elfutils/elfutils.mk @@ -4,7 +4,7 @@ # ################################################################################ -ELFUTILS_VERSION = 0.174 +ELFUTILS_VERSION = 0.176 ELFUTILS_SOURCE = elfutils-$(ELFUTILS_VERSION).tar.bz2 ELFUTILS_SITE = https://sourceware.org/elfutils/ftp/$(ELFUTILS_VERSION) ELFUTILS_INSTALL_STAGING = YES diff --git a/buildroot/package/eudev/Config.in b/buildroot/package/eudev/Config.in index 2220265a5..b1d2f37a7 100644 --- a/buildroot/package/eudev/Config.in +++ b/buildroot/package/eudev/Config.in @@ -29,8 +29,9 @@ config BR2_PACKAGE_EUDEV_RULES_GEN config BR2_PACKAGE_EUDEV_ENABLE_HWDB bool "enable hwdb installation" default y + select BR2_PACKAGE_HOST_EUDEV # for udevadm, during target-finalize help - Enables hardware database installation to /etc/udev/hwdb.d + Enables hardware database installation to /etc/udev/hwdb.bin endif diff --git a/buildroot/package/eudev/Config.in.host b/buildroot/package/eudev/Config.in.host new file mode 100644 index 000000000..87dfc4391 --- /dev/null +++ b/buildroot/package/eudev/Config.in.host @@ -0,0 +1,3 @@ +# Select this if you need host eudev tools (e.g. udevadm) +config BR2_PACKAGE_HOST_EUDEV + bool diff --git a/buildroot/package/eudev/eudev.mk b/buildroot/package/eudev/eudev.mk index d88e010c2..e41675d3e 100644 --- a/buildroot/package/eudev/eudev.mk +++ b/buildroot/package/eudev/eudev.mk @@ -51,6 +51,44 @@ endef # Required by default rules for input devices define EUDEV_USERS - - input -1 * - - - Input device group + - - render -1 * - - - DRI rendering nodes + - - kvm -1 * - - - kvm nodes endef +HOST_EUDEV_DEPENDENCIES = host-gperf host-pkgconf + +HOST_EUDEV_SYSCONFDIR = $(if $(BR2_PACKAGE_SYSTEMD),/usr/lib,/etc) +HOST_EUDEV_CONF_OPTS = \ + --prefix=/usr \ + --sbindir=/sbin \ + --libexecdir=/lib \ + --with-rootlibdir=/lib \ + --sysconfdir=$(HOST_EUDEV_SYSCONFDIR) \ + --disable-blkid \ + --disable-introspection \ + --disable-kmod \ + --disable-manpages \ + --disable-rule-generator \ + --disable-selinux \ + --enable-hwdb + +define HOST_EUDEV_INSTALL_CMDS + $(INSTALL) -D -m 0755 $(@D)/src/udev/udevadm \ + $(HOST_DIR)/bin/udevadm +endef + +define HOST_EUDEV_BUILD_HWDB + $(HOST_DIR)/bin/udevadm hwdb --update --root $(TARGET_DIR) +endef +HOST_EUDEV_TARGET_FINALIZE_HOOKS += HOST_EUDEV_BUILD_HWDB + +# Note: this will run in the filesystem context, so will use a copy +# of tharget/, not the real one, so the files are still available on +# re-builds (foo-rebuild, etc...) +define HOST_EUDEV_RM_HWDB_SRC + rm -rf $(TARGET_DIR)/$(HOST_EUDEV_SYSCONFDIR)/udev/hwdb.d/ +endef +HOST_EUDEV_ROOTFS_PRE_CMD_HOOKS += HOST_EUDEV_RM_HWDB_SRC + $(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/buildroot/package/evtest/0001-Add-missing-limits.h-include.patch b/buildroot/package/evtest/0001-Add-missing-limits.h-include.patch new file mode 100644 index 000000000..6c7fc9048 --- /dev/null +++ b/buildroot/package/evtest/0001-Add-missing-limits.h-include.patch @@ -0,0 +1,38 @@ +From 7d7c5a81b0e2f3321d269b7acc450d1eec7a910b Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Sun, 18 Aug 2019 09:57:23 +0300 +Subject: [PATCH] Add missing limits.h include +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fixes build with musl libc that does not include limits.h indirectly via +other headers. + +evtest.c: In function ‘scan_devices’: +evtest.c:886:14: error: ‘PATH_MAX’ undeclared (first use in this function); did you mean INT8_MAX’? + char fname[PATH_MAX]; + ^~~~~~~~ + +Signed-off-by: Baruch Siach +--- +Upstream status: sent to input-tools@lists.freedesktop.org (moderated) + + evtest.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/evtest.c b/evtest.c +index 37d4f8540333..548c203564d3 100644 +--- a/evtest.c ++++ b/evtest.c +@@ -56,6 +56,7 @@ + #include + #include + #include ++#include + #include + #include + #include +-- +2.23.0.rc1 + diff --git a/buildroot/package/exfat-utils/exfat-utils.mk b/buildroot/package/exfat-utils/exfat-utils.mk index 62cd47186..16d5aa03d 100644 --- a/buildroot/package/exfat-utils/exfat-utils.mk +++ b/buildroot/package/exfat-utils/exfat-utils.mk @@ -9,4 +9,6 @@ EXFAT_UTILS_SITE = https://github.com/relan/exfat/releases/download/v$(EXFAT_UTI EXFAT_UTILS_LICENSE = GPL-3.0+ EXFAT_UTILS_LICENSE_FILES = COPYING +EXFAT_UTILS_CONF_OPTS += --exec-prefix=/ + $(eval $(autotools-package)) diff --git a/buildroot/package/exfat/exfat.mk b/buildroot/package/exfat/exfat.mk index b52b19706..d8744feb9 100644 --- a/buildroot/package/exfat/exfat.mk +++ b/buildroot/package/exfat/exfat.mk @@ -12,4 +12,6 @@ EXFAT_LICENSE = GPL-3.0+ EXFAT_LICENSE_FILES = COPYING EXFAT_CFLAGS = $(TARGET_CFLAGS) -std=c99 +EXFAT_CONF_OPTS += --exec-prefix=/ + $(eval $(autotools-package)) diff --git a/buildroot/package/exim/0004-glibc.patch b/buildroot/package/exim/0004-glibc.patch deleted file mode 100644 index 7ae2ef8c7..000000000 --- a/buildroot/package/exim/0004-glibc.patch +++ /dev/null @@ -1,27 +0,0 @@ -uClibc does not contain gnu/libc-version.h - -Patch sent upstream: https://bugs.exim.org/show_bug.cgi?id=2070 - -Signed-off-by: Bernd Kuhls - -diff -uNr exim-4.88.org/src/exim.c exim-4.88/src/exim.c ---- exim-4.88.org/src/exim.c 2016-12-18 15:02:28.000000000 +0100 -+++ exim-4.88/src/exim.c 2016-12-26 12:12:57.000000000 +0100 -@@ -12,7 +12,7 @@ - - #include "exim.h" - --#ifdef __GLIBC__ -+#if defined(__GLIBC__) && !defined(__UCLIBC__) - # include - #endif - -@@ -1044,7 +1044,7 @@ - fprintf(f, "Compiler: \n"); - #endif - --#ifdef __GLIBC__ -+#if defined(__GLIBC__) && !defined(__UCLIBC__) - fprintf(f, "Library version: Glibc: Compile: %d.%d\n", - __GLIBC__, __GLIBC_MINOR__); - if (__GLIBC_PREREQ(2, 1)) diff --git a/buildroot/package/exim/0006-remove-libnsl.patch b/buildroot/package/exim/0004-remove-libnsl.patch similarity index 100% rename from buildroot/package/exim/0006-remove-libnsl.patch rename to buildroot/package/exim/0004-remove-libnsl.patch diff --git a/buildroot/package/exim/0005-Fix-base64d-buffer-size-CVE-2018-6789.patch b/buildroot/package/exim/0005-Fix-base64d-buffer-size-CVE-2018-6789.patch deleted file mode 100644 index 1811a7ff9..000000000 --- a/buildroot/package/exim/0005-Fix-base64d-buffer-size-CVE-2018-6789.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 062990cc1b2f9e5d82a413b53c8f0569075de700 Mon Sep 17 00:00:00 2001 -From: "Heiko Schlittermann (HS12-RIPE)" -Date: Mon, 5 Feb 2018 22:23:32 +0100 -Subject: [PATCH] Fix base64d() buffer size (CVE-2018-6789) - -Credits for discovering this bug: Meh Chang - -[Peter: Drop ChangeLog change, fix path] -Signed-off-by: Peter Korsgaard ---- - src/base64.c | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/src/base64.c b/src/base64.c -index f6f187f0..e58ca6c7 100644 ---- a/src/base64.c -+++ b/src/base64.c -@@ -152,10 +152,14 @@ static uschar dec64table[] = { - int - b64decode(const uschar *code, uschar **ptr) - { -+ - int x, y; --uschar *result = store_get(3*(Ustrlen(code)/4) + 1); -+uschar *result; - --*ptr = result; -+{ -+ int l = Ustrlen(code); -+ *ptr = result = store_get(1 + l/4 * 3 + l%4); -+} - - /* Each cycle of the loop handles a quantum of 4 input bytes. For the last - quantum this may decode to 1, 2, or 3 output bytes. */ --- -2.11.0 - diff --git a/buildroot/package/exim/0005-Fix-uClibc-build.patch b/buildroot/package/exim/0005-Fix-uClibc-build.patch new file mode 100644 index 000000000..9d5452bb5 --- /dev/null +++ b/buildroot/package/exim/0005-Fix-uClibc-build.patch @@ -0,0 +1,35 @@ +From 68ea4fc7ca53bf010e5ec738ad078452f0eaa639 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Tue, 23 Jul 2019 18:48:06 +0200 +Subject: [PATCH] Fix uClibc build +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +structs.h:757:18: error: ‘NS_MAXMSG’ undeclared here (not in a function); did you mean ‘N_MASC’? + uschar answer[NS_MAXMSG]; /* the answer itself */ + +Patch sent upstream: https://github.com/Exim/exim/pull/70 + +Signed-off-by: Bernd Kuhls +--- + OS/os.h-Linux | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/OS/os.h-Linux b/OS/os.h-Linux +index 63cf9babd..1d82e9bad 100644 +--- a/OS/os.h-Linux ++++ b/OS/os.h-Linux +@@ -87,5 +87,9 @@ then change the 0 to 1 in the next block. */ + # define TCPI_OPT_SYN_DATA 32 + #endif + ++/* Needed for uClibc */ ++#ifndef NS_MAXMSG ++# define NS_MAXMSG 65535 ++#endif + + /* End */ +-- +2.20.1 + diff --git a/buildroot/package/exim/0006-Fix-buffer-overflow-in-string_vformat.patch b/buildroot/package/exim/0006-Fix-buffer-overflow-in-string_vformat.patch new file mode 100644 index 000000000..5b022e2fc --- /dev/null +++ b/buildroot/package/exim/0006-Fix-buffer-overflow-in-string_vformat.patch @@ -0,0 +1,44 @@ +From 478effbfd9c3cc5a627fc671d4bf94d13670d65f Mon Sep 17 00:00:00 2001 +From: Jeremy Harris +Date: Fri, 27 Sep 2019 12:21:49 +0100 +Subject: [PATCH] Fix buffer overflow in string_vformat. Bug 2449 + +Fixes CVE-2019-16928: +https://lists.exim.org/lurker/message/20190928.003428.2b4c81a7.en.html + +Downloaded from upstream commit +https://git.exim.org/exim.git/patch/478effbfd9c3cc5a627fc671d4bf94d13670d65f + +[adjusted patch of string.c and removed patches for test/] +Signed-off-by: Bernd Kuhls +--- + src/string.c | 4 ++-- + scripts/0000-Basic/0214 | 11 +++++++++++ + stdout/0214 | 7 +++++++ + 3 files changed, 20 insertions(+), 2 deletions(-) + +diff --git a/src/src/string.c b/src/src/string.c +index c6549bf..3445f8a 100644 +--- a/src/string.c ++++ b/src/string.c +@@ -1132,7 +1132,7 @@ store_reset(g->s + (g->size = g->ptr + 1)); + Arguments: + g the growable-string + p current end of data +- count amount to grow by ++ count amount to grow by, offset from p + */ + + static void +@@ -1590,7 +1590,7 @@ while (*fp) + } + else if (g->ptr >= lim - width) + { +- gstring_grow(g, g->ptr, width - (lim - g->ptr)); ++ gstring_grow(g, g->ptr, width); + lim = g->size - 1; + gp = CS g->s + g->ptr; + } +-- +1.9.1 + diff --git a/buildroot/package/exim/0007-Fix-CVE-2019-10149.patch b/buildroot/package/exim/0007-Fix-CVE-2019-10149.patch deleted file mode 100644 index f8b5338b5..000000000 --- a/buildroot/package/exim/0007-Fix-CVE-2019-10149.patch +++ /dev/null @@ -1,51 +0,0 @@ -From d740d2111f189760593a303124ff6b9b1f83453d Mon Sep 17 00:00:00 2001 -From: Jeremy Harris -Date: Mon, 27 May 2019 21:57:31 +0100 -Subject: [PATCH] Fix CVE-2019-10149 - -[Peter: drop documentation update, fix path] -Signed-off-by: Peter Korsgaard ---- - src/deliver.c | 22 ++++++++++++++-------- - 1 files changed, 52 insertions(+), 8 deletions(-) - create mode 100644 doc/doc-txt/cve-2019-10149 - -diff --git a/src/deliver.c b/src/deliver.c -index 59256ac2..45cc0723 100644 ---- a/src/deliver.c -+++ b/src/deliver.c -@@ -6227,17 +6227,23 @@ if (process_recipients != RECIP_IGNORE) - { - uschar * save_local = deliver_localpart; - const uschar * save_domain = deliver_domain; -+ uschar * addr = new->address, * errmsg = NULL; -+ int start, end, dom; - -- deliver_localpart = expand_string( -- string_sprintf("${local_part:%s}", new->address)); -- deliver_domain = expand_string( -- string_sprintf("${domain:%s}", new->address)); -+ if (!parse_extract_address(addr, &errmsg, &start, &end, &dom, TRUE)) -+ log_write(0, LOG_MAIN|LOG_PANIC, -+ "failed to parse address '%.100s': %s\n", addr, errmsg); -+ else -+ { -+ deliver_localpart = -+ string_copyn(addr+start, dom ? (dom-1) - start : end - start); -+ deliver_domain = dom ? CUS string_copyn(addr+dom, end - dom) : CUS""; - -- (void) event_raise(event_action, -- US"msg:fail:internal", new->message); -+ event_raise(event_action, US"msg:fail:internal", new->message); - -- deliver_localpart = save_local; -- deliver_domain = save_domain; -+ deliver_localpart = save_local; -+ deliver_domain = save_domain; -+ } - } - #endif - } --- -2.11.0 - diff --git a/buildroot/package/exim/exim.hash b/buildroot/package/exim/exim.hash index 41f51b15e..0d11683c0 100644 --- a/buildroot/package/exim/exim.hash +++ b/buildroot/package/exim/exim.hash @@ -1,2 +1,3 @@ # Locally calculated after checking pgp signature -sha256 1a21322a10e2da9c0bd6a2a483b6e7ef8fa7f16efcab4c450fd73e7188f5fa94 exim-4.89.1.tar.xz +sha256 01d7ae481d03ff408f8e54fd9b250324ea5ddabc83b1db32917c7f27a096a654 exim-4.92.2.tar.xz +sha256 49240db527b7e55b312a46fc59794fde5dd006422e422257f4f057bfd27b3c8f LICENCE diff --git a/buildroot/package/exim/exim.mk b/buildroot/package/exim/exim.mk index bde2df115..b6a8566ce 100644 --- a/buildroot/package/exim/exim.mk +++ b/buildroot/package/exim/exim.mk @@ -4,12 +4,12 @@ # ################################################################################ -EXIM_VERSION = 4.89.1 +EXIM_VERSION = 4.92.2 EXIM_SOURCE = exim-$(EXIM_VERSION).tar.xz -EXIM_SITE = ftp://ftp.exim.org/pub/exim/exim4 +EXIM_SITE = https://ftp.exim.org/pub/exim/exim4 EXIM_LICENSE = GPL-2.0+ EXIM_LICENSE_FILES = LICENCE -EXIM_DEPENDENCIES = pcre berkeleydb host-pkgconf +EXIM_DEPENDENCIES = host-berkeleydb host-pcre pcre berkeleydb host-pkgconf # Modify a variable value. It must already exist in the file, either # commented or not. @@ -65,7 +65,7 @@ endef endif ifeq ($(BR2_PACKAGE_OPENSSL),y) -EXIM_DEPENDENCIES += openssl +EXIM_DEPENDENCIES += host-openssl openssl define EXIM_USE_DEFAULT_CONFIG_FILE_OPENSSL $(call exim-config-change,SUPPORT_TLS,yes) $(call exim-config-change,USE_OPENSSL_PC,openssl) @@ -111,9 +111,17 @@ ifeq ($(BR2_STATIC_LIBS),y) EXIM_STATIC_FLAGS = LFLAGS="-pthread --static" endif +# We need the host version of macro_predef during the build, before +# building it we need to prepare the makefile. # "The -j (parallel) flag must not be used with make" # (http://www.exim.org/exim-html-current/doc/html/spec_html/ch04.html) define EXIM_BUILD_CMDS + $(TARGET_MAKE_ENV) build=br $(MAKE1) -C $(@D) makefile + $(HOST_MAKE_ENV) $(MAKE1) -C $(@D)/build-br macro_predef \ + CC=$(HOSTCC) \ + LNCC=$(HOSTCC) \ + CFLAGS="$(HOST_CFLAGS)" \ + LFLAGS="-fPIC $(HOST_LDFLAGS)" $(TARGET_MAKE_ENV) build=br $(MAKE1) -C $(@D) $(EXIM_STATIC_FLAGS) endef diff --git a/buildroot/package/expat/expat.hash b/buildroot/package/expat/expat.hash index 6c55972f6..07faca5e6 100644 --- a/buildroot/package/expat/expat.hash +++ b/buildroot/package/expat/expat.hash @@ -1,7 +1,7 @@ -# From https://sourceforge.net/projects/expat/files/expat/2.2.6/ -md5 ca047ae951b40020ac831c28859161b2 expat-2.2.6.tar.bz2 -sha1 c8947fc3119a797b55485f2f7bdaaeb49cc9df01 expat-2.2.6.tar.bz2 +# From https://sourceforge.net/projects/expat/files/expat/2.2.8/ +md5 cdf54239f892fc7914957f10de1e1c70 expat-2.2.8.tar.xz +sha1 500a848d7085df06020a86bf64c5f71c0052a080 expat-2.2.8.tar.xz # Locally calculated -sha256 17b43c2716d521369f82fc2dc70f359860e90fa440bea65b3b85f0b246ea81f2 expat-2.2.6.tar.bz2 +sha256 61caa81a49d858afb2031c7b1a25c97174e7f2009aa1ec4e1ffad2316b91779b expat-2.2.8.tar.xz sha256 46336ab2fec900803e2f1a4253e325ac01d998efb09bc6906651f7259e636f76 COPYING diff --git a/buildroot/package/expat/expat.mk b/buildroot/package/expat/expat.mk index 548ec826a..20d0add83 100644 --- a/buildroot/package/expat/expat.mk +++ b/buildroot/package/expat/expat.mk @@ -4,9 +4,9 @@ # ################################################################################ -EXPAT_VERSION = 2.2.6 +EXPAT_VERSION = 2.2.8 EXPAT_SITE = http://downloads.sourceforge.net/project/expat/expat/$(EXPAT_VERSION) -EXPAT_SOURCE = expat-$(EXPAT_VERSION).tar.bz2 +EXPAT_SOURCE = expat-$(EXPAT_VERSION).tar.xz EXPAT_INSTALL_STAGING = YES EXPAT_DEPENDENCIES = host-pkgconf HOST_EXPAT_DEPENDENCIES = host-pkgconf diff --git a/buildroot/package/expect/expect.hash b/buildroot/package/expect/expect.hash index c89f32390..c4815abb0 100644 --- a/buildroot/package/expect/expect.hash +++ b/buildroot/package/expect/expect.hash @@ -1,4 +1,4 @@ -# From https://sourceforge.net/projects/expect/files/Expect/5.45.3/expect5.45.3.tar.gz.SHA256 -sha256 c520717b7195944a69ce1492ec82ca0ac3f3baf060804e6c5ee6d505ea512be9 expect5.45.3.tar.gz +# From https://sourceforge.net/projects/expect/files/Expect/5.45.4/expect5.45.4.tar.gz.SHA256 +sha256 49a7da83b0bdd9f46d04a04deec19c7767bb9a323e40c4781f89caf760b92c34 expect5.45.4.tar.gz # Locally calculated sha256 b2415b17dc8d9a287f4509047ef5ac3436baef7ba7c50faef5222dcdf61a2bab README diff --git a/buildroot/package/expect/expect.mk b/buildroot/package/expect/expect.mk index ccde33a71..37b4ce706 100644 --- a/buildroot/package/expect/expect.mk +++ b/buildroot/package/expect/expect.mk @@ -4,7 +4,7 @@ # ################################################################################ -EXPECT_VERSION = 5.45.3 +EXPECT_VERSION = 5.45.4 EXPECT_SITE = https://sourceforge.net/projects/expect/files/Expect/$(EXPECT_VERSION) EXPECT_SOURCE = expect$(EXPECT_VERSION).tar.gz EXPECT_LICENSE = Public domain diff --git a/buildroot/package/faad2/0001-syntax.c-check-for-syntax-element-inconsistencies.patch b/buildroot/package/faad2/0001-syntax.c-check-for-syntax-element-inconsistencies.patch new file mode 100644 index 000000000..de97dbbaf --- /dev/null +++ b/buildroot/package/faad2/0001-syntax.c-check-for-syntax-element-inconsistencies.patch @@ -0,0 +1,64 @@ +From 466b01d504d7e45f1e9169ac90b3e34ab94aed14 Mon Sep 17 00:00:00 2001 +From: Hugo Lefeuvre +Date: Mon, 25 Feb 2019 10:49:03 +0100 +Subject: [PATCH] syntax.c: check for syntax element inconsistencies + +Implicit channel mapping reconfiguration is explicitely forbidden by +ISO/IEC 13818-7:2006 (8.5.3.3). Decoders should be able to detect such +files and reject them. FAAD2 does not perform any kind of checks +regarding this. + +This leads to security vulnerabilities when processing crafted AAC +files performing such reconfigurations. + +Add checks to decode_sce_lfe and decode_cpe to make sure such +inconsistencies are detected as early as possible. + +These checks first read hDecoder->frame: if this is not the first +frame then we make sure that the syntax element at the same position +in the previous frame also had element_id id_syn_ele. If not, return +21 as this is a fatal file structure issue. + +This patch addresses CVE-2018-20362 (fixes #26) and possibly other +related issues. + +Signed-off-by: Baruch Siach +--- +Upstream status: commit 466b01d504d7 + + libfaad/syntax.c | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/libfaad/syntax.c b/libfaad/syntax.c +index f8e808c269c0..e7fb11381e46 100644 +--- a/libfaad/syntax.c ++++ b/libfaad/syntax.c +@@ -344,6 +344,12 @@ static void decode_sce_lfe(NeAACDecStruct *hDecoder, + can become 2 when some form of Parametric Stereo coding is used + */ + ++ if (hDecoder->frame && hDecoder->element_id[hDecoder->fr_ch_ele] != id_syn_ele) { ++ /* element inconsistency */ ++ hInfo->error = 21; ++ return; ++ } ++ + /* save the syntax element id */ + hDecoder->element_id[hDecoder->fr_ch_ele] = id_syn_ele; + +@@ -395,6 +401,12 @@ static void decode_cpe(NeAACDecStruct *hDecoder, NeAACDecFrameInfo *hInfo, bitfi + return; + } + ++ if (hDecoder->frame && hDecoder->element_id[hDecoder->fr_ch_ele] != id_syn_ele) { ++ /* element inconsistency */ ++ hInfo->error = 21; ++ return; ++ } ++ + /* save the syntax element id */ + hDecoder->element_id[hDecoder->fr_ch_ele] = id_syn_ele; + +-- +2.20.1 + diff --git a/buildroot/package/faad2/0002-sbr_hfadj-sanitize-frequency-band-borders.patch b/buildroot/package/faad2/0002-sbr_hfadj-sanitize-frequency-band-borders.patch new file mode 100644 index 000000000..9c580f933 --- /dev/null +++ b/buildroot/package/faad2/0002-sbr_hfadj-sanitize-frequency-band-borders.patch @@ -0,0 +1,71 @@ +From 6b4a7cde30f2e2cb03e78ef476cc73179cfffda3 Mon Sep 17 00:00:00 2001 +From: Hugo Lefeuvre +Date: Thu, 11 Apr 2019 09:34:07 +0200 +Subject: [PATCH] sbr_hfadj: sanitize frequency band borders + +user passed f_table_lim contains frequency band borders. Frequency +bands are groups of consecutive QMF channels. This means that their +bounds, as provided by f_table_lim, should never exceed MAX_M (maximum +number of QMF channels). c.f. ISO/IEC 14496-3:2001 + +FAAD2 does not verify this, leading to security issues when +processing files defining f_table_lim with values > MAX_M. + +This patch sanitizes the values of f_table_lim so that they can be safely +used as index for Q_M_lim and G_lim arrays. + +Fixes #21 (CVE-2018-20194). + +Signed-off-by: Baruch Siach +--- +Upstream status: commit 6b4a7cde30f2e + + libfaad/sbr_hfadj.c | 18 ++++++++++++++++++ + 1 file changed, 18 insertions(+) + +diff --git a/libfaad/sbr_hfadj.c b/libfaad/sbr_hfadj.c +index 3f310b8190d7..dda1ce8e249b 100644 +--- a/libfaad/sbr_hfadj.c ++++ b/libfaad/sbr_hfadj.c +@@ -485,6 +485,12 @@ static void calculate_gain(sbr_info *sbr, sbr_hfadj_info *adj, uint8_t ch) + ml1 = sbr->f_table_lim[sbr->bs_limiter_bands][k]; + ml2 = sbr->f_table_lim[sbr->bs_limiter_bands][k+1]; + ++ if (ml1 > MAX_M) ++ ml1 = MAX_M; ++ ++ if (ml2 > MAX_M) ++ ml2 = MAX_M; ++ + + /* calculate the accumulated E_orig and E_curr over the limiter band */ + for (m = ml1; m < ml2; m++) +@@ -949,6 +955,12 @@ static void calculate_gain(sbr_info *sbr, sbr_hfadj_info *adj, uint8_t ch) + ml1 = sbr->f_table_lim[sbr->bs_limiter_bands][k]; + ml2 = sbr->f_table_lim[sbr->bs_limiter_bands][k+1]; + ++ if (ml1 > MAX_M) ++ ml1 = MAX_M; ++ ++ if (ml2 > MAX_M) ++ ml2 = MAX_M; ++ + + /* calculate the accumulated E_orig and E_curr over the limiter band */ + for (m = ml1; m < ml2; m++) +@@ -1193,6 +1205,12 @@ static void calculate_gain(sbr_info *sbr, sbr_hfadj_info *adj, uint8_t ch) + ml1 = sbr->f_table_lim[sbr->bs_limiter_bands][k]; + ml2 = sbr->f_table_lim[sbr->bs_limiter_bands][k+1]; + ++ if (ml1 > MAX_M) ++ ml1 = MAX_M; ++ ++ if (ml2 > MAX_M) ++ ml2 = MAX_M; ++ + + /* calculate the accumulated E_orig and E_curr over the limiter band */ + for (m = ml1; m < ml2; m++) +-- +2.20.1 + diff --git a/buildroot/package/faad2/0003-Fix-a-couple-buffer-overflows.patch b/buildroot/package/faad2/0003-Fix-a-couple-buffer-overflows.patch new file mode 100644 index 000000000..6ae760877 --- /dev/null +++ b/buildroot/package/faad2/0003-Fix-a-couple-buffer-overflows.patch @@ -0,0 +1,50 @@ +From 942c3e0aee748ea6fe97cb2c1aa5893225316174 Mon Sep 17 00:00:00 2001 +From: Fabian Greffrath +Date: Mon, 10 Jun 2019 13:58:40 +0200 +Subject: [PATCH] Fix a couple buffer overflows + +https://hackerone.com/reports/502816 +https://hackerone.com/reports/507858 + +https://github.com/videolan/vlc/blob/master/contrib/src/faad2/faad2-fix-overflows.patch + +Signed-off-by: Baruch Siach +--- +Upstream status: commit 942c3e0aee748ea6 + + libfaad/bits.c | 5 ++++- + libfaad/syntax.c | 2 ++ + 2 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/libfaad/bits.c b/libfaad/bits.c +index dc14d7a03952..4c0de24a5d9c 100644 +--- a/libfaad/bits.c ++++ b/libfaad/bits.c +@@ -167,7 +167,10 @@ void faad_resetbits(bitfile *ld, int bits) + int words = bits >> 5; + int remainder = bits & 0x1F; + +- ld->bytes_left = ld->buffer_size - words*4; ++ if (ld->buffer_size < words * 4) ++ ld->bytes_left = 0; ++ else ++ ld->bytes_left = ld->buffer_size - words*4; + + if (ld->bytes_left >= 4) + { +diff --git a/libfaad/syntax.c b/libfaad/syntax.c +index e7fb11381e46..c9925435dbd0 100644 +--- a/libfaad/syntax.c ++++ b/libfaad/syntax.c +@@ -2304,6 +2304,8 @@ static uint8_t excluded_channels(bitfile *ld, drc_info *drc) + while ((drc->additional_excluded_chns[n-1] = faad_get1bit(ld + DEBUGVAR(1,104,"excluded_channels(): additional_excluded_chns"))) == 1) + { ++ if (i >= MAX_CHANNELS - num_excl_chan - 7) ++ return n; + for (i = num_excl_chan; i < num_excl_chan+7; i++) + { + drc->exclude_mask[i] = faad_get1bit(ld +-- +2.20.1 + diff --git a/buildroot/package/faad2/0004-add-patch-to-prevent-crash-on-SCE-followed-by-CPE.patch b/buildroot/package/faad2/0004-add-patch-to-prevent-crash-on-SCE-followed-by-CPE.patch new file mode 100644 index 000000000..b759b037e --- /dev/null +++ b/buildroot/package/faad2/0004-add-patch-to-prevent-crash-on-SCE-followed-by-CPE.patch @@ -0,0 +1,54 @@ +From f1f8e002622196de3aa650163e5dc2888ebc7a63 Mon Sep 17 00:00:00 2001 +From: Fabian Greffrath +Date: Mon, 10 Jun 2019 13:59:49 +0200 +Subject: [PATCH] add patch to prevent crash on SCE followed by CPE + +hDecoder->element_alloced denotes whether or not we have allocated memory for +usage in terms of the specified channel element. Given that it previously only +had two states (1 meaning allocated, and 0 meaning not allocated), it would not +allocate enough memory for parsing a CPE it if is preceeded by a SCE (and +therefor crash). + +These changes fixes the issue by making sure that we allocate additional memory +if so is necessary, and the set of values for hDecoder->element_alloced[n] is +now: + + 0 = nothing allocated + 1 = allocated enough for SCE + 2 = allocated enough for CPE + +All branches that depend on hDecoder->element_alloced[n] prior to this patch +only checks if the value is, or is not, zero. The added state, 2, is therefor +correctly handled automatically. + +https://github.com/videolan/vlc/blob/master/contrib/src/faad2/faad2-fix-cpe-reconstruction.patch + +Signed-off-by: Baruch Siach +--- +Upstream status: commit f1f8e002622196d + libfaad/specrec.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libfaad/specrec.c b/libfaad/specrec.c +index 9797d6e79468..0e72207fc9c0 100644 +--- a/libfaad/specrec.c ++++ b/libfaad/specrec.c +@@ -1109,13 +1109,13 @@ uint8_t reconstruct_channel_pair(NeAACDecStruct *hDecoder, ic_stream *ics1, ic_s + #ifdef PROFILE + int64_t count = faad_get_ts(); + #endif +- if (hDecoder->element_alloced[hDecoder->fr_ch_ele] == 0) ++ if (hDecoder->element_alloced[hDecoder->fr_ch_ele] != 2) + { + retval = allocate_channel_pair(hDecoder, cpe->channel, (uint8_t)cpe->paired_channel); + if (retval > 0) + return retval; + +- hDecoder->element_alloced[hDecoder->fr_ch_ele] = 1; ++ hDecoder->element_alloced[hDecoder->fr_ch_ele] = 2; + } + + /* dequantisation and scaling */ +-- +2.20.1 + diff --git a/buildroot/package/faifa/0003-Makefile.in-fix-asbolute-symlink-of-libfaifa.so.patch b/buildroot/package/faifa/0003-Makefile.in-fix-asbolute-symlink-of-libfaifa.so.patch new file mode 100644 index 000000000..876d2a60f --- /dev/null +++ b/buildroot/package/faifa/0003-Makefile.in-fix-asbolute-symlink-of-libfaifa.so.patch @@ -0,0 +1,32 @@ +From d16abf61049947c451a6411a13fc15dda32feb47 Mon Sep 17 00:00:00 2001 +From: Florian Fainelli +Date: Sat, 6 Sep 2014 11:23:02 -0700 +Subject: [PATCH] Makefile.in: fix asbolute symlink of libfaifa.so + +Fixes #7 + +Signed-off-by: Florian Fainelli +[Upstream: da2e279fd736d05bcd0ee6e4609c44fece017ba8] +Signed-off-by: Thomas Petazzoni +--- + Makefile.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.in b/Makefile.in +index ba65bee..9dec7ee 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -98,9 +98,9 @@ install: installman strip + $(INSTALL) -m0755 hpav_cfg $(DESTDIR)$(sbindir) + $(INSTALL) -d $(DESTDIR)$(libdir) + $(INSTALL) -m0644 $(LIB_SONAME) $(DESTDIR)$(libdir) +- ln -sf $(DESTDIR)$(libdir)/$(LIB_SONAME) $(DESTDIR)$(libdir)/$(LIB_SHARED_SO) + $(INSTALL) -d $(DESTDIR)$(includedir)/faifa + cp $(HEADERS) $(DESTDIR)$(includedir)/faifa ++ cd $(DESTDIR)$(libdir) && ln -sf $(LIB_SONAME) $(LIB_SHARED_SO) + + strip: + $(STRIP) $(APP) +-- +2.23.0 + diff --git a/buildroot/package/faifa/Config.in b/buildroot/package/faifa/Config.in index 753abc67e..486f35d50 100644 --- a/buildroot/package/faifa/Config.in +++ b/buildroot/package/faifa/Config.in @@ -10,7 +10,7 @@ config BR2_PACKAGE_FAIFA Intellon-specific management and control frames as well as standard management frames. - https://dev.open-plc.org + https://github.com/ffainelli/faifa comment "faifa needs a toolchain w/ dynamic library, threads" depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/buildroot/package/fakeroot/0002-communicate-check-return-status-of-msgrcv.patch b/buildroot/package/fakeroot/0002-communicate-check-return-status-of-msgrcv.patch index 3bb4f9701..4e81b4912 100644 --- a/buildroot/package/fakeroot/0002-communicate-check-return-status-of-msgrcv.patch +++ b/buildroot/package/fakeroot/0002-communicate-check-return-status-of-msgrcv.patch @@ -1,7 +1,7 @@ From a853f21633693f9eefc4949660253a5328d2d2f3 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Sun, 13 Aug 2017 23:21:54 +0200 -Subject: [PATCH 1/1] communicate: check return status of msgrcv() +Subject: [PATCH] communicate: check return status of msgrcv() msgrcv can return with -1 to indicate an error condition. One such error is to have been interrupted by a signal. diff --git a/buildroot/package/fakeroot/0003-Select-TCP-when-lack-of-SYSV-IPC.patch b/buildroot/package/fakeroot/0003-Select-TCP-when-lack-of-SYSV-IPC.patch new file mode 100644 index 000000000..07b206b68 --- /dev/null +++ b/buildroot/package/fakeroot/0003-Select-TCP-when-lack-of-SYSV-IPC.patch @@ -0,0 +1,77 @@ +From 8e9a7a8c72a9fe407d296ec0ffeb56b2cd271959 Mon Sep 17 00:00:00 2001 +From: Matt Weber +Date: Mon, 16 Sep 2019 22:00:29 -0500 +Subject: [PATCH] Select TCP when lack of SYSV IPC + +Update to add a configure test to build and install the TCP IPC version +when detecting SYSV IPC MsgQ support isn't available. + +The issue was initially discovered on Windows Services for Linux +(WSL1.0). WSL does have some SysV IPC, but no message Q's, which is +required by fakeroot/faked by default. + +Fixes: +https://github.com/Microsoft/WSL/issues/2465 + +Additional bug reports: +https://bugs.busybox.net/show_bug.cgi?id=11366 + +Upstream: +https://salsa.debian.org/clint/fakeroot/merge_requests/2 + +Signed-off-by: Jean-Francois Doyon +Signed-off-by: Matthew Weber +--- + configure.ac | 36 ++++++++++++++++++++++++++++++++++++ + 1 file changed, 36 insertions(+) + +diff --git a/configure.ac b/configure.ac +index a9189e6..1650f77 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -25,6 +25,42 @@ AC_CACHE_CHECK([which IPC method to use], + [ac_cv_use_ipc], + [ac_cv_use_ipc=sysv]) + ++if test $ac_cv_use_ipc = "sysv"; then ++ AC_MSG_CHECKING([whether SysV IPC message queues are actually working on the host]) ++ ++ AC_LANG_PUSH(C) ++ AC_TRY_RUN([ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++int main() { ++ ++ srandom(time(NULL)+getpid()*33151); ++ key_t msg_key = random(); ++ int msg_get = msgget(msg_key, IPC_CREAT|0600); ++ ++ if (msg_get==-1) { ++ return 1; ++ } else { ++ msgctl(msg_get, IPC_RMID, NULL); ++ return 0; ++ } ++ ++}], [ac_cv_use_ipc=sysv], [ac_cv_use_ipc=tcp]) ++ ++ if test $ac_cv_use_ipc = "tcp"; then ++ AC_MSG_RESULT([No, using TCP]) ++ else ++ AC_MSG_RESULT([Yes]) ++ fi ++ ++ AC_LANG_POP(C) ++fi ++ + AC_ARG_WITH([dbformat], + AS_HELP_STRING([--with-dbformat@<:@=DBFORMAT@:>@], + [database format to use: either inode (default) or path]), +-- +2.17.1 + diff --git a/buildroot/package/fakeroot/fakeroot.mk b/buildroot/package/fakeroot/fakeroot.mk index 4aa27a1b0..1be99071b 100644 --- a/buildroot/package/fakeroot/fakeroot.mk +++ b/buildroot/package/fakeroot/fakeroot.mk @@ -15,8 +15,14 @@ HOST_FAKEROOT_DEPENDENCIES = host-acl HOST_FAKEROOT_CONF_ENV = \ ac_cv_header_sys_capability_h=no \ ac_cv_func_capset=no - +# 0003-Select-TCP-when-lack-of-SYSV-IPC.patch touches configure.ac +HOST_FAKEROOT_AUTORECONF = YES FAKEROOT_LICENSE = GPL-3.0+ FAKEROOT_LICENSE_FILES = COPYING +define HOST_FAKEROOT_BUILD_AUX + mkdir -p $(@D)/build-aux +endef +HOST_FAKEROOT_POST_PATCH_HOOKS += HOST_FAKEROOT_BUILD_AUX + $(eval $(host-autotools-package)) diff --git a/buildroot/package/fastd/Config.in b/buildroot/package/fastd/Config.in index 47c76b5ad..5ef6de8d7 100644 --- a/buildroot/package/fastd/Config.in +++ b/buildroot/package/fastd/Config.in @@ -9,7 +9,7 @@ config BR2_PACKAGE_FASTD help Fast and Secure Tunneling Daemon - https://projects.universe-factory.net/projects/fastd/wiki + https://github.com/NeoRaider/fastd/wiki if BR2_PACKAGE_FASTD diff --git a/buildroot/package/ffmpeg/ffmpeg.hash b/buildroot/package/ffmpeg/ffmpeg.hash index e00c4ec56..e945130d8 100644 --- a/buildroot/package/ffmpeg/ffmpeg.hash +++ b/buildroot/package/ffmpeg/ffmpeg.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 741cbd6394eaed370774ca4cc089eaafbc54d0824b9aa360d4b3b0cbcbc4a92c ffmpeg-3.4.5.tar.xz +sha256 3572279cb139d9e39dcfbc23edf438ff5311ec3fc5d0dcb3558e49591e5cb83e ffmpeg-3.4.6.tar.xz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING.GPLv2 sha256 b634ab5640e258563c536e658cad87080553df6f34f62269a21d554844e58bfe COPYING.LGPLv2.1 sha256 73d99bc83313fff665b426d6672b4e0479102bc402fe22314ac9ce94a38aa5ff LICENSE.md diff --git a/buildroot/package/ffmpeg/ffmpeg.mk b/buildroot/package/ffmpeg/ffmpeg.mk index 1e1004c37..d26555a50 100644 --- a/buildroot/package/ffmpeg/ffmpeg.mk +++ b/buildroot/package/ffmpeg/ffmpeg.mk @@ -4,7 +4,7 @@ # ################################################################################ -FFMPEG_VERSION = 3.4.5 +FFMPEG_VERSION = 3.4.6 FFMPEG_SOURCE = ffmpeg-$(FFMPEG_VERSION).tar.xz FFMPEG_SITE = http://ffmpeg.org/releases FFMPEG_INSTALL_STAGING = YES diff --git a/buildroot/package/file/0001-Detect-multiplication-overflow-when-computing-sector.patch b/buildroot/package/file/0001-Detect-multiplication-overflow-when-computing-sector.patch new file mode 100644 index 000000000..c7ef4f2e0 --- /dev/null +++ b/buildroot/package/file/0001-Detect-multiplication-overflow-when-computing-sector.patch @@ -0,0 +1,68 @@ +From 06de62c022138f63de9bcd04074491945eaa8662 Mon Sep 17 00:00:00 2001 +From: Christos Zoulas +Date: Fri, 23 Aug 2019 14:29:14 +0000 +Subject: [PATCH] Detect multiplication overflow when computing sector position + (found by oss-fuzz) + +Fixes CVE-2019-18218 + +Signed-off-by: Peter Korsgaard +--- + src/cdf.c | 20 +++++++++++++++++--- + 1 file changed, 17 insertions(+), 3 deletions(-) + +diff --git a/src/cdf.c b/src/cdf.c +index 556a3ff8..9d639674 100644 +--- a/src/cdf.c ++++ b/src/cdf.c +@@ -35,7 +35,7 @@ + #include "file.h" + + #ifndef lint +-FILE_RCSID("@(#)$File: cdf.c,v 1.114 2019/02/20 02:35:27 christos Exp $") ++FILE_RCSID("@(#)$File: cdf.c,v 1.115 2019/08/23 14:29:14 christos Exp $") + #endif + + #include +@@ -53,6 +53,10 @@ FILE_RCSID("@(#)$File: cdf.c,v 1.114 2019/02/20 02:35:27 christos Exp $") + #define EFTYPE EINVAL + #endif + ++#ifndef SIZE_T_MAX ++#define SIZE_T_MAX CAST(size_t, ~0ULL) ++#endif ++ + #include "cdf.h" + + #ifdef CDF_DEBUG +@@ -405,7 +409,12 @@ cdf_read_sector(const cdf_info_t *info, void *buf, size_t offs, size_t len, + const cdf_header_t *h, cdf_secid_t id) + { + size_t ss = CDF_SEC_SIZE(h); +- size_t pos = CDF_SEC_POS(h, id); ++ size_t pos; ++ ++ if (SIZE_T_MAX / ss < CAST(size_t, id)) ++ return -1; ++ ++ pos = CDF_SEC_POS(h, id); + assert(ss == len); + return cdf_read(info, CAST(off_t, pos), RCAST(char *, buf) + offs, len); + } +@@ -415,7 +424,12 @@ cdf_read_short_sector(const cdf_stream_t *sst, void *buf, size_t offs, + size_t len, const cdf_header_t *h, cdf_secid_t id) + { + size_t ss = CDF_SHORT_SEC_SIZE(h); +- size_t pos = CDF_SHORT_SEC_POS(h, id); ++ size_t pos; ++ ++ if (SIZE_T_MAX / ss < CAST(size_t, id)) ++ return -1; ++ ++ pos = CDF_SHORT_SEC_POS(h, id); + assert(ss == len); + if (pos + len > CDF_SEC_SIZE(h) * sst->sst_len) { + DPRINTF(("Out of bounds read %" SIZE_T_FORMAT "u > %" +-- +2.20.1 + diff --git a/buildroot/package/file/0002-Limit-the-number-of-elements-in-a-vector-found-by-os.patch b/buildroot/package/file/0002-Limit-the-number-of-elements-in-a-vector-found-by-os.patch new file mode 100644 index 000000000..6f16894f9 --- /dev/null +++ b/buildroot/package/file/0002-Limit-the-number-of-elements-in-a-vector-found-by-os.patch @@ -0,0 +1,62 @@ +From 46a8443f76cec4b41ec736eca396984c74664f84 Mon Sep 17 00:00:00 2001 +From: Christos Zoulas +Date: Mon, 26 Aug 2019 14:31:39 +0000 +Subject: [PATCH] Limit the number of elements in a vector (found by oss-fuzz) + +Fixes CVE-2019-18218 + +Signed-off-by: Peter Korsgaard +--- + src/cdf.c | 9 ++++----- + src/cdf.h | 1 + + 2 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/src/cdf.c b/src/cdf.c +index 9d639674..bb81d637 100644 +--- a/src/cdf.c ++++ b/src/cdf.c +@@ -35,7 +35,7 @@ + #include "file.h" + + #ifndef lint +-FILE_RCSID("@(#)$File: cdf.c,v 1.115 2019/08/23 14:29:14 christos Exp $") ++FILE_RCSID("@(#)$File: cdf.c,v 1.116 2019/08/26 14:31:39 christos Exp $") + #endif + + #include +@@ -1027,8 +1027,9 @@ cdf_read_property_info(const cdf_stream_t *sst, const cdf_header_t *h, + goto out; + } + nelements = CDF_GETUINT32(q, 1); +- if (nelements == 0) { +- DPRINTF(("CDF_VECTOR with nelements == 0\n")); ++ if (nelements > CDF_ELEMENT_LIMIT || nelements == 0) { ++ DPRINTF(("CDF_VECTOR with nelements == %" ++ SIZE_T_FORMAT "u\n", nelements)); + goto out; + } + slen = 2; +@@ -1070,8 +1071,6 @@ cdf_read_property_info(const cdf_stream_t *sst, const cdf_header_t *h, + goto out; + inp += nelem; + } +- DPRINTF(("nelements = %" SIZE_T_FORMAT "u\n", +- nelements)); + for (j = 0; j < nelements && i < sh.sh_properties; + j++, i++) + { +diff --git a/src/cdf.h b/src/cdf.h +index 2f7e554b..05056668 100644 +--- a/src/cdf.h ++++ b/src/cdf.h +@@ -48,6 +48,7 @@ + typedef int32_t cdf_secid_t; + + #define CDF_LOOP_LIMIT 10000 ++#define CDF_ELEMENT_LIMIT 100000 + + #define CDF_SECID_NULL 0 + #define CDF_SECID_FREE -1 +-- +2.20.1 + diff --git a/buildroot/package/file/file.hash b/buildroot/package/file/file.hash index 7948e856e..241820d0f 100644 --- a/buildroot/package/file/file.hash +++ b/buildroot/package/file/file.hash @@ -1,7 +1,7 @@ # Locally calculated after verifying signature -# ftp://ftp.astron.com/pub/file/file-5.36.tar.gz.asc +# ftp://ftp.astron.com/pub/file/file-5.37.tar.gz.asc # using key BE04995BA8F90ED0C0C176C471112AB16CB33B3A -sha256 fb608290c0fd2405a8f63e5717abf6d03e22e183fb21884413d1edd918184379 file-5.36.tar.gz +sha256 e9c13967f7dd339a3c241b7710ba093560b9a33013491318e88e6b8b57bae07f file-5.37.tar.gz sha256 0bfa856a9930bddadbef95d1be1cf4e163c0be618e76ea3275caaf255283e274 COPYING sha256 4ccb60d623884ef637af4a5bc16b2cb350163e2135e967655837336019a64462 src/mygetopt.h sha256 7ac061e1a1c840c4dfa0573aec6f3497676c9295b5ec4190d3576646eb1646bf src/vasprintf.c diff --git a/buildroot/package/file/file.mk b/buildroot/package/file/file.mk index 1a835015a..a13acbc47 100644 --- a/buildroot/package/file/file.mk +++ b/buildroot/package/file/file.mk @@ -4,7 +4,7 @@ # ################################################################################ -FILE_VERSION = 5.36 +FILE_VERSION = 5.37 FILE_SITE = ftp://ftp.astron.com/pub/file FILE_DEPENDENCIES = host-file zlib HOST_FILE_DEPENDENCIES = host-zlib diff --git a/buildroot/package/flashbench/Config.in b/buildroot/package/flashbench/Config.in index 7be1ea9bc..a50f482ac 100644 --- a/buildroot/package/flashbench/Config.in +++ b/buildroot/package/flashbench/Config.in @@ -7,4 +7,4 @@ config BR2_PACKAGE_FLASHBENCH SD cards and other media for the Linaro flash memory survey. - https://wiki.linaro.org/WorkingGroups/KernelConsolidation/Projects/FlashCardSurvey + https://git.linaro.org/people/arnd.bergmann/flashbench.git diff --git a/buildroot/package/fmt/Config.in b/buildroot/package/fmt/Config.in index 69a6fb80a..8643c9b5a 100644 --- a/buildroot/package/fmt/Config.in +++ b/buildroot/package/fmt/Config.in @@ -7,5 +7,7 @@ config BR2_PACKAGE_FMT used as a safe alternative to printf or as a fast alternative to IOStreams. + https://fmt.dev + comment "fmt needs a toolchain w/ C++, wchar" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR diff --git a/buildroot/package/freerdp/freerdp.mk b/buildroot/package/freerdp/freerdp.mk index 0f32ff471..293b6b5c0 100644 --- a/buildroot/package/freerdp/freerdp.mk +++ b/buildroot/package/freerdp/freerdp.mk @@ -50,10 +50,10 @@ FREERDP_CONF_OPTS += -DWITH_ALSA=OFF endif ifeq ($(BR2_PACKAGE_PULSEAUDIO),y) -FREERDP_CONF_OPTS += -DWITH_PULSEAUDIO=ON +FREERDP_CONF_OPTS += -DWITH_PULSE=ON FREERDP_DEPENDENCIES += pulseaudio else -FREERDP_CONF_OPTS += -DWITH_PULSEAUDIO=OFF +FREERDP_CONF_OPTS += -DWITH_PULSE=OFF endif # For the systemd journal diff --git a/buildroot/package/freescale-imx/imx-uuc/imx-uuc.mk b/buildroot/package/freescale-imx/imx-uuc/imx-uuc.mk index 52d2b7c7a..e94648b83 100644 --- a/buildroot/package/freescale-imx/imx-uuc/imx-uuc.mk +++ b/buildroot/package/freescale-imx/imx-uuc/imx-uuc.mk @@ -14,7 +14,7 @@ IMX_UUC_LICENSE_FILES = COPYING IMX_UUC_DEPENDENCIES = host-dosfstools define IMX_UUC_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) CC=$(TARGET_CC) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) endef define IMX_UUC_INSTALL_TARGET_CMDS diff --git a/buildroot/package/freeswitch/freeswitch.hash b/buildroot/package/freeswitch/freeswitch.hash index 6f90c2156..1c5de7bcc 100644 --- a/buildroot/package/freeswitch/freeswitch.hash +++ b/buildroot/package/freeswitch/freeswitch.hash @@ -1,11 +1,11 @@ -# From http://files.freeswitch.org/freeswitch-releases/freeswitch-1.8.5.tar.xz.md5 -md5 e3d750ed0bbf13ce6fe228af9af07bcd freeswitch-1.8.5.tar.xz -# From http://files.freeswitch.org/freeswitch-releases/freeswitch-1.8.5.tar.xz.sha1 -sha1 e9f95b42ed9dd41437a65bddbb5c1f647436e426 freeswitch-1.8.5.tar.xz -# From http://files.freeswitch.org/freeswitch-releases/freeswitch-1.8.5.tar.xz.sha256 -sha256 503a551be5d6df06162ea9d98a952b6fb524852ce2352fe3ca3a36a76995b046 freeswitch-1.8.5.tar.xz +# From http://files.freeswitch.org/freeswitch-releases/freeswitch-1.8.6.tar.xz.md5 +md5 cadec07057786cfb0bb805edc279d752 freeswitch-1.8.6.tar.xz +# From http://files.freeswitch.org/freeswitch-releases/freeswitch-1.8.6.tar.xz.sha1 +sha1 c6eb7de942a61604774ca08ac8070244b7c3167a freeswitch-1.8.6.tar.xz +# From http://files.freeswitch.org/freeswitch-releases/freeswitch-1.8.6.tar.xz.sha256 +sha256 b87f47e57d13de2b901bd1e4eb85491178e59a159a2831d7430abe7947f0d3a4 freeswitch-1.8.6.tar.xz # Locally computed -sha256 10299420c1e8602c0daf5a59d022621cd72a9148d1f0f33501edb3db3445c7fe COPYING +sha256 75c933202f40939cdc3827fce20a1efdaa38291e2b5a65d234eb16e2cffda66a COPYING sha256 e8e26b16da14aa3e6ed5c22c705fdc1f45d6225fca461ea9f7314bcdfdc414c4 libs/apr/LICENSE sha256 1eefb2ea1db0af7729a9d8a27d7c65d8a37ab185393f935b029aac6828ce315a libs/apr-util/LICENSE sha256 8267348d5af1262c11d1a08de2f5afc77457755f1ac658627dd9acf71011d615 libs/libvpx/LICENSE diff --git a/buildroot/package/freeswitch/freeswitch.mk b/buildroot/package/freeswitch/freeswitch.mk index 0b7544d09..8c0c7fb11 100644 --- a/buildroot/package/freeswitch/freeswitch.mk +++ b/buildroot/package/freeswitch/freeswitch.mk @@ -4,7 +4,7 @@ # ################################################################################ -FREESWITCH_VERSION = 1.8.5 +FREESWITCH_VERSION = 1.8.6 FREESWITCH_SOURCE = freeswitch-$(FREESWITCH_VERSION).tar.xz FREESWITCH_SITE = http://files.freeswitch.org/freeswitch-releases # External modules need headers/libs from staging diff --git a/buildroot/package/fswebcam/Config.in b/buildroot/package/fswebcam/Config.in index d268454aa..fbd077bc3 100644 --- a/buildroot/package/fswebcam/Config.in +++ b/buildroot/package/fswebcam/Config.in @@ -15,7 +15,7 @@ config BR2_PACKAGE_FSWEBCAM stdio where it can be piped to something like ncftpput or scp. - http://www.firestorm.cx/fswebcam/ + https://www.sanslogic.co.uk/fswebcam/ comment "fswebcam needs a toolchain w/ dynamic library" depends on BR2_USE_MMU diff --git a/buildroot/package/fwts/Config.in b/buildroot/package/fwts/Config.in index 94ac60636..269f065fd 100644 --- a/buildroot/package/fwts/Config.in +++ b/buildroot/package/fwts/Config.in @@ -3,7 +3,7 @@ config BR2_PACKAGE_FWTS depends on BR2_i386 || BR2_x86_64 || BR2_aarch64 depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS # libbsd depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c - depends on BR2_USE_MMU # libglib2, libbsd + depends on BR2_USE_MMU # libglib2 depends on BR2_USE_WCHAR # libglib2, libbsd depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2, libbsd depends on BR2_TOOLCHAIN_USES_GLIBC # execinfo.h diff --git a/buildroot/package/gcc/7.4.0/1002-xtensa-backport-fix-for-PR-target-90922.patch b/buildroot/package/gcc/7.4.0/1002-xtensa-backport-fix-for-PR-target-90922.patch new file mode 100644 index 000000000..38e0309e5 --- /dev/null +++ b/buildroot/package/gcc/7.4.0/1002-xtensa-backport-fix-for-PR-target-90922.patch @@ -0,0 +1,43 @@ +From a592242578e573778241cae6d3928c064dcdfda4 Mon Sep 17 00:00:00 2001 +From: jcmvbkbc +Date: Tue, 18 Jun 2019 22:19:12 +0000 +Subject: [PATCH] xtensa: fix for PR target/90922 + +Stack pointer adjustment code in prologue missed a case of no +callee-saved registers and a stack frame size bigger than 128 bytes. +Handle that case. + +This fixes the following gcc tests with call0 ABI: + gcc.c-torture/execute/stdarg-2.c + gcc.dg/torture/pr55882.c + gcc.dg/torture/pr57569.c + +gcc/ +2019-06-18 Max Filippov + + * config/xtensa/xtensa.c (xtensa_expand_prologue): Add stack + pointer adjustment for the case of no callee-saved registers and + stack frame bigger than 128 bytes. + +Signed-off-by: Max Filippov +--- + gcc/config/xtensa/xtensa.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index 19bd616d67f6..ee5612441e25 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -2802,7 +2802,8 @@ xtensa_expand_prologue (void) + gen_rtx_SET (mem, reg)); + } + } +- if (total_size > 1024) ++ if (total_size > 1024 ++ || (!callee_save_size && total_size > 128)) + { + rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG); + emit_move_insn (tmp_reg, GEN_INT (total_size - +-- +2.11.0 + diff --git a/buildroot/package/gcc/7.4.0/1003-xtensa-fix-PR-target-91880.patch b/buildroot/package/gcc/7.4.0/1003-xtensa-fix-PR-target-91880.patch new file mode 100644 index 000000000..e75588bf4 --- /dev/null +++ b/buildroot/package/gcc/7.4.0/1003-xtensa-fix-PR-target-91880.patch @@ -0,0 +1,49 @@ +From 7c11710230921246156aecc20eb4b6ccaeaaa473 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Tue, 24 Sep 2019 04:15:17 -0700 +Subject: [PATCH] xtensa: fix PR target/91880 + +Xtensa hwloop_optimize segfaults when zero overhead loop is about to be +inserted as the first instruction of the function. +Insert zero overhead loop instruction into new basic block before the +loop when basic block that precedes the loop is empty. + +2019-09-26 Max Filippov +gcc/ + * config/xtensa/xtensa.c (hwloop_optimize): Insert zero overhead + loop instruction into new basic block before the loop when basic + block that precedes the loop is empty. + +Signed-off-by: Max Filippov +--- +Backported from: r276166 + + gcc/config/xtensa/xtensa.c | 5 ++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index ee5612441e25..2527468d57db 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -4174,7 +4174,9 @@ hwloop_optimize (hwloop_info loop) + + seq = get_insns (); + +- if (!single_succ_p (entry_bb) || vec_safe_length (loop->incoming) > 1) ++ entry_after = BB_END (entry_bb); ++ if (!single_succ_p (entry_bb) || vec_safe_length (loop->incoming) > 1 ++ || !entry_after) + { + basic_block new_bb; + edge e; +@@ -4195,7 +4197,6 @@ hwloop_optimize (hwloop_info loop) + } + else + { +- entry_after = BB_END (entry_bb); + while (DEBUG_INSN_P (entry_after) + || (NOTE_P (entry_after) + && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK +-- +2.11.0 + diff --git a/buildroot/package/gcc/8.3.0/0001-xtensa-backport-fix-for-PR-target-90922.patch b/buildroot/package/gcc/8.3.0/0001-xtensa-backport-fix-for-PR-target-90922.patch new file mode 100644 index 000000000..c961ce5d2 --- /dev/null +++ b/buildroot/package/gcc/8.3.0/0001-xtensa-backport-fix-for-PR-target-90922.patch @@ -0,0 +1,43 @@ +From a592242578e573778241cae6d3928c064dcdfda4 Mon Sep 17 00:00:00 2001 +From: jcmvbkbc +Date: Tue, 18 Jun 2019 22:19:12 +0000 +Subject: [PATCH] xtensa: fix for PR target/90922 + +Stack pointer adjustment code in prologue missed a case of no +callee-saved registers and a stack frame size bigger than 128 bytes. +Handle that case. + +This fixes the following gcc tests with call0 ABI: + gcc.c-torture/execute/stdarg-2.c + gcc.dg/torture/pr55882.c + gcc.dg/torture/pr57569.c + +gcc/ +2019-06-18 Max Filippov + + * config/xtensa/xtensa.c (xtensa_expand_prologue): Add stack + pointer adjustment for the case of no callee-saved registers and + stack frame bigger than 128 bytes. + +Signed-off-by: Max Filippov +--- + gcc/config/xtensa/xtensa.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index 19bd616d67f6..ee5612441e25 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -2862,7 +2862,8 @@ xtensa_expand_prologue (void) + gen_rtx_SET (mem, reg)); + } + } +- if (total_size > 1024) ++ if (total_size > 1024 ++ || (!callee_save_size && total_size > 128)) + { + rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG); + emit_move_insn (tmp_reg, GEN_INT (total_size - +-- +2.11.0 + diff --git a/buildroot/package/gcc/8.3.0/0002-xtensa-fix-PR-target-91880.patch b/buildroot/package/gcc/8.3.0/0002-xtensa-fix-PR-target-91880.patch new file mode 100644 index 000000000..e65352501 --- /dev/null +++ b/buildroot/package/gcc/8.3.0/0002-xtensa-fix-PR-target-91880.patch @@ -0,0 +1,49 @@ +From 7c11710230921246156aecc20eb4b6ccaeaaa473 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Tue, 24 Sep 2019 04:15:17 -0700 +Subject: [PATCH] xtensa: fix PR target/91880 + +Xtensa hwloop_optimize segfaults when zero overhead loop is about to be +inserted as the first instruction of the function. +Insert zero overhead loop instruction into new basic block before the +loop when basic block that precedes the loop is empty. + +2019-09-26 Max Filippov +gcc/ + * config/xtensa/xtensa.c (hwloop_optimize): Insert zero overhead + loop instruction into new basic block before the loop when basic + block that precedes the loop is empty. + +Signed-off-by: Max Filippov +--- +Backported from: r276166 + + gcc/config/xtensa/xtensa.c | 5 ++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index ee5612441e25..2527468d57db 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -4232,7 +4232,9 @@ hwloop_optimize (hwloop_info loop) + + seq = get_insns (); + +- if (!single_succ_p (entry_bb) || vec_safe_length (loop->incoming) > 1) ++ entry_after = BB_END (entry_bb); ++ if (!single_succ_p (entry_bb) || vec_safe_length (loop->incoming) > 1 ++ || !entry_after) + { + basic_block new_bb; + edge e; +@@ -4253,7 +4255,6 @@ hwloop_optimize (hwloop_info loop) + } + else + { +- entry_after = BB_END (entry_bb); + while (DEBUG_INSN_P (entry_after) + || (NOTE_P (entry_after) + && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK)) +-- +2.11.0 + diff --git a/buildroot/package/gd/0001-bmp-check-return-value-in-gdImageBmpPtr.patch b/buildroot/package/gd/0001-bmp-check-return-value-in-gdImageBmpPtr.patch new file mode 100644 index 000000000..f3c9ea481 --- /dev/null +++ b/buildroot/package/gd/0001-bmp-check-return-value-in-gdImageBmpPtr.patch @@ -0,0 +1,80 @@ +From ac16bdf2d41724b5a65255d4c28fb0ec46bc42f5 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger +Date: Sat, 14 Jul 2018 13:54:08 -0400 +Subject: [PATCH] bmp: check return value in gdImageBmpPtr + +Closes #447. + +CVE-2018-1000222 + +Signed-off-by: Peter Korsgaard +--- + src/gd_bmp.c | 17 ++++++++++++++--- + 1 file changed, 14 insertions(+), 3 deletions(-) + +diff --git a/src/gd_bmp.c b/src/gd_bmp.c +index bde0b9d..78f40d9 100644 +--- a/src/gd_bmp.c ++++ b/src/gd_bmp.c +@@ -47,6 +47,8 @@ static int bmp_read_4bit(gdImagePtr im, gdIOCtxPtr infile, bmp_info_t *info, bmp + static int bmp_read_8bit(gdImagePtr im, gdIOCtxPtr infile, bmp_info_t *info, bmp_hdr_t *header); + static int bmp_read_rle(gdImagePtr im, gdIOCtxPtr infile, bmp_info_t *info); + ++static int _gdImageBmpCtx(gdImagePtr im, gdIOCtxPtr out, int compression); ++ + #define BMP_DEBUG(s) + + static int gdBMPPutWord(gdIOCtx *out, int w) +@@ -87,8 +89,10 @@ BGD_DECLARE(void *) gdImageBmpPtr(gdImagePtr im, int *size, int compression) + void *rv; + gdIOCtx *out = gdNewDynamicCtx(2048, NULL); + if (out == NULL) return NULL; +- gdImageBmpCtx(im, out, compression); +- rv = gdDPExtractData(out, size); ++ if (!_gdImageBmpCtx(im, out, compression)) ++ rv = gdDPExtractData(out, size); ++ else ++ rv = NULL; + out->gd_free(out); + return rv; + } +@@ -141,6 +145,11 @@ BGD_DECLARE(void) gdImageBmp(gdImagePtr im, FILE *outFile, int compression) + compression - whether to apply RLE or not. + */ + BGD_DECLARE(void) gdImageBmpCtx(gdImagePtr im, gdIOCtxPtr out, int compression) ++{ ++ _gdImageBmpCtx(im, out, compression); ++} ++ ++static int _gdImageBmpCtx(gdImagePtr im, gdIOCtxPtr out, int compression) + { + int bitmap_size = 0, info_size, total_size, padding; + int i, row, xpos, pixel; +@@ -148,6 +157,7 @@ BGD_DECLARE(void) gdImageBmpCtx(gdImagePtr im, gdIOCtxPtr out, int compression) + unsigned char *uncompressed_row = NULL, *uncompressed_row_start = NULL; + FILE *tmpfile_for_compression = NULL; + gdIOCtxPtr out_original = NULL; ++ int ret = 1; + + /* No compression if its true colour or we don't support seek */ + if (im->trueColor) { +@@ -325,6 +335,7 @@ BGD_DECLARE(void) gdImageBmpCtx(gdImagePtr im, gdIOCtxPtr out, int compression) + out_original = NULL; + } + ++ ret = 0; + cleanup: + if (tmpfile_for_compression) { + #ifdef _WIN32 +@@ -338,7 +349,7 @@ cleanup: + if (out_original) { + out_original->gd_free(out_original); + } +- return; ++ return ret; + } + + static int compress_row(unsigned char *row, int length) +-- +2.20.1 + diff --git a/buildroot/package/gd/0002-Fix-420-Potential-infinite-loop-in-gdImageCreateFrom.patch b/buildroot/package/gd/0002-Fix-420-Potential-infinite-loop-in-gdImageCreateFrom.patch new file mode 100644 index 000000000..8d77f0ee1 --- /dev/null +++ b/buildroot/package/gd/0002-Fix-420-Potential-infinite-loop-in-gdImageCreateFrom.patch @@ -0,0 +1,61 @@ +From a11f47475e6443b7f32d21f2271f28f417e2ac04 Mon Sep 17 00:00:00 2001 +From: "Christoph M. Becker" +Date: Wed, 29 Nov 2017 19:37:38 +0100 +Subject: [PATCH] Fix #420: Potential infinite loop in gdImageCreateFromGifCtx + +Due to a signedness confusion in `GetCode_` a corrupt GIF file can +trigger an infinite loop. Furthermore we make sure that a GIF without +any palette entries is treated as invalid *after* open palette entries +have been removed. + +CVE-2018-5711 + +See also https://bugs.php.net/bug.php?id=75571. + +[Peter: drop tests] +Signed-off-by: Peter Korsgaard +--- + src/gd_gif_in.c | 12 ++++++------ + 1 files changed, 38 insertions(+), 6 deletions(-) + +diff --git a/src/gd_gif_in.c b/src/gd_gif_in.c +index daf26e7..0a8bd71 100644 +--- a/src/gd_gif_in.c ++++ b/src/gd_gif_in.c +@@ -335,11 +335,6 @@ terminated: + return 0; + } + +- if(!im->colorsTotal) { +- gdImageDestroy(im); +- return 0; +- } +- + /* Check for open colors at the end, so + * we can reduce colorsTotal and ultimately + * BitsPerPixel */ +@@ -351,6 +346,11 @@ terminated: + } + } + ++ if(!im->colorsTotal) { ++ gdImageDestroy(im); ++ return 0; ++ } ++ + return im; + } + +@@ -447,7 +447,7 @@ static int + GetCode_(gdIOCtx *fd, CODE_STATIC_DATA *scd, int code_size, int flag, int *ZeroDataBlockP) + { + int i, j, ret; +- unsigned char count; ++ int count; + + if(flag) { + scd->curbit = 0; + +-- +2.20.1 + diff --git a/buildroot/package/gd/0003-Fix-501-Uninitialized-read-in-gdImageCreateFromXbm-C.patch b/buildroot/package/gd/0003-Fix-501-Uninitialized-read-in-gdImageCreateFromXbm-C.patch new file mode 100644 index 000000000..57df1a2fb --- /dev/null +++ b/buildroot/package/gd/0003-Fix-501-Uninitialized-read-in-gdImageCreateFromXbm-C.patch @@ -0,0 +1,41 @@ +From e13a342c079aeb73e31dfa19eaca119761bac3f3 Mon Sep 17 00:00:00 2001 +From: Jonas Meurer +Date: Tue, 11 Jun 2019 12:16:46 +0200 +Subject: [PATCH] Fix #501: Uninitialized read in gdImageCreateFromXbm + (CVE-2019-11038) + +Bug-Debian-Security: https://security-tracker.debian.org/tracker/CVE-2019-11038 +Bug-Debian: https://bugs.debian.org/929821 +Bug: https://github.com/libgd/libgd/issues/501 + +We have to ensure that `sscanf()` does indeed read a hex value here, +and bail out otherwise. + +Original patch by Christoph M. Becker for PHP libgd ext. +https://git.php.net/?p=php-src.git;a=commit;h=ed6dee9a198c904ad5e03113e58a2d2c200f5184 + +Signed-off-by: Peter Korsgaard +--- + src/gd_xbm.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/src/gd_xbm.c b/src/gd_xbm.c +index 4ca41ac..cf0545e 100644 +--- a/src/gd_xbm.c ++++ b/src/gd_xbm.c +@@ -169,7 +169,11 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromXbm(FILE * fd) + } + h[3] = ch; + } +- sscanf(h, "%x", &b); ++ if (sscanf(h, "%x", &b) != 1) { ++ gd_error("invalid XBM"); ++ gdImageDestroy(im); ++ return 0; ++ } + for (bit = 1; bit <= max_bit; bit = bit << 1) { + gdImageSetPixel(im, x++, y, (b & bit) ? 1 : 0); + if (x == im->sx) { +-- +2.20.1 + diff --git a/buildroot/package/gd/0004-Fix-492-Potential-double-free-in-gdImage-Ptr.patch b/buildroot/package/gd/0004-Fix-492-Potential-double-free-in-gdImage-Ptr.patch new file mode 100644 index 000000000..e51428a64 --- /dev/null +++ b/buildroot/package/gd/0004-Fix-492-Potential-double-free-in-gdImage-Ptr.patch @@ -0,0 +1,219 @@ +From 553702980ae89c83f2d6e254d62cf82e204956d0 Mon Sep 17 00:00:00 2001 +From: "Christoph M. Becker" +Date: Thu, 17 Jan 2019 11:54:55 +0100 +Subject: [PATCH] Fix #492: Potential double-free in gdImage*Ptr() + +Whenever `gdImage*Ptr()` calls `gdImage*Ctx()` and the latter fails, we +must not call `gdDPExtractData()`; otherwise a double-free would +happen. Since `gdImage*Ctx()` are void functions, and we can't change +that for BC reasons, we're introducing static helpers which are used +internally. + +We're adding a regression test for `gdImageJpegPtr()`, but not for +`gdImageGifPtr()` and `gdImageWbmpPtr()` since we don't know how to +trigger failure of the respective `gdImage*Ctx()` calls. + +This potential security issue has been reported by Solmaz Salimi (aka. +Rooney). + +CVE-2019-6978 + +[Peter: drop tests] +Signed-off-by: Peter Korsgaard +--- + src/gd_gif_out.c | 18 +++++++++++++++--- + src/gd_jpeg.c | 20 ++++++++++++++++---- + src/gd_wbmp.c | 21 ++++++++++++++++++--- + 3 files changed, 84 insertions(+), 11 deletions(-) + +diff --git a/src/gd_gif_out.c b/src/gd_gif_out.c +index 298a581..d5a9534 100644 +--- a/src/gd_gif_out.c ++++ b/src/gd_gif_out.c +@@ -99,6 +99,7 @@ static void char_init(GifCtx *ctx); + static void char_out(int c, GifCtx *ctx); + static void flush_char(GifCtx *ctx); + ++static int _gdImageGifCtx(gdImagePtr im, gdIOCtxPtr out); + + + +@@ -131,8 +132,11 @@ BGD_DECLARE(void *) gdImageGifPtr(gdImagePtr im, int *size) + void *rv; + gdIOCtx *out = gdNewDynamicCtx(2048, NULL); + if (out == NULL) return NULL; +- gdImageGifCtx(im, out); +- rv = gdDPExtractData(out, size); ++ if (!_gdImageGifCtx(im, out)) { ++ rv = gdDPExtractData(out, size); ++ } else { ++ rv = NULL; ++ } + out->gd_free(out); + return rv; + } +@@ -220,6 +224,12 @@ BGD_DECLARE(void) gdImageGif(gdImagePtr im, FILE *outFile) + + */ + BGD_DECLARE(void) gdImageGifCtx(gdImagePtr im, gdIOCtxPtr out) ++{ ++ _gdImageGifCtx(im, out); ++} ++ ++/* returns 0 on success, 1 on failure */ ++static int _gdImageGifCtx(gdImagePtr im, gdIOCtxPtr out) + { + gdImagePtr pim = 0, tim = im; + int interlace, BitsPerPixel; +@@ -231,7 +241,7 @@ BGD_DECLARE(void) gdImageGifCtx(gdImagePtr im, gdIOCtxPtr out) + based temporary image. */ + pim = gdImageCreatePaletteFromTrueColor(im, 1, 256); + if(!pim) { +- return; ++ return 1; + } + tim = pim; + } +@@ -247,6 +257,8 @@ BGD_DECLARE(void) gdImageGifCtx(gdImagePtr im, gdIOCtxPtr out) + /* Destroy palette based temporary image. */ + gdImageDestroy( pim); + } ++ ++ return 0; + } + + +diff --git a/src/gd_jpeg.c b/src/gd_jpeg.c +index fc05842..96ef430 100644 +--- a/src/gd_jpeg.c ++++ b/src/gd_jpeg.c +@@ -117,6 +117,8 @@ static void fatal_jpeg_error(j_common_ptr cinfo) + exit(99); + } + ++static int _gdImageJpegCtx(gdImagePtr im, gdIOCtx *outfile, int quality); ++ + /* + * Write IM to OUTFILE as a JFIF-formatted JPEG image, using quality + * QUALITY. If QUALITY is in the range 0-100, increasing values +@@ -231,8 +233,11 @@ BGD_DECLARE(void *) gdImageJpegPtr(gdImagePtr im, int *size, int quality) + void *rv; + gdIOCtx *out = gdNewDynamicCtx(2048, NULL); + if (out == NULL) return NULL; +- gdImageJpegCtx(im, out, quality); +- rv = gdDPExtractData(out, size); ++ if (!_gdImageJpegCtx(im, out, quality)) { ++ rv = gdDPExtractData(out, size); ++ } else { ++ rv = NULL; ++ } + out->gd_free(out); + return rv; + } +@@ -253,6 +258,12 @@ void jpeg_gdIOCtx_dest(j_compress_ptr cinfo, gdIOCtx *outfile); + + */ + BGD_DECLARE(void) gdImageJpegCtx(gdImagePtr im, gdIOCtx *outfile, int quality) ++{ ++ _gdImageJpegCtx(im, outfile, quality); ++} ++ ++/* returns 0 on success, 1 on failure */ ++static int _gdImageJpegCtx(gdImagePtr im, gdIOCtx *outfile, int quality) + { + struct jpeg_compress_struct cinfo; + struct jpeg_error_mgr jerr; +@@ -287,7 +298,7 @@ BGD_DECLARE(void) gdImageJpegCtx(gdImagePtr im, gdIOCtx *outfile, int quality) + if(row) { + gdFree(row); + } +- return; ++ return 1; + } + + cinfo.err->emit_message = jpeg_emit_message; +@@ -328,7 +339,7 @@ BGD_DECLARE(void) gdImageJpegCtx(gdImagePtr im, gdIOCtx *outfile, int quality) + if(row == 0) { + gd_error("gd-jpeg: error: unable to allocate JPEG row structure: gdCalloc returns NULL\n"); + jpeg_destroy_compress(&cinfo); +- return; ++ return 1; + } + + rowptr[0] = row; +@@ -405,6 +416,7 @@ BGD_DECLARE(void) gdImageJpegCtx(gdImagePtr im, gdIOCtx *outfile, int quality) + jpeg_finish_compress(&cinfo); + jpeg_destroy_compress(&cinfo); + gdFree(row); ++ return 0; + } + + +diff --git a/src/gd_wbmp.c b/src/gd_wbmp.c +index f19a1c9..a49bdbe 100644 +--- a/src/gd_wbmp.c ++++ b/src/gd_wbmp.c +@@ -88,6 +88,8 @@ int gd_getin(void *in) + return (gdGetC((gdIOCtx *)in)); + } + ++static int _gdImageWBMPCtx(gdImagePtr image, int fg, gdIOCtx *out); ++ + /* + Function: gdImageWBMPCtx + +@@ -100,6 +102,12 @@ int gd_getin(void *in) + out - the stream where to write + */ + BGD_DECLARE(void) gdImageWBMPCtx(gdImagePtr image, int fg, gdIOCtx *out) ++{ ++ _gdImageWBMPCtx(image, fg, out); ++} ++ ++/* returns 0 on success, 1 on failure */ ++static int _gdImageWBMPCtx(gdImagePtr image, int fg, gdIOCtx *out) + { + int x, y, pos; + Wbmp *wbmp; +@@ -107,7 +115,7 @@ BGD_DECLARE(void) gdImageWBMPCtx(gdImagePtr image, int fg, gdIOCtx *out) + /* create the WBMP */ + if((wbmp = createwbmp(gdImageSX(image), gdImageSY(image), WBMP_WHITE)) == NULL) { + gd_error("Could not create WBMP\n"); +- return; ++ return 1; + } + + /* fill up the WBMP structure */ +@@ -123,11 +131,15 @@ BGD_DECLARE(void) gdImageWBMPCtx(gdImagePtr image, int fg, gdIOCtx *out) + + /* write the WBMP to a gd file descriptor */ + if(writewbmp(wbmp, &gd_putout, out)) { ++ freewbmp(wbmp); + gd_error("Could not save WBMP\n"); ++ return 1; + } + + /* des submitted this bugfix: gdFree the memory. */ + freewbmp(wbmp); ++ ++ return 0; + } + + /* +@@ -271,8 +283,11 @@ BGD_DECLARE(void *) gdImageWBMPPtr(gdImagePtr im, int *size, int fg) + void *rv; + gdIOCtx *out = gdNewDynamicCtx(2048, NULL); + if (out == NULL) return NULL; +- gdImageWBMPCtx(im, fg, out); +- rv = gdDPExtractData(out, size); ++ if (!_gdImageWBMPCtx(im, fg, out)) { ++ rv = gdDPExtractData(out, size); ++ } else { ++ rv = NULL; ++ } + out->gd_free(out); + return rv; + } +-- +2.20.1 + diff --git a/buildroot/package/gerbera/0002-Fix-find_program-taglib-config-when-cross-compiling.patch b/buildroot/package/gerbera/0002-Fix-find_program-taglib-config-when-cross-compiling.patch new file mode 100644 index 000000000..d5cc908e2 --- /dev/null +++ b/buildroot/package/gerbera/0002-Fix-find_program-taglib-config-when-cross-compiling.patch @@ -0,0 +1,46 @@ +From 0f78b883f02651bd15a96a7294e01f94b28c20f8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Mon, 13 May 2019 13:42:14 +0200 +Subject: [PATCH] Fix find_program taglib-config when cross-compiling +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +When cross-compiling Gerbera CMakes `find_program()` will search for +binaries on the host. This is typically correct, e.g. when search for +compilers or shells. + +When cross-compiling searching for `taglib-config` should not find the +binary on the host, instead it should find the binary in the sysroot +directory, as the host `taglib-config` will output the wrong host paths +and libs, whereas the sysroot `taglib-config` will output the correct sysroot +paths and libs. + +Therefore, use the `CMAKE_FIND_ROOT_PATH_MODE_PROGRAM` variable when +cross-compiling. This variable controls whether the `CMAKE_FIND_ROOT_PATH` +and `CMAKE_SYSROOT` are used by find_program(). + +Backported from: 0f78b883f02651bd15a96a7294e01f94b28c20f8 + +Signed-off-by: Jörg Krause +--- + cmake/FindTaglib.cmake | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/cmake/FindTaglib.cmake b/cmake/FindTaglib.cmake +index 46a20ff2..7135d766 100644 +--- a/cmake/FindTaglib.cmake ++++ b/cmake/FindTaglib.cmake +@@ -19,6 +19,9 @@ ELSE() + endif(NOT TAGLIB_MIN_VERSION) + + if(NOT WIN32) ++ if (CMAKE_CROSSCOMPILING) ++ set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY) ++ endif(CMAKE_CROSSCOMPILING) + find_program(TAGLIBCONFIG_EXECUTABLE NAMES taglib-config PATHS + ${BIN_INSTALL_DIR} + ) +-- +2.22.0 + diff --git a/buildroot/package/ghostscript/0002-Bug-700986-Remove-the-crazy-md5-file-copying-nonsense.patch b/buildroot/package/ghostscript/0002-Bug-700986-Remove-the-crazy-md5-file-copying-nonsense.patch deleted file mode 100644 index 49bcfcdd3..000000000 --- a/buildroot/package/ghostscript/0002-Bug-700986-Remove-the-crazy-md5-file-copying-nonsense.patch +++ /dev/null @@ -1,252 +0,0 @@ -From d86210973df93ccca0befd56afba2132da925ebc Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Thu, 18 Apr 2019 16:58:41 +0100 -Subject: [PATCH] Bug 700986: Remove the crazy md5 file copying nonsense - -To preserve building as a standalone test exe, we avoided using Ghostscript -includes in the md5 source and header files, but dynamically add them to -copies of the files during the build. Since we no longer need/care for the -stand alone exe, remove the build complication, and just include the header -file normally. - -Signed-off-by: Fabrice Fontaine -[Retrieved from: -http://git.ghostscript.com/?p=user/chrisl/ghostpdl.git;a=commitdiff;h=d86210973df9] ---- - base/gsmd5.h | 2 + - base/lib.mak | 10 +-- - base/md5main.c | 141 ----------------------------------------- - doc/Develop.htm | 1 - - windows/ghostscript.vcproj | 4 -- - windows/ghostscript_rt.vcxproj | 1 - - 6 files changed, 5 insertions(+), 154 deletions(-) - delete mode 100644 base/md5main.c - -diff --git a/base/gsmd5.h b/base/gsmd5.h -index 206ea6b..b159afb 100644 ---- a/base/gsmd5.h -+++ b/base/gsmd5.h -@@ -50,6 +50,8 @@ - #ifndef md5_INCLUDED - # define md5_INCLUDED - -+#include "memory_.h" -+ - /* - * This package supports both compile-time and run-time determination of CPU - * byte order. If ARCH_IS_BIG_ENDIAN is defined as 0, the code will be -diff --git a/base/lib.mak b/base/lib.mak -index 3ed088a..21e2cb7 100644 ---- a/base/lib.mak -+++ b/base/lib.mak -@@ -387,13 +387,8 @@ gsmd5_h=$(GLSRC)gsmd5.h - # We have to use a slightly different compilation approach in order to - # get std.h included when compiling md5.c. - md5_=$(GLOBJ)gsmd5.$(OBJ) --$(GLOBJ)gsmd5.$(OBJ) : $(GLSRC)gsmd5.c $(AK) $(gsmd5_h)\ -- $(EXP)$(ECHOGS_XE) $(LIB_MAK) $(MAKEDIRS) -- $(EXP)$(ECHOGS_XE) -w $(GLGEN)gsmd5.h -x 23 include -x 2022 memory_.h -x 22 -- $(EXP)$(ECHOGS_XE) -a $(GLGEN)gsmd5.h -+R $(GLSRC)gsmd5.h -- $(CP_) $(GLSRC)gsmd5.c $(GLGEN)gsmd5.c -- $(GLCC) $(GLO_)gsmd5.$(OBJ) $(C_) $(GLGEN)gsmd5.c -- $(RM_) $(GLGEN)gsmd5.c $(GLGEN)gsmd5.h -+$(GLOBJ)gsmd5.$(OBJ) : $(GLSRC)gsmd5.c $(AK) $(gsmd5_h) $(LIB_MAK) $(MAKEDIRS) -+ $(GLCC) $(GLO_)gsmd5.$(OBJ) $(C_) $(GLSRC)gsmd5.c - - # SHA-256 digest - sha2_h=$(GLSRC)sha2.h -@@ -12346,3 +12341,4 @@ $(GLSRC)gxshade4.h:$(GLSRC)gstypes.h - $(GLSRC)gxshade4.h:$(GLSRC)stdpre.h - $(GLSRC)gxshade4.h:$(GLGEN)arch.h - $(GLSRC)gxshade4.h:$(GLSRC)gs_dll_call.h -+$(GLSRC)gsmd5.h:$(GLSRC)memory_.h -diff --git a/base/md5main.c b/base/md5main.c -deleted file mode 100644 -index 75c523b..0000000 ---- a/base/md5main.c -+++ /dev/null -@@ -1,141 +0,0 @@ --/* -- Copyright (C) 2002-2018 Artifex Software, Inc. -- All rights reserved. -- -- This software is provided 'as-is', without any express or implied -- warranty. In no event will the authors be held liable for any damages -- arising from the use of this software. -- -- Permission is granted to anyone to use this software for any purpose, -- including commercial applications, and to alter it and redistribute it -- freely, subject to the following restrictions: -- -- 1. The origin of this software must not be misrepresented; you must not -- claim that you wrote the original software. If you use this software -- in a product, an acknowledgment in the product documentation would be -- appreciated but is not required. -- 2. Altered source versions must be plainly marked as such, and must not be -- misrepresented as being the original software. -- 3. This notice may not be removed or altered from any source distribution. -- -- L. Peter Deutsch -- ghost@aladdin.com -- -- */ --/* -- Independent implementation of MD5 (RFC 1321). -- -- This code implements the MD5 Algorithm defined in RFC 1321, whose -- text is available at -- http://www.ietf.org/rfc/rfc1321.txt -- The code is derived from the text of the RFC, including the test suite -- (section A.5) but excluding the rest of Appendix A. It does not include -- any code or documentation that is identified in the RFC as being -- copyrighted. -- -- The original and principal author of md5.c is L. Peter Deutsch -- . Other authors are noted in the change history -- that follows (in reverse chronological order): -- -- 2007-06-08 RG Namespaced the api calls to avoid conflict with other -- implementations when linking gs as a library. -- 2002-04-13 lpd Splits off main program into a separate file, md5main.c. -- */ -- --#include "gsmd5.h" --#include --#include --#include -- --/* -- * This file builds an executable that performs various functions related -- * to the MD5 library. Typical compilation: -- * gcc -o md5main -lm md5main.c md5.c -- */ --static const char *const usage = "\ --Usage:\n\ -- md5main --test # run the self-test (A.5 of RFC 1321)\n\ -- md5main --t-values # print the T values for the library\n\ -- md5main --version # print the version of the package\n\ --"; --static const char *const version = "2002-04-13"; -- --/* Run the self-test. */ --static int --do_test(void) --{ -- static const char *const test[7*2] = { -- "", "d41d8cd98f00b204e9800998ecf8427e", -- "a", "0cc175b9c0f1b6a831c399e269772661", -- "abc", "900150983cd24fb0d6963f7d28e17f72", -- "message digest", "f96b697d7cb7938d525a2f31aaf161d0", -- "abcdefghijklmnopqrstuvwxyz", "c3fcd3d76192e4007dfb496cca67e13b", -- "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", -- "d174ab98d277d9f5a5611c2c9f419d9f", -- "12345678901234567890123456789012345678901234567890123456789012345678901234567890", "57edf4a22be3c955ac49da2e2107b67a" -- }; -- int i; -- int status = 0; -- -- for (i = 0; i < 7*2; i += 2) { -- gs_md5_state_t state; -- gs_md5_byte_t digest[16]; -- char hex_output[16*2 + 1]; -- int di; -- -- gs_md5_init(&state); -- gs_md5_append(&state, (const gs_md5_byte_t *)test[i], strlen(test[i])); -- gs_md5_finish(&state, digest); -- for (di = 0; di < 16; ++di) -- gs_sprintf(hex_output + di * 2, "%02x", digest[di]); -- if (strcmp(hex_output, test[i + 1])) { -- printf("MD5 (\"%s\") = ", test[i]); -- puts(hex_output); -- printf("**** ERROR, should be: %s\n", test[i + 1]); -- status = 1; -- } -- } -- if (status == 0) -- puts("md5 self-test completed successfully."); -- return status; --} -- --/* Print the T values. */ --static int --do_t_values(void) --{ -- int i; -- for (i = 1; i <= 64; ++i) { -- unsigned long v = (unsigned long)(4294967296.0 * fabs(sin((double)i))); -- -- /* -- * The following nonsense is only to avoid compiler warnings about -- * "integer constant is unsigned in ANSI C, signed with -traditional". -- */ -- if (v >> 31) { -- printf("#define T%d /* 0x%08lx */ (T_MASK ^ 0x%08lx)\n", i, -- v, (unsigned long)(unsigned int)(~v)); -- } else { -- printf("#define T%d 0x%08lx\n", i, v); -- } -- } -- return 0; --} -- --/* Main program */ --int --main(int argc, char *argv[]) --{ -- if (argc == 2) { -- if (!strcmp(argv[1], "--test")) -- return do_test(); -- if (!strcmp(argv[1], "--t-values")) -- return do_t_values(); -- if (!strcmp(argv[1], "--version")) { -- puts(version); -- return 0; -- } -- } -- puts(usage); -- return 0; --} -diff --git a/doc/Develop.htm b/doc/Develop.htm -index c1ffceb..1ed3030 100644 ---- a/doc/Develop.htm -+++ b/doc/Develop.htm -@@ -684,7 +684,6 @@ Other: - base/gx.h, - base/gsmd5.c, - base/gsmd5.h, --base/md5main.c, - base/aes.c, - base/aes.h. - -diff --git a/windows/ghostscript.vcproj b/windows/ghostscript.vcproj -index d607949..fdbeaa1 100644 ---- a/windows/ghostscript.vcproj -+++ b/windows/ghostscript.vcproj -@@ -2510,10 +2510,6 @@ - > - - -- -- - -diff --git a/windows/ghostscript_rt.vcxproj b/windows/ghostscript_rt.vcxproj -index 589b2d1..fca736b 100644 ---- a/windows/ghostscript_rt.vcxproj -+++ b/windows/ghostscript_rt.vcxproj -@@ -597,7 +597,6 @@ - - - -- - - - --- -2.9.1 - - diff --git a/buildroot/package/ghostscript/ghostscript.hash b/buildroot/package/ghostscript/ghostscript.hash index 383a414da..51b3a2a09 100644 --- a/buildroot/package/ghostscript/ghostscript.hash +++ b/buildroot/package/ghostscript/ghostscript.hash @@ -1,5 +1,5 @@ -# From https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs927/SHA512SUMS -sha512 5e67ad45a80f01c6ef0eabb1c76dfa8fb6e7f0fde8d82fd5daaf12f370c288a672f8fa69c74d9e30255582267e9a906e4e8b13655f8d993fefdfc8dbdb5d5401 ghostscript-9.27.tar.xz +# From https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs950/SHA512SUMS +sha512 3c1e5db519a427f4b6bfb8d93f3c3dfb67d5ec9ccd19c7afa7670deb768515f3fc617c5588e54934bbfbedfdf8609ce2ffa36dd7da3cb618937fe034f64f43ee ghostscript-9.50.tar.xz # Hash for license file: sha256 6f852249f975287b3efd43a5883875e47fa9f3125e2f1b18b5c09517ac30ecf2 LICENSE diff --git a/buildroot/package/ghostscript/ghostscript.mk b/buildroot/package/ghostscript/ghostscript.mk index fefac2aee..a6e85d989 100644 --- a/buildroot/package/ghostscript/ghostscript.mk +++ b/buildroot/package/ghostscript/ghostscript.mk @@ -4,7 +4,7 @@ # ################################################################################ -GHOSTSCRIPT_VERSION = 9.27 +GHOSTSCRIPT_VERSION = 9.50 GHOSTSCRIPT_SITE = https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs$(subst .,,$(GHOSTSCRIPT_VERSION)) GHOSTSCRIPT_SOURCE = ghostscript-$(GHOSTSCRIPT_VERSION).tar.xz GHOSTSCRIPT_LICENSE = AGPL-3.0 diff --git a/buildroot/package/giflib/0001-Address-SF-bug-113-Heap-Buffer-Overflow-2-in-functio.patch b/buildroot/package/giflib/0001-Address-SF-bug-113-Heap-Buffer-Overflow-2-in-functio.patch new file mode 100644 index 000000000..9c6f344be --- /dev/null +++ b/buildroot/package/giflib/0001-Address-SF-bug-113-Heap-Buffer-Overflow-2-in-functio.patch @@ -0,0 +1,31 @@ +From 08438a5098f3bb1de23a29334af55eba663f75bd Mon Sep 17 00:00:00 2001 +From: "Eric S. Raymond" +Date: Sat, 9 Feb 2019 10:52:21 -0500 +Subject: [PATCH] Address SF bug #113: Heap Buffer Overflow-2 in function + DGifDecompressLine()... + +This was CVE-2018-11490 + +[Retrieved from: +https://sourceforge.net/p/giflib/code/ci/08438a5098f3bb1de23a29334af55eba663f75bd] +Signed-off-by: Fabrice Fontaine +--- + lib/dgif_lib.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/lib/dgif_lib.c b/lib/dgif_lib.c +index 15c1460..c4aee5f 100644 +--- a/lib/dgif_lib.c ++++ b/lib/dgif_lib.c +@@ -930,7 +930,7 @@ DGifDecompressLine(GifFileType *GifFile, GifPixelType *Line, int LineLen) + while (StackPtr != 0 && i < LineLen) + Line[i++] = Stack[--StackPtr]; + } +- if (LastCode != NO_SUCH_CODE && Prefix[Private->RunningCode - 2] == NO_SUCH_CODE) { ++ if (LastCode != NO_SUCH_CODE && Private->RunningCode - 2 < LZ_MAX_CODE && Prefix[Private->RunningCode - 2] == NO_SUCH_CODE) { + Prefix[Private->RunningCode - 2] = LastCode; + + if (CrntCode == Private->RunningCode - 2) { +-- +2.20.1 + diff --git a/buildroot/package/giflib/0002-Address-SF-bug-119-MemorySanitizer-FPE-on-unknown-ad.patch b/buildroot/package/giflib/0002-Address-SF-bug-119-MemorySanitizer-FPE-on-unknown-ad.patch new file mode 100644 index 000000000..60e9a324a --- /dev/null +++ b/buildroot/package/giflib/0002-Address-SF-bug-119-MemorySanitizer-FPE-on-unknown-ad.patch @@ -0,0 +1,28 @@ +From 799eb6a3af8a3dd81e2429bf11a72a57e541f908 Mon Sep 17 00:00:00 2001 +From: "Eric S. Raymond" +Date: Sun, 17 Mar 2019 12:37:21 -0400 +Subject: [PATCH] Address SF bug #119: MemorySanitizer: FPE on unknown address + +[Retrieved (and backported) from: +https://sourceforge.net/p/giflib/code/ci/08438a5098f3bb1de23a29334af55eba663f75bd] +Signed-off-by: Fabrice Fontaine +--- + dgif_lib.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/lib/dgif_lib.c b/lib/dgif_lib.c +index 3a52467..179bd84 100644 +--- a/lib/dgif_lib.c ++++ b/lib/dgif_lib.c +@@ -1143,7 +1143,7 @@ DGifSlurp(GifFileType *GifFile) + + sp = &GifFile->SavedImages[GifFile->ImageCount - 1]; + /* Allocate memory for the image */ +- if (sp->ImageDesc.Width < 0 && sp->ImageDesc.Height < 0 && ++ if (sp->ImageDesc.Width <= 0 || sp->ImageDesc.Height <= 0 || + sp->ImageDesc.Width > (INT_MAX / sp->ImageDesc.Height)) { + return GIF_ERROR; + } +-- +2.20.1 + diff --git a/buildroot/package/giflib/giflib.hash b/buildroot/package/giflib/giflib.hash index cdd7bbdec..189dca9f1 100644 --- a/buildroot/package/giflib/giflib.hash +++ b/buildroot/package/giflib/giflib.hash @@ -1,3 +1,5 @@ # From http://sourceforge.net/projects/giflib/files md5 2c171ced93c0e83bb09e6ccad8e3ba2b giflib-5.1.4.tar.bz2 sha1 5f1157cfc377916280849e247b8e34fa0446513f giflib-5.1.4.tar.bz2 +# Locally computed +sha256 0c9b7990ecdca88b676db232c226548ac408b279f550d424d996f0d83591dd8e COPYING diff --git a/buildroot/package/git/git.mk b/buildroot/package/git/git.mk index 804a6e232..b1434fb7b 100644 --- a/buildroot/package/git/git.mk +++ b/buildroot/package/git/git.mk @@ -66,6 +66,14 @@ ifeq ($(BR2_SYSTEM_ENABLE_NLS),) GIT_MAKE_OPTS += NO_GETTEXT=1 endif +GIT_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y) +GIT_CFLAGS += -O0 +endif + +GIT_CONF_OPTS += CFLAGS="$(GIT_CFLAGS)" + GIT_INSTALL_TARGET_OPTS = $(GIT_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install # assume yes for these tests, configure will bail out otherwise diff --git a/buildroot/package/glib-networking/Config.in b/buildroot/package/glib-networking/Config.in index b84a73946..1a8ebe6c0 100644 --- a/buildroot/package/glib-networking/Config.in +++ b/buildroot/package/glib-networking/Config.in @@ -9,6 +9,8 @@ config BR2_PACKAGE_GLIB_NETWORKING help Network-related GIO modules for glib. + https://gitlab.gnome.org/GNOME/glib-networking + comment "glib-networking needs a toolchain w/ wchar, threads, dynamic library" depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/buildroot/package/glib-networking/glib-networking.mk b/buildroot/package/glib-networking/glib-networking.mk index 325cbcf8a..163f1b0dd 100644 --- a/buildroot/package/glib-networking/glib-networking.mk +++ b/buildroot/package/glib-networking/glib-networking.mk @@ -12,7 +12,6 @@ GLIB_NETWORKING_INSTALL_STAGING = YES GLIB_NETWORKING_DEPENDENCIES = \ $(TARGET_NLS_DEPENDENCIES) \ host-pkgconf \ - host-intltool \ libglib2 \ gnutls diff --git a/buildroot/package/glibc/glibc-2.28-94-g4aeff335ca19286ee2382d8eba794ae5fd49281a/glibc.hash b/buildroot/package/glibc/glibc-2.28-110-g57922433fa038faa6e37798b9655f85a94978d89/glibc.hash similarity index 69% rename from buildroot/package/glibc/glibc-2.28-94-g4aeff335ca19286ee2382d8eba794ae5fd49281a/glibc.hash rename to buildroot/package/glibc/glibc-2.28-110-g57922433fa038faa6e37798b9655f85a94978d89/glibc.hash index 442ef0d7a..734621d9b 100644 --- a/buildroot/package/glibc/glibc-2.28-94-g4aeff335ca19286ee2382d8eba794ae5fd49281a/glibc.hash +++ b/buildroot/package/glibc/glibc-2.28-110-g57922433fa038faa6e37798b9655f85a94978d89/glibc.hash @@ -1,5 +1,5 @@ # Locally calculated (fetched from Github) -sha256 295d436aac4dc45afc3b440f85fc4556c03b1140ca0f625ee015c8156d2f52ae glibc-glibc-2.28-94-g4aeff335ca19286ee2382d8eba794ae5fd49281a.tar.gz +sha256 8cfd8c4564b20e610b41e24cdab85d5b208453c51b06a64603e9ef3f86d6de0a glibc-glibc-2.28-110-g57922433fa038faa6e37798b9655f85a94978d89.tar.gz # Hashes for license files sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/buildroot/package/glibc/glibc.mk b/buildroot/package/glibc/glibc.mk index cb6f8097d..94ffe9eb4 100644 --- a/buildroot/package/glibc/glibc.mk +++ b/buildroot/package/glibc/glibc.mk @@ -13,7 +13,7 @@ GLIBC_SITE = $(call github,riscv,riscv-glibc,$(GLIBC_VERSION)) else # Generate version string using: # git describe --match 'glibc-*' --abbrev=40 origin/release/MAJOR.MINOR/master -GLIBC_VERSION = glibc-2.28-94-g4aeff335ca19286ee2382d8eba794ae5fd49281a +GLIBC_VERSION = glibc-2.28-110-g57922433fa038faa6e37798b9655f85a94978d89 # Upstream doesn't officially provide an https download link. # There is one (https://sourceware.org/git/glibc.git) but it's not reliable, # sometimes the connection times out. So use an unofficial github mirror. diff --git a/buildroot/package/gnupg2/gnupg2.hash b/buildroot/package/gnupg2/gnupg2.hash index f985e11ad..806a07b84 100644 --- a/buildroot/package/gnupg2/gnupg2.hash +++ b/buildroot/package/gnupg2/gnupg2.hash @@ -1,7 +1,7 @@ -# From https://lists.gnupg.org/pipermail/gnupg-announce/2018q4/000433.html -sha1 2aeccc35ea8034306ff7a1072b84abbaa79619c3 gnupg-2.2.12.tar.bz2 +# From https://lists.gnupg.org/pipermail/gnupg-announce/2019q3/000439.html +sha1 12c1cee8871c03f0315fc8f27876364b75c95b12 gnupg-2.2.17.tar.bz2 # Calculated based on the hash above and signature -# https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.2.12.tar.bz2.sig +# https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.2.17.tar.bz2.sig # using key D8692123C4065DEA5E0F3AB5249B39D24F25E3B6 -sha256 db030f8b4c98640e91300d36d516f1f4f8fe09514a94ea9fc7411ee1a34082cb gnupg-2.2.12.tar.bz2 +sha256 afa262868e39b651a2db4c071fba90415154243e83a830ca00516f9a807fd514 gnupg-2.2.17.tar.bz2 sha256 bc2d6664f6276fa0a72d57633b3ae68dc7dcb677b71018bf08c8e93e509f1357 COPYING diff --git a/buildroot/package/gnupg2/gnupg2.mk b/buildroot/package/gnupg2/gnupg2.mk index 9365e960f..aa1f7b14d 100644 --- a/buildroot/package/gnupg2/gnupg2.mk +++ b/buildroot/package/gnupg2/gnupg2.mk @@ -4,7 +4,7 @@ # ################################################################################ -GNUPG2_VERSION = 2.2.12 +GNUPG2_VERSION = 2.2.17 GNUPG2_SOURCE = gnupg-$(GNUPG2_VERSION).tar.bz2 GNUPG2_SITE = https://gnupg.org/ftp/gcrypt/gnupg GNUPG2_LICENSE = GPL-3.0+ diff --git a/buildroot/package/gnuradio/Config.in b/buildroot/package/gnuradio/Config.in index 6d0669779..80f6a1c53 100644 --- a/buildroot/package/gnuradio/Config.in +++ b/buildroot/package/gnuradio/Config.in @@ -66,11 +66,15 @@ config BR2_PACKAGE_GNURADIO_PYTHON bool "python support" depends on BR2_PACKAGE_PYTHON depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy select BR2_PACKAGE_BOOST_PYTHON select BR2_PACKAGE_PYTHON_NUMPY # runtime help Enable python component +comment "python support needs glibc or musl" + depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) + config BR2_PACKAGE_GNURADIO_UTILS bool "gr-utils support" depends on BR2_PACKAGE_GNURADIO_PYTHON diff --git a/buildroot/package/gnutls/gnutls.mk b/buildroot/package/gnutls/gnutls.mk index e7c596820..f2e654fc1 100644 --- a/buildroot/package/gnutls/gnutls.mk +++ b/buildroot/package/gnutls/gnutls.mk @@ -46,7 +46,7 @@ endif # Prerequisite for crywrap ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) -GNUTLS_CONF_ENV += LIBS="-largp" +GNUTLS_LIBS += -largp GNUTLS_DEPENDENCIES += argp-standalone endif @@ -86,4 +86,10 @@ else ifeq ($(BR2_PACKAGE_CA_CERTIFICATES),y) GNUTLS_CONF_OPTS += --with-default-trust-store-file=/etc/ssl/certs/ca-certificates.crt endif +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +GNUTLS_LIBS += -latomic +endif + +GNUTLS_CONF_ENV += LIBS="$(GNUTLS_LIBS)" + $(eval $(autotools-package)) diff --git a/buildroot/package/go/0002-Fix-CVE-2019-16276.patch b/buildroot/package/go/0002-Fix-CVE-2019-16276.patch new file mode 100644 index 000000000..c3fe163c3 --- /dev/null +++ b/buildroot/package/go/0002-Fix-CVE-2019-16276.patch @@ -0,0 +1,123 @@ +From: "Dr. Tobias Quathamer" +Date: Thu, 26 Sep 2019 11:46:46 +0200 +Subject: Fix CVE-2019-16276 + +Cherry-picked from upstream: +https://github.com/golang/go/commit/6e6f4aaf70c8b1cc81e65a26332aa9409de03ad8 + +[Upstream: https://sources.debian.org/src/golang-1.11/1.11.6-1+deb10u2/debian/patches/0007-Fix-CVE-2019-16276.patch] +Signed-off-by: Peter Korsgaard +--- + src/net/http/serve_test.go | 4 ++++ + src/net/http/transport_test.go | 27 +++++++++++++++++++++++++++ + src/net/textproto/reader.go | 10 ++-------- + src/net/textproto/reader_test.go | 13 ++++++------- + 4 files changed, 39 insertions(+), 15 deletions(-) + +diff --git a/src/net/http/serve_test.go b/src/net/http/serve_test.go +index a438541..18edf98 100644 +--- a/src/net/http/serve_test.go ++++ b/src/net/http/serve_test.go +@@ -4725,6 +4725,10 @@ func TestServerValidatesHeaders(t *testing.T) { + {"foo\xffbar: foo\r\n", 400}, // binary in header + {"foo\x00bar: foo\r\n", 400}, // binary in header + {"Foo: " + strings.Repeat("x", 1<<21) + "\r\n", 431}, // header too large ++ // Spaces between the header key and colon are not allowed. ++ // See RFC 7230, Section 3.2.4. ++ {"Foo : bar\r\n", 400}, ++ {"Foo\t: bar\r\n", 400}, + + {"foo: foo foo\r\n", 200}, // LWS space is okay + {"foo: foo\tfoo\r\n", 200}, // LWS tab is okay +diff --git a/src/net/http/transport_test.go b/src/net/http/transport_test.go +index b2036df..dff940e 100644 +--- a/src/net/http/transport_test.go ++++ b/src/net/http/transport_test.go +@@ -4838,3 +4838,30 @@ func TestClientTimeoutKillsConn_AfterHeaders(t *testing.T) { + t.Fatal("timeout") + } + } ++ ++func TestInvalidHeaderResponse(t *testing.T) { ++ setParallel(t) ++ defer afterTest(t) ++ cst := newClientServerTest(t, h1Mode, HandlerFunc(func(w ResponseWriter, r *Request) { ++ conn, buf, _ := w.(Hijacker).Hijack() ++ buf.Write([]byte("HTTP/1.1 200 OK\r\n" + ++ "Date: Wed, 30 Aug 2017 19:09:27 GMT\r\n" + ++ "Content-Type: text/html; charset=utf-8\r\n" + ++ "Content-Length: 0\r\n" + ++ "Foo : bar\r\n\r\n")) ++ buf.Flush() ++ conn.Close() ++ })) ++ defer cst.close() ++ res, err := cst.c.Get(cst.ts.URL) ++ if err != nil { ++ t.Fatal(err) ++ } ++ defer res.Body.Close() ++ if v := res.Header.Get("Foo"); v != "" { ++ t.Errorf(`unexpected "Foo" header: %q`, v) ++ } ++ if v := res.Header.Get("Foo "); v != "bar" { ++ t.Errorf(`bad "Foo " header value: %q, want %q`, v, "bar") ++ } ++} +diff --git a/src/net/textproto/reader.go b/src/net/textproto/reader.go +index feb464b..6a37b2d 100644 +--- a/src/net/textproto/reader.go ++++ b/src/net/textproto/reader.go +@@ -492,18 +492,12 @@ func (r *Reader) ReadMIMEHeader() (MIMEHeader, error) { + return m, err + } + +- // Key ends at first colon; should not have trailing spaces +- // but they appear in the wild, violating specs, so we remove +- // them if present. ++ // Key ends at first colon. + i := bytes.IndexByte(kv, ':') + if i < 0 { + return m, ProtocolError("malformed MIME header line: " + string(kv)) + } +- endKey := i +- for endKey > 0 && kv[endKey-1] == ' ' { +- endKey-- +- } +- key := canonicalMIMEHeaderKey(kv[:endKey]) ++ key := canonicalMIMEHeaderKey(kv[:i]) + + // As per RFC 7230 field-name is a token, tokens consist of one or more chars. + // We could return a ProtocolError here, but better to be liberal in what we +diff --git a/src/net/textproto/reader_test.go b/src/net/textproto/reader_test.go +index 7cff7b4..3af77d2 100644 +--- a/src/net/textproto/reader_test.go ++++ b/src/net/textproto/reader_test.go +@@ -188,11 +188,10 @@ func TestLargeReadMIMEHeader(t *testing.T) { + } + } + +-// Test that we read slightly-bogus MIME headers seen in the wild, +-// with spaces before colons, and spaces in keys. ++// TestReadMIMEHeaderNonCompliant checks that we don't normalize headers ++// with spaces before colons, and accept spaces in keys. + func TestReadMIMEHeaderNonCompliant(t *testing.T) { +- // Invalid HTTP response header as sent by an Axis security +- // camera: (this is handled by IE, Firefox, Chrome, curl, etc.) ++ // These invalid headers will be rejected by net/http according to RFC 7230. + r := reader("Foo: bar\r\n" + + "Content-Language: en\r\n" + + "SID : 0\r\n" + +@@ -202,9 +201,9 @@ func TestReadMIMEHeaderNonCompliant(t *testing.T) { + want := MIMEHeader{ + "Foo": {"bar"}, + "Content-Language": {"en"}, +- "Sid": {"0"}, +- "Audio Mode": {"None"}, +- "Privilege": {"127"}, ++ "SID ": {"0"}, ++ "Audio Mode ": {"None"}, ++ "Privilege ": {"127"}, + } + if !reflect.DeepEqual(m, want) || err != nil { + t.Fatalf("ReadMIMEHeader =\n%v, %v; want:\n%v", m, err, want) diff --git a/buildroot/package/go/0003-Fix-CVE-2019-17596.patch b/buildroot/package/go/0003-Fix-CVE-2019-17596.patch new file mode 100644 index 000000000..33a5baad5 --- /dev/null +++ b/buildroot/package/go/0003-Fix-CVE-2019-17596.patch @@ -0,0 +1,27 @@ +From: "Dr. Tobias Quathamer" +Date: Sat, 19 Oct 2019 14:03:22 +0200 +Subject: Fix CVE-2019-17596 + +Cherry-picked from upstream: +https://github.com/golang/go/commit/2017d88dbc096381d4f348d2fb08bfb3c2b7ed73 + +[Upstream: https://sources.debian.org/src/golang-1.11/1.11.6-1+deb10u3/debian/patches/0008-Fix-CVE-2019-17596.patch] +Signed-off-by: Peter Korsgaard +--- + src/crypto/dsa/dsa.go | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/src/crypto/dsa/dsa.go b/src/crypto/dsa/dsa.go +index 575314b..2fc4f1f 100644 +--- a/src/crypto/dsa/dsa.go ++++ b/src/crypto/dsa/dsa.go +@@ -279,6 +279,9 @@ func Verify(pub *PublicKey, hash []byte, r, s *big.Int) bool { + } + + w := new(big.Int).ModInverse(s, pub.Q) ++ if w == nil { ++ return false ++ } + + n := pub.Q.BitLen() + if n&7 != 0 { diff --git a/buildroot/package/go/go.hash b/buildroot/package/go/go.hash index 77aa273aa..2b6248e92 100644 --- a/buildroot/package/go/go.hash +++ b/buildroot/package/go/go.hash @@ -1,3 +1,3 @@ # From https://golang.org/dl/ -sha256 ee80684b352f8d6b49d804d4e615f015ae92da41c4096cfee89ed4783b2498e3 go1.11.9.src.tar.gz +sha256 5032095fd3f641cafcce164f551e5ae873785ce7b07ca7c143aecd18f7ba4076 go1.11.13.src.tar.gz sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 LICENSE diff --git a/buildroot/package/go/go.mk b/buildroot/package/go/go.mk index 6b8b0de6b..f510440a8 100644 --- a/buildroot/package/go/go.mk +++ b/buildroot/package/go/go.mk @@ -4,7 +4,7 @@ # ################################################################################ -GO_VERSION = 1.11.9 +GO_VERSION = 1.11.13 GO_SITE = https://storage.googleapis.com/golang GO_SOURCE = go$(GO_VERSION).src.tar.gz diff --git a/buildroot/package/gob2/gob2.hash b/buildroot/package/gob2/gob2.hash index 3678bdd5c..7edf518f3 100644 --- a/buildroot/package/gob2/gob2.hash +++ b/buildroot/package/gob2/gob2.hash @@ -1,2 +1,4 @@ # Locally calculated sha256 f7ee84c07ca88ae96e5a60461957cc4dd0aa69d61804433d1c85de3d50be8026 gob2-2.0.20.tar.xz +sha256 b8a2f73f743dc1a51aff23f1aacbca4b868564db52496fa3c0caba755bfd1eaf COPYING +sha256 7222386392eecf784e2f0c406f412f238cb6d25865a8447ae0947b32bb569889 COPYING.generated-code diff --git a/buildroot/package/gob2/gob2.mk b/buildroot/package/gob2/gob2.mk index fe6067382..d0cce8fb7 100644 --- a/buildroot/package/gob2/gob2.mk +++ b/buildroot/package/gob2/gob2.mk @@ -7,6 +7,8 @@ GOB2_VERSION = 2.0.20 GOB2_SOURCE = gob2-$(GOB2_VERSION).tar.xz GOB2_SITE = http://ftp.5z.com/pub/gob +GOB2_LICENSE = GPL-2.0+ +GOB2_LICENSE_FILES = COPYING COPYING.generated-code HOST_GOB2_DEPENDENCIES = host-bison host-flex host-libglib2 $(eval $(host-autotools-package)) diff --git a/buildroot/package/gqview/Config.in b/buildroot/package/gqview/Config.in index c1df40cc1..a654dc41f 100644 --- a/buildroot/package/gqview/Config.in +++ b/buildroot/package/gqview/Config.in @@ -4,4 +4,4 @@ config BR2_PACKAGE_GQVIEW help GQview is an image viewer for Unix operating systems - http://prdownloads.sourceforge.net/gqview + http://gqview.sourceforge.net/ diff --git a/buildroot/package/gr-osmosdr/Config.in b/buildroot/package/gr-osmosdr/Config.in index aa6ef0d4c..f26380371 100644 --- a/buildroot/package/gr-osmosdr/Config.in +++ b/buildroot/package/gr-osmosdr/Config.in @@ -5,6 +5,8 @@ config BR2_PACKAGE_GR_OSMOSDR help GNU Radio block for interfacing with various radio hardware + http://osmocom.org/projects/osmosdr + if BR2_PACKAGE_GR_OSMOSDR config BR2_PACKAGE_GR_OSMOSDR_PYTHON diff --git a/buildroot/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk b/buildroot/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk index a86b137ce..a5df7c66b 100644 --- a/buildroot/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk +++ b/buildroot/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk @@ -15,6 +15,9 @@ GST1_RTSP_SERVER_DEPENDENCIES = \ gstreamer1 \ gst1-plugins-base \ gst1-plugins-good +GST1_RTSP_SERVER_CONF_OPTS = \ + --disable-examples \ + --disable-tests ifeq ($(BR2_PACKAGE_LIBCGROUP),y) GST1_RTSP_SERVER_DEPENDENCIES += libcgroup diff --git a/buildroot/package/gtkperf/Config.in b/buildroot/package/gtkperf/Config.in index 78c35e72e..a763e305c 100644 --- a/buildroot/package/gtkperf/Config.in +++ b/buildroot/package/gtkperf/Config.in @@ -7,3 +7,5 @@ config BR2_PACKAGE_GTKPERF predefined GTK+ widgets e.g. (opening comboboxes, toggling buttons, scrolling text yms.) and this way define the speed of device/platform. + + http://gtkperf.sourceforge.net/ diff --git a/buildroot/package/gtkperf/gtkperf.hash b/buildroot/package/gtkperf/gtkperf.hash index 819851dd0..72f35a26f 100644 --- a/buildroot/package/gtkperf/gtkperf.hash +++ b/buildroot/package/gtkperf/gtkperf.hash @@ -1,2 +1,3 @@ # Locally computed: sha256 9704344e732038eecbd007dd996a56293a6b027b5b76f3f036273a3fae1ab27b gtkperf_0.40.tar.gz +sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/buildroot/package/gtkperf/gtkperf.mk b/buildroot/package/gtkperf/gtkperf.mk index 1d1230f1e..cc0433984 100644 --- a/buildroot/package/gtkperf/gtkperf.mk +++ b/buildroot/package/gtkperf/gtkperf.mk @@ -7,8 +7,9 @@ GTKPERF_VERSION = 0.40 GTKPERF_SOURCE = gtkperf_$(GTKPERF_VERSION).tar.gz GTKPERF_SITE = http://downloads.sourceforge.net/project/gtkperf/gtkperf/$(GTKPERF_VERSION) -GTKPERF_DEPENDENCIES = libgtk2 +GTKPERF_DEPENDENCIES = libgtk2 $(TARGET_NLS_DEPENDENCIES) GTKPERF_LICENSE = GPL-2.0 GTKPERF_LICENSE_FILES = COPYING +GTKPERF_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) $(eval $(autotools-package)) diff --git a/buildroot/package/gupnp-tools/gupnp-tools.mk b/buildroot/package/gupnp-tools/gupnp-tools.mk index 8f95e04f9..06c7b1fd3 100644 --- a/buildroot/package/gupnp-tools/gupnp-tools.mk +++ b/buildroot/package/gupnp-tools/gupnp-tools.mk @@ -19,7 +19,10 @@ GUPNP_TOOLS_DEPENDENCIES = \ gssdp \ gupnp \ libsoup \ - libgtk3 + libgtk3 \ + $(TARGET_NLS_DEPENDENCIES) + +GUPNP_TOOLS_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) ifeq ($(BR2_PACKAGE_GUPNP_AV),y) GUPNP_TOOLS_CONF_OPTS += --with-av diff --git a/buildroot/package/gvfs/gvfs.mk b/buildroot/package/gvfs/gvfs.mk index 47fbe0e85..c380a710f 100644 --- a/buildroot/package/gvfs/gvfs.mk +++ b/buildroot/package/gvfs/gvfs.mk @@ -9,13 +9,17 @@ GVFS_VERSION = $(GVFS_VERSION_MAJOR).4 GVFS_SOURCE = gvfs-$(GVFS_VERSION).tar.xz GVFS_SITE = http://ftp.gnome.org/pub/GNOME/sources/gvfs/$(GVFS_VERSION_MAJOR) GVFS_INSTALL_STAGING = YES -GVFS_DEPENDENCIES = host-pkgconf host-libglib2 libglib2 dbus shared-mime-info +GVFS_DEPENDENCIES = host-pkgconf host-libglib2 libglib2 dbus shared-mime-info \ + $(TARGET_NLS_DEPENDENCIES) GVFS_LICENSE = LGPL-2.0+ GVFS_LICENSE_FILES = COPYING +GVFS_LIBS = $(TARGET_NLS_LIBS) # Export ac_cv_path_LIBGCRYPT_CONFIG unconditionally to prevent # build system from searching the host paths. -GVFS_CONF_ENV = ac_cv_path_LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config +GVFS_CONF_ENV = \ + ac_cv_path_LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config \ + LIBS="$(GVFS_LIBS)" # Most of these are missing library support GVFS_CONF_OPTS = \ @@ -57,6 +61,7 @@ GVFS_CONF_OPTS += \ --enable-archive \ --with-archive-includes=$(STAGING_DIR)/usr \ --with-archive-libs=$(STAGING_DIR)/usr +GVFS_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs libarchive` else GVFS_CONF_OPTS += --disable-archive endif diff --git a/buildroot/package/haproxy/haproxy.hash b/buildroot/package/haproxy/haproxy.hash index be3451d83..6060400de 100644 --- a/buildroot/package/haproxy/haproxy.hash +++ b/buildroot/package/haproxy/haproxy.hash @@ -1,5 +1,5 @@ # Locally computed: -sha256 ad46312fa1e38763863807d2c9304551c28ad91cff83f0c21a36756913c1c8e1 haproxy-1.9.1.tar.gz +sha256 adae40f963b03df0917edc44681064627f77683dcf7db66ef030672ad6d00547 haproxy-1.9.13.tar.gz sha256 0717ca51fceaa25ac9e5ccc62e0c727dcf27796057201fb5fded56a25ff6ca28 LICENSE sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a doc/lgpl.txt sha256 ddb9db7630752f8fdc6898f7c99a99eaeeac5213627ecb093df9c82f56175dc7 doc/gpl.txt diff --git a/buildroot/package/haproxy/haproxy.mk b/buildroot/package/haproxy/haproxy.mk index e382f61f8..aa440d7d6 100644 --- a/buildroot/package/haproxy/haproxy.mk +++ b/buildroot/package/haproxy/haproxy.mk @@ -5,7 +5,7 @@ ################################################################################ HAPROXY_VERSION_MAJOR = 1.9 -HAPROXY_VERSION = $(HAPROXY_VERSION_MAJOR).1 +HAPROXY_VERSION = $(HAPROXY_VERSION_MAJOR).13 HAPROXY_SITE = http://www.haproxy.org/download/$(HAPROXY_VERSION_MAJOR)/src HAPROXY_LICENSE = GPL-2.0+ and LGPL-2.1+ with exceptions HAPROXY_LICENSE_FILES = LICENSE doc/lgpl.txt doc/gpl.txt diff --git a/buildroot/package/haveged/haveged.hash b/buildroot/package/haveged/haveged.hash index d1133b693..fc7858787 100644 --- a/buildroot/package/haveged/haveged.hash +++ b/buildroot/package/haveged/haveged.hash @@ -1,2 +1,3 @@ -# From http://www.issihosts.com/haveged/verify/haveged-1.9.1.sha1 -sha1 ab7234b7f57dbb7d500a5ab3cbf0494715ce6499 haveged-1.9.1.tar.gz +# Locally calculated +sha256 4d4c046755476d3734ffb78772c242c25913ff0eb7509c143671dae6ec9d1189 haveged-1.9.6.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/buildroot/package/haveged/haveged.mk b/buildroot/package/haveged/haveged.mk index a645557bc..afb54df1a 100644 --- a/buildroot/package/haveged/haveged.mk +++ b/buildroot/package/haveged/haveged.mk @@ -4,8 +4,8 @@ # ################################################################################ -HAVEGED_VERSION = 1.9.1 -HAVEGED_SITE = http://www.issihosts.com/haveged +HAVEGED_VERSION = 1.9.6 +HAVEGED_SITE = $(call github,jirka-h,haveged,v$(HAVEGED_VERSION)) HAVEGED_LICENSE = GPL-3.0+ HAVEGED_LICENSE_FILES = COPYING diff --git a/buildroot/package/hicolor-icon-theme/Config.in b/buildroot/package/hicolor-icon-theme/Config.in index 10edbf886..5ef2cd226 100644 --- a/buildroot/package/hicolor-icon-theme/Config.in +++ b/buildroot/package/hicolor-icon-theme/Config.in @@ -7,3 +7,5 @@ config BR2_PACKAGE_HICOLOR_ICON_THEME standard directory structure for storing icons of third-party applications (i.e. the ones not available in usual icon themes). + + https://www.freedesktop.org/wiki/Software/icon-theme/ diff --git a/buildroot/package/ifenslave/Config.in b/buildroot/package/ifenslave/Config.in index 2203284db..d28e0f7c2 100644 --- a/buildroot/package/ifenslave/Config.in +++ b/buildroot/package/ifenslave/Config.in @@ -4,4 +4,4 @@ config BR2_PACKAGE_IFENSLAVE help Configure network interfaces for parallel routing (bonding) - http://anonscm.debian.org/cgit/collab-maint/ifenslave.git + https://salsa.debian.org/debian/ifenslave diff --git a/buildroot/package/ifplugd/ifplugd.mk b/buildroot/package/ifplugd/ifplugd.mk index c7874b49e..06b060741 100644 --- a/buildroot/package/ifplugd/ifplugd.mk +++ b/buildroot/package/ifplugd/ifplugd.mk @@ -6,7 +6,7 @@ IFPLUGD_VERSION = 0.28 IFPLUGD_SITE = http://0pointer.de/lennart/projects/ifplugd -IFPLUGD_LICENSE = GPL-2.0 +IFPLUGD_LICENSE = GPL-2.0+ IFPLUGD_LICENSE_FILES = LICENSE IFPLUGD_AUTORECONF = YES diff --git a/buildroot/package/imagemagick/imagemagick.hash b/buildroot/package/imagemagick/imagemagick.hash index e89aa557c..f95fa275d 100644 --- a/buildroot/package/imagemagick/imagemagick.hash +++ b/buildroot/package/imagemagick/imagemagick.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 2a1ca5f9c38e6596a5ee9fdbbaebba1d21b57618e892c72c8e4e63ced571af40 7.0.8-42.tar.gz +sha256 238ee17196fcb80bb58485910aaefc12d48f99e4043c2a28f06ff9588161c4e3 7.0.8-59.tar.gz sha256 5b47db932754743460eba7a226aea85b63e3408d3c7affb4d0117f70c9594ded LICENSE diff --git a/buildroot/package/imagemagick/imagemagick.mk b/buildroot/package/imagemagick/imagemagick.mk index 5ea79bed4..a0c91f918 100644 --- a/buildroot/package/imagemagick/imagemagick.mk +++ b/buildroot/package/imagemagick/imagemagick.mk @@ -4,7 +4,7 @@ # ################################################################################ -IMAGEMAGICK_VERSION = 7.0.8-42 +IMAGEMAGICK_VERSION = 7.0.8-59 IMAGEMAGICK_SOURCE = $(IMAGEMAGICK_VERSION).tar.gz IMAGEMAGICK_SITE = https://github.com/ImageMagick/ImageMagick/archive IMAGEMAGICK_LICENSE = Apache-2.0 @@ -181,6 +181,9 @@ HOST_IMAGEMAGICK_CONF_OPTS = \ --with-png \ --with-zlib +# uses clock_gettime, which was provided by librt in glibc < 2.17 +HOST_IMAGEMAGICK_CONF_ENV = LIBS="-lrt" + HOST_IMAGEMAGICK_DEPENDENCIES = \ host-libjpeg \ host-libpng \ diff --git a/buildroot/package/intel-microcode/intel-microcode.hash b/buildroot/package/intel-microcode/intel-microcode.hash index 257cc85c4..f9fce28b2 100644 --- a/buildroot/package/intel-microcode/intel-microcode.hash +++ b/buildroot/package/intel-microcode/intel-microcode.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 9e67903a5b62b51f5e031b59a8046d3dff226834d79899799943803481a55d20 intel-microcode-microcode-20190514a.tar.gz +sha256 0000f7cf96f2b07a1ba9d1fc0bcfcb49d0edb91f7d487a57a88c147e57c5873b intel-microcode-20191112.tar.gz sha256 1f8bf63fc2b1b486c507b98ff7d283c7eb58c7945746b94188a310d6787cbee5 license diff --git a/buildroot/package/intel-microcode/intel-microcode.mk b/buildroot/package/intel-microcode/intel-microcode.mk index dacb619a1..0492ace69 100644 --- a/buildroot/package/intel-microcode/intel-microcode.mk +++ b/buildroot/package/intel-microcode/intel-microcode.mk @@ -4,8 +4,8 @@ # ################################################################################ -INTEL_MICROCODE_VERSION = microcode-20190514a -INTEL_MICROCODE_SITE = $(call github,intel,Intel-Linux-Processor-Microcode-Data-Files,$(INTEL_MICROCODE_VERSION)) +INTEL_MICROCODE_VERSION = 20191112 +INTEL_MICROCODE_SITE = $(call github,intel,Intel-Linux-Processor-Microcode-Data-Files,microcode-$(INTEL_MICROCODE_VERSION)) INTEL_MICROCODE_LICENSE = PROPRIETARY INTEL_MICROCODE_LICENSE_FILES = license INTEL_MICROCODE_REDISTRIBUTE = NO diff --git a/buildroot/package/ipsec-tools/ipsec-tools.hash b/buildroot/package/ipsec-tools/ipsec-tools.hash index b12bea947..7a944eb8e 100644 --- a/buildroot/package/ipsec-tools/ipsec-tools.hash +++ b/buildroot/package/ipsec-tools/ipsec-tools.hash @@ -1,3 +1,6 @@ # From http://sourceforge.net/projects/ipsec-tools/files/ipsec-tools/0.8.2/ md5 d53ec14a0a3ece64e09e5e34b3350b41 ipsec-tools-0.8.2.tar.bz2 sha1 7d92cae9fde59fb4f125636698c43b0a3df3d0f0 ipsec-tools-0.8.2.tar.bz2 + +# Locally calculated +sha256 3f4af4aef0b2599928bee9875935b8fad8449ddbb98ea7da74c20c3dff5cdef7 src/setkey/setkey.c diff --git a/buildroot/package/ipsec-tools/ipsec-tools.mk b/buildroot/package/ipsec-tools/ipsec-tools.mk index 7ac6b5cb2..634d75266 100644 --- a/buildroot/package/ipsec-tools/ipsec-tools.mk +++ b/buildroot/package/ipsec-tools/ipsec-tools.mk @@ -7,6 +7,8 @@ IPSEC_TOOLS_VERSION = 0.8.2 IPSEC_TOOLS_SOURCE = ipsec-tools-$(IPSEC_TOOLS_VERSION).tar.bz2 IPSEC_TOOLS_SITE = http://sourceforge.net/projects/ipsec-tools/files/ipsec-tools/$(IPSEC_TOOLS_VERSION) +IPSEC_TOOLS_LICENSE = BSD-3-Clause +IPSEC_TOOLS_LICENSE_FILES = src/setkey/setkey.c IPSEC_TOOLS_INSTALL_STAGING = YES IPSEC_TOOLS_MAKE = $(MAKE1) IPSEC_TOOLS_DEPENDENCIES = openssl flex host-pkgconf host-flex host-bison diff --git a/buildroot/package/iptables/0001-ebtables-vlan-fix-userspace-kernel-headers-collision.patch b/buildroot/package/iptables/0001-ebtables-vlan-fix-userspace-kernel-headers-collision.patch deleted file mode 100644 index 37c6f96af..000000000 --- a/buildroot/package/iptables/0001-ebtables-vlan-fix-userspace-kernel-headers-collision.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 51d374ba41ae4f1bb851228c06b030b83dd2092f Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Tue, 13 Nov 2018 19:22:08 +0200 -Subject: [PATCH] ebtables: vlan: fix userspace/kernel headers collision - -Build with musl libc fails because of conflicting struct ethhdr -definitions: - -In file included from .../sysroot/usr/include/net/ethernet.h:10:0, - from ../iptables/nft-bridge.h:8, - from libebt_vlan.c:18: -.../sysroot/usr/include/netinet/if_ether.h:107:8: error: redefinition of ‘struct ethhdr’ - struct ethhdr { - ^~~~~~ -In file included from libebt_vlan.c:16:0: -.../sysroot/usr/include/linux/if_ether.h:160:8: note: originally defined here - struct ethhdr { - ^~~~~~ - -Include the userspace header first for the definition suppression logic -to do the right thing. - -Signed-off-by: Baruch Siach -Signed-off-by: Pablo Neira Ayuso ---- -Upstream status: commit 51d374ba41ae - - extensions/libebt_vlan.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/extensions/libebt_vlan.c b/extensions/libebt_vlan.c -index 4a2eb7126895..be269c6cdb4c 100644 ---- a/extensions/libebt_vlan.c -+++ b/extensions/libebt_vlan.c -@@ -12,6 +12,7 @@ - #include - #include - #include -+#include - #include - #include - #include "iptables/nft.h" --- -2.19.1 - diff --git a/buildroot/package/iptables/0002-xtables-monitor-fix-build-with-older-glibc.patch b/buildroot/package/iptables/0002-xtables-monitor-fix-build-with-older-glibc.patch deleted file mode 100644 index 18dbc28f9..000000000 --- a/buildroot/package/iptables/0002-xtables-monitor-fix-build-with-older-glibc.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 7c8791edac3e74f6ce0bf21f98bc820db8e55e62 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Fri, 16 Nov 2018 07:23:32 +0200 -Subject: [PATCH] xtables-monitor: fix build with older glibc - -glibc older than 2.19 only expose BSD style fields of struct tcphdr when -_BSD_SOURCE is define. Current glibc however, warn that _BSD_SOURCE is -deprecated. Migrate to the GNU style of tcphdr fields to make the code -compatible with any glibc version. - -Fix the following build failure: - -xtables-monitor.c: In function 'trace_print_packet': -xtables-monitor.c:406:43: error: 'const struct tcphdr' has no member named 'th_sport' - printf("SPORT=%d DPORT=%d ", ntohs(tcph->th_sport), ntohs(tcph->th_dport)); - ^ -xtables-monitor.c:406:66: error: 'const struct tcphdr' has no member named 'th_dport' - printf("SPORT=%d DPORT=%d ", ntohs(tcph->th_sport), ntohs(tcph->th_dport)); - ^ -... - -Signed-off-by: Baruch Siach -Signed-off-by: Florian Westphal ---- -Upstream status: commit 7c8791edac3e74 - - iptables/xtables-monitor.c | 30 ++++++++++++++---------------- - 1 file changed, 14 insertions(+), 16 deletions(-) - -diff --git a/iptables/xtables-monitor.c b/iptables/xtables-monitor.c -index 3b1ca777a28a..5d1611122df5 100644 ---- a/iptables/xtables-monitor.c -+++ b/iptables/xtables-monitor.c -@@ -403,26 +403,24 @@ static void trace_print_packet(const struct nftnl_trace *nlt, struct cb_arg *arg - case IPPROTO_UDP: - if (len < 4) - break; -- printf("SPORT=%d DPORT=%d ", ntohs(tcph->th_sport), ntohs(tcph->th_dport)); -+ printf("SPORT=%d DPORT=%d ", ntohs(tcph->source), ntohs(tcph->dest)); - break; - case IPPROTO_TCP: - if (len < sizeof(*tcph)) - break; -- printf("SPORT=%d DPORT=%d ", ntohs(tcph->th_sport), ntohs(tcph->th_dport)); -- if (tcph->th_flags & (TH_FIN|TH_SYN|TH_RST|TH_PUSH|TH_ACK|TH_URG)) { -- if (tcph->th_flags & TH_SYN) -- printf("SYN "); -- if (tcph->th_flags & TH_ACK) -- printf("ACK "); -- if (tcph->th_flags & TH_FIN) -- printf("FIN "); -- if (tcph->th_flags & TH_RST) -- printf("RST "); -- if (tcph->th_flags & TH_PUSH) -- printf("PSH "); -- if (tcph->th_flags & TH_URG) -- printf("URG "); -- } -+ printf("SPORT=%d DPORT=%d ", ntohs(tcph->source), ntohs(tcph->dest)); -+ if (tcph->syn) -+ printf("SYN "); -+ if (tcph->ack) -+ printf("ACK "); -+ if (tcph->fin) -+ printf("FIN "); -+ if (tcph->rst) -+ printf("RST "); -+ if (tcph->psh) -+ printf("PSH "); -+ if (tcph->urg) -+ printf("URG "); - break; - default: - break; --- -2.19.1 - diff --git a/buildroot/package/iptables/0003-include-fix-build-with-kernel-headers-before-4.2.patch b/buildroot/package/iptables/0003-include-fix-build-with-kernel-headers-before-4.2.patch deleted file mode 100644 index c5cd6437f..000000000 --- a/buildroot/package/iptables/0003-include-fix-build-with-kernel-headers-before-4.2.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 8d9d7e4b9ef4c6e6abab2cf35c747d7ca36824bd Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Fri, 16 Nov 2018 09:30:33 +0200 -Subject: [PATCH] include: fix build with kernel headers before 4.2 - -Commit 672accf1530 (include: update kernel netfilter header files) -updated linux/netfilter.h and brought with it the update from kernel -commit a263653ed798 (netfilter: don't pull include/linux/netfilter.h -from netns headers). This triggers conflict of headers that is fixed in -kernel commit 279c6c7fa64f (api: fix compatibility of linux/in.h with -netinet/in.h) included in kernel version 4.2. For earlier kernel headers -we need a workaround that prevents the headers conflict. - -Fixes the following build failure: - -In file included from .../sysroot/usr/include/netinet/ip.h:25:0, - from ../include/libiptc/ipt_kernel_headers.h:8, - from ../include/libiptc/libiptc.h:6, - from libip4tc.c:29: -.../sysroot/usr/include/linux/in.h:26:3: error: redeclaration of enumerator ‘IPPROTO_IP’ - IPPROTO_IP = 0, /* Dummy protocol for TCP */ - ^ -.../sysroot/usr/include/netinet/in.h:33:5: note: previous definition of ‘IPPROTO_IP’ was here - IPPROTO_IP = 0, /* Dummy protocol for TCP. */ - ^~~~~~~~~~ - -Signed-off-by: Baruch Siach -Signed-off-by: Florian Westphal ---- -Upstream status: commit 8d9d7e4b9ef4c6 - - include/linux/netfilter.h | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h -index c3f087ac680c..bacf8cd92116 100644 ---- a/include/linux/netfilter.h -+++ b/include/linux/netfilter.h -@@ -3,7 +3,9 @@ - - #include - -+#ifndef _NETINET_IN_H - #include -+#endif - #include - #include - --- -2.19.1 - diff --git a/buildroot/package/iptables/0004-xtables-monitor-fix-build-with-musl-libc.patch b/buildroot/package/iptables/0004-xtables-monitor-fix-build-with-musl-libc.patch deleted file mode 100644 index 0b6358b25..000000000 --- a/buildroot/package/iptables/0004-xtables-monitor-fix-build-with-musl-libc.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 90b0d3abfc0b4150b198eb17080d75acc5838a59 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Sat, 17 Nov 2018 22:20:08 +0200 -Subject: [PATCH] xtables-monitor: fix build with musl libc - -Commit 7c8791edac3 ("xtables-monitor: fix build with older glibc") -changed the code to use GNU style tcphdr fields. Unfortunately, musl -libc requires _GNU_SOURCE definition to expose these fields. - -Fix the following build failure: - -xtables-monitor.c: In function ‘trace_print_packet’: -xtables-monitor.c:406:43: error: ‘const struct tcphdr’ has no member named ‘source’ - printf("SPORT=%d DPORT=%d ", ntohs(tcph->source), ntohs(tcph->dest)); - ^~ -xtables-monitor.c:406:64: error: ‘const struct tcphdr’ has no member named ‘dest’ - printf("SPORT=%d DPORT=%d ", ntohs(tcph->source), ntohs(tcph->dest)); - ^~ -... - -Cc: Florian Westphal -Signed-off-by: Baruch Siach -Signed-off-by: Florian Westphal ---- -Upstream status: commit 90b0d3abfc0b - - iptables/xtables-monitor.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/iptables/xtables-monitor.c b/iptables/xtables-monitor.c -index 5d1611122df5..f835c5e503e0 100644 ---- a/iptables/xtables-monitor.c -+++ b/iptables/xtables-monitor.c -@@ -9,6 +9,7 @@ - * This software has been sponsored by Sophos Astaro - */ - -+#define _GNU_SOURCE - #include - #include - #include --- -2.19.1 - diff --git a/buildroot/package/iptables/0005-include-extend-the-headers-conflict-workaround-to-in.patch b/buildroot/package/iptables/0005-include-extend-the-headers-conflict-workaround-to-in.patch deleted file mode 100644 index 6b1ffbd63..000000000 --- a/buildroot/package/iptables/0005-include-extend-the-headers-conflict-workaround-to-in.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 23dee088cd54aae94f1b71046f2ab2b206eedd42 Mon Sep 17 00:00:00 2001 -Message-Id: <23dee088cd54aae94f1b71046f2ab2b206eedd42.1543092537.git.baruch@tkos.co.il> -From: Baruch Siach -Date: Sat, 24 Nov 2018 22:33:37 +0200 -Subject: [PATCH] include: extend the headers conflict workaround to in6.h - -Commit 8d9d7e4b9ef ("include: fix build with kernel headers before 4.2") -introduced a kernel/user headers conflict workaround that allows build -of iptables with kernel headers older than 4.2. This minor extension -allows build with kernel headers older than 3.12, which is the version -that introduced explicit IP headers synchronization. - -Cc: Florian Westphal -Signed-off-by: Baruch Siach ---- -Upstream status: https://www.spinics.net/lists/netfilter-devel/msg57029.html - - include/linux/netfilter.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h -index bacf8cd92116..042d8b1478e0 100644 ---- a/include/linux/netfilter.h -+++ b/include/linux/netfilter.h -@@ -5,8 +5,8 @@ - - #ifndef _NETINET_IN_H - #include --#endif - #include -+#endif - #include - - /* Responses from hook functions. */ --- -2.19.1 - diff --git a/buildroot/package/iptables/iptables.hash b/buildroot/package/iptables/iptables.hash index d84bd3af9..2e149aa11 100644 --- a/buildroot/package/iptables/iptables.hash +++ b/buildroot/package/iptables/iptables.hash @@ -1,4 +1,4 @@ # From https://netfilter.org/projects/iptables/downloads.html -sha256 a3778b50ed1a3256f9ca975de82c2204e508001fc2471238c8c97f3d1c4c12af iptables-1.8.2.tar.bz2 +sha256 a23cac034181206b4545f4e7e730e76e08b5f3dd78771ba9645a6756de9cdd80 iptables-1.8.3.tar.bz2 # Locally calculated sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/buildroot/package/iptables/iptables.mk b/buildroot/package/iptables/iptables.mk index 54494937a..ae5cf4ddd 100644 --- a/buildroot/package/iptables/iptables.mk +++ b/buildroot/package/iptables/iptables.mk @@ -4,7 +4,7 @@ # ################################################################################ -IPTABLES_VERSION = 1.8.2 +IPTABLES_VERSION = 1.8.3 IPTABLES_SOURCE = iptables-$(IPTABLES_VERSION).tar.bz2 IPTABLES_SITE = https://netfilter.org/projects/iptables/files IPTABLES_INSTALL_STAGING = YES diff --git a/buildroot/package/irssi/irssi.hash b/buildroot/package/irssi/irssi.hash index 0f298137b..6a91e1648 100644 --- a/buildroot/package/irssi/irssi.hash +++ b/buildroot/package/irssi/irssi.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -sha256 1b386ca026aa1875c380fd00ef1d24b71fb87cdae39ef5349ecca16c4567feac irssi-1.0.7.tar.xz +sha256 414fdee2ffaeb90a55f141b7fb3899608631dc891e2bc1f5e91ca31f1a621101 irssi-1.0.8.tar.xz # Locally calculated sha256 a1a27cb2ecee8d5378fbb3562f577104a445d6d66fee89286e16758305e63e2b COPYING diff --git a/buildroot/package/irssi/irssi.mk b/buildroot/package/irssi/irssi.mk index 611365f88..4d7268d29 100644 --- a/buildroot/package/irssi/irssi.mk +++ b/buildroot/package/irssi/irssi.mk @@ -4,7 +4,7 @@ # ################################################################################ -IRSSI_VERSION = 1.0.7 +IRSSI_VERSION = 1.0.8 IRSSI_SOURCE = irssi-$(IRSSI_VERSION).tar.xz # Do not use the github helper here. The generated tarball is *NOT* the # same as the one uploaded by upstream for the release. diff --git a/buildroot/package/iw/Config.in b/buildroot/package/iw/Config.in index fd73b2099..8a74e3b2a 100644 --- a/buildroot/package/iw/Config.in +++ b/buildroot/package/iw/Config.in @@ -5,7 +5,7 @@ config BR2_PACKAGE_IW help Utility for wireless devices using the mac80211 kernel stack - http://wireless.kernel.org/en/users/Documentation/iw + https://wireless.wiki.kernel.org/en/users/documentation/iw comment "iw needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/buildroot/package/jasper/0001-verify-data-range-CVE-2018-19541.patch b/buildroot/package/jasper/0001-verify-data-range-CVE-2018-19541.patch new file mode 100644 index 000000000..35b4299dc --- /dev/null +++ b/buildroot/package/jasper/0001-verify-data-range-CVE-2018-19541.patch @@ -0,0 +1,35 @@ +From 24fc4d6f01d2d4c8297d1bebec02360f796e01c2 Mon Sep 17 00:00:00 2001 +From: Michael Vetter +Date: Mon, 4 Nov 2019 18:17:44 +0100 +Subject: [PATCH] Verify range data in jp2_pclr_getdata + +This fixes CVE-2018-19541. +We need to verify the data is in the expected range. Otherwise we get +problems later. + +This is a better fix for https://github.com/mdadams/jasper/pull/199 +which caused segfaults under certain circumstances. + +Patch by Adam Majer +Signed-off-by: Michael Vetter +--- + src/libjasper/jp2/jp2_cod.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/src/libjasper/jp2/jp2_cod.c b/src/libjasper/jp2/jp2_cod.c +index 890e6ad..0f8d804 100644 +--- a/src/libjasper/jp2/jp2_cod.c ++++ b/src/libjasper/jp2/jp2_cod.c +@@ -855,6 +855,12 @@ static int jp2_pclr_getdata(jp2_box_t *box, jas_stream_t *in) + jp2_getuint8(in, &pclr->numchans)) { + return -1; + } ++ ++ // verify in range data as per I.5.3.4 - Palette box ++ if (pclr->numchans < 1 || pclr->numlutents < 1 || pclr->numlutents > 1024) { ++ return -1; ++ } ++ + lutsize = pclr->numlutents * pclr->numchans; + if (!(pclr->lutdata = jas_alloc2(lutsize, sizeof(int_fast32_t)))) { + return -1; diff --git a/buildroot/package/jasper/0002-check-null-in-jp2_decode-CVE-2018-19542.patch b/buildroot/package/jasper/0002-check-null-in-jp2_decode-CVE-2018-19542.patch new file mode 100644 index 000000000..515a6162c --- /dev/null +++ b/buildroot/package/jasper/0002-check-null-in-jp2_decode-CVE-2018-19542.patch @@ -0,0 +1,24 @@ +From fc62d1b7164ded2405fd6a0604548b34a5a77462 Mon Sep 17 00:00:00 2001 +From: Timothy Lyanguzov +Date: Mon, 18 Mar 2019 16:46:24 +1300 +Subject: [PATCH] Fix CVE-2018-19542: Check for NULL pointer in jp2_decode + +Signed-off-by: Michael Vetter +--- + src/libjasper/jp2/jp2_dec.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/src/libjasper/jp2/jp2_dec.c b/src/libjasper/jp2/jp2_dec.c +index 03b0eaf..a535c19 100644 +--- a/src/libjasper/jp2/jp2_dec.c ++++ b/src/libjasper/jp2/jp2_dec.c +@@ -388,6 +388,9 @@ jas_image_t *jp2_decode(jas_stream_t *in, const char *optstr) + jas_image_setcmpttype(dec->image, newcmptno, jp2_getct(jas_image_clrspc(dec->image), 0, channo + 1)); + } + #endif ++ } else { ++ jas_eprintf("error: invalid MTYP in CMAP box\n"); ++ goto error; + } + } + } diff --git a/buildroot/package/jasper/0003-test-asclen-CVE-2018-19540.patch b/buildroot/package/jasper/0003-test-asclen-CVE-2018-19540.patch new file mode 100644 index 000000000..9401da511 --- /dev/null +++ b/buildroot/package/jasper/0003-test-asclen-CVE-2018-19540.patch @@ -0,0 +1,29 @@ +From e38454aa1a15b78c028a778fc8bfba3587e25c25 Mon Sep 17 00:00:00 2001 +From: Michael Vetter +Date: Fri, 15 Mar 2019 11:01:02 +0100 +Subject: [PATCH] Make sure asclen is at least 1 + +If txtdesc->asclen is < 1, the array index of txtdesc->ascdata will be negative which causes the heap based overflow. + +Regards CVE-2018-19540. +Regards https://github.com/mdadams/jasper/issues/182 bug#3 +Fix by Markus Koschany . +From https://gist.github.com/apoleon/13598a45bf6522f6a79b77a629205823 +Signed-off-by: Michael Vetter +--- + src/libjasper/base/jas_icc.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/libjasper/base/jas_icc.c b/src/libjasper/base/jas_icc.c +index 4607930..762c0e8 100644 +--- a/src/libjasper/base/jas_icc.c ++++ b/src/libjasper/base/jas_icc.c +@@ -1104,6 +1104,8 @@ static int jas_icctxtdesc_input(jas_iccattrval_t *attrval, jas_stream_t *in, + if (jas_stream_read(in, txtdesc->ascdata, txtdesc->asclen) != + JAS_CAST(int, txtdesc->asclen)) + goto error; ++ if (txtdesc->asclen < 1) ++ goto error; + txtdesc->ascdata[txtdesc->asclen - 1] = '\0'; + if (jas_iccgetuint32(in, &txtdesc->uclangcode) || + jas_iccgetuint32(in, &txtdesc->uclen)) diff --git a/buildroot/package/jasper/jasper.hash b/buildroot/package/jasper/jasper.hash index 4fea367eb..7e9ce0ea9 100644 --- a/buildroot/package/jasper/jasper.hash +++ b/buildroot/package/jasper/jasper.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 85266eea728f8b14365db9eaf1edc7be4c348704e562bb05095b9a077cf1a97b jasper-version-2.0.14.tar.gz +sha256 f1d8b90f231184d99968f361884e2054a1714fdbbd9944ba1ae4ebdcc9bbfdb1 jasper-2.0.16.tar.gz sha256 4ad1bb42aff888c4403d792e6e2c5f1716d6c279fea70b296333c9d577d30b81 LICENSE diff --git a/buildroot/package/jasper/jasper.mk b/buildroot/package/jasper/jasper.mk index 31fded779..287c35888 100644 --- a/buildroot/package/jasper/jasper.mk +++ b/buildroot/package/jasper/jasper.mk @@ -4,8 +4,8 @@ # ################################################################################ -JASPER_VERSION = version-2.0.14 -JASPER_SITE = $(call github,mdadams,jasper,$(JASPER_VERSION)) +JASPER_VERSION = 2.0.16 +JASPER_SITE = $(call github,mdadams,jasper,version-$(JASPER_VERSION)) JASPER_INSTALL_STAGING = YES JASPER_LICENSE = JasPer-2.0 JASPER_LICENSE_FILES = LICENSE diff --git a/buildroot/package/joe/joe.mk b/buildroot/package/joe/joe.mk index 3d0e9f776..3aef8e4c8 100644 --- a/buildroot/package/joe/joe.mk +++ b/buildroot/package/joe/joe.mk @@ -6,7 +6,7 @@ JOE_VERSION = 4.4 JOE_SITE = http://downloads.sourceforge.net/project/joe-editor/JOE%20sources/joe-$(JOE_VERSION) -JOE_LICENSE = GPL-1.0+ +JOE_LICENSE = GPL-2.0+ JOE_LICENSE_FILES = COPYING ifeq ($(BR2_PACKAGE_NCURSES),y) diff --git a/buildroot/package/jpeg-turbo/0001-tjLoadImage-Fix-int-overflow-segfault-w-big-BMP.patch b/buildroot/package/jpeg-turbo/0001-tjLoadImage-Fix-int-overflow-segfault-w-big-BMP.patch deleted file mode 100644 index a10fcf62a..000000000 --- a/buildroot/package/jpeg-turbo/0001-tjLoadImage-Fix-int-overflow-segfault-w-big-BMP.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 3d9c64e9f8aa1ee954d1d0bb3390fc894bb84da3 Mon Sep 17 00:00:00 2001 -From: DRC -Date: Tue, 1 Jan 2019 18:57:36 -0600 -Subject: [PATCH] tjLoadImage(): Fix int overflow/segfault w/big BMP - -Fixes #304 - -[baruch: drop the ChangeLog.md hunk] -Signed-off-by: Baruch Siach ---- -Upstream status: commit 3d9c64e9f8aa - - ChangeLog.md | 4 ++++ - turbojpeg.c | 9 ++++++--- - 2 files changed, 10 insertions(+), 3 deletions(-) - -diff --git a/turbojpeg.c b/turbojpeg.c -index 90a9ce6a0be8..3f7cd640677f 100644 ---- a/turbojpeg.c -+++ b/turbojpeg.c -@@ -1,5 +1,5 @@ - /* -- * Copyright (C)2009-2018 D. R. Commander. All Rights Reserved. -+ * Copyright (C)2009-2019 D. R. Commander. All Rights Reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: -@@ -1960,7 +1960,8 @@ DLLEXPORT unsigned char *tjLoadImage(const char *filename, int *width, - int align, int *height, int *pixelFormat, - int flags) - { -- int retval = 0, tempc, pitch; -+ int retval = 0, tempc; -+ size_t pitch; - tjhandle handle = NULL; - tjinstance *this; - j_compress_ptr cinfo = NULL; -@@ -2013,7 +2014,9 @@ DLLEXPORT unsigned char *tjLoadImage(const char *filename, int *width, - *pixelFormat = cs2pf[cinfo->in_color_space]; - - pitch = PAD((*width) * tjPixelSize[*pixelFormat], align); -- if ((dstBuf = (unsigned char *)malloc(pitch * (*height))) == NULL) -+ if ((unsigned long long)pitch * (unsigned long long)(*height) > -+ (unsigned long long)((size_t)-1) || -+ (dstBuf = (unsigned char *)malloc(pitch * (*height))) == NULL) - _throwg("tjLoadImage(): Memory allocation failure"); - - if (setjmp(this->jerr.setjmp_buffer)) { --- -2.20.1 - diff --git a/buildroot/package/jpeg-turbo/0002-wrbmp.c-Don-t-allow-quantization-w-non-RGB-CS.patch b/buildroot/package/jpeg-turbo/0002-wrbmp.c-Don-t-allow-quantization-w-non-RGB-CS.patch deleted file mode 100644 index 3e4e5bd08..000000000 --- a/buildroot/package/jpeg-turbo/0002-wrbmp.c-Don-t-allow-quantization-w-non-RGB-CS.patch +++ /dev/null @@ -1,39 +0,0 @@ -From f8cca819a4fb42aafa5f70df43c45e8c416d716f Mon Sep 17 00:00:00 2001 -From: DRC -Date: Tue, 1 Jan 2019 20:32:40 -0600 -Subject: [PATCH] wrbmp.c: Don't allow quantization w/ non-RGB CS - -If cinfo->quantize_colors == 1, then jpeg_calc_output_dimensions() will -set cinfo->output_components to 1, and if cinfo->out_color_space is not -RGB (or extended RGB), hilarity will ensue. - -Fixes #305 - -[baruch: drop the ChangeLog.md hunk] -Signed-off-by: Baruch Siach ---- -Upstream status: commit f8cca819a4 - - ChangeLog.md | 4 ++++ - wrbmp.c | 5 +++-- - 2 files changed, 7 insertions(+), 2 deletions(-) - -diff --git a/wrbmp.c b/wrbmp.c -index 4bf81426b0ef..239f64eb3c3f 100644 ---- a/wrbmp.c -+++ b/wrbmp.c -@@ -502,8 +502,9 @@ jinit_write_bmp(j_decompress_ptr cinfo, boolean is_os2, - dest->pub.put_pixel_rows = put_gray_rows; - else - dest->pub.put_pixel_rows = put_pixel_rows; -- } else if (cinfo->out_color_space == JCS_RGB565 || -- cinfo->out_color_space == JCS_CMYK) { -+ } else if (!cinfo->quantize_colors && -+ (cinfo->out_color_space == JCS_RGB565 || -+ cinfo->out_color_space == JCS_CMYK)) { - dest->pub.put_pixel_rows = put_pixel_rows; - } else { - ERREXIT(cinfo, JERR_BMP_COLORSPACE); --- -2.20.1 - diff --git a/buildroot/package/jpeg-turbo/jpeg-turbo.hash b/buildroot/package/jpeg-turbo/jpeg-turbo.hash index 1779324c5..ea6060f2b 100644 --- a/buildroot/package/jpeg-turbo/jpeg-turbo.hash +++ b/buildroot/package/jpeg-turbo/jpeg-turbo.hash @@ -1,7 +1,7 @@ -# From https://sourceforge.net/projects/libjpeg-turbo/files/2.0.1/ -sha1 7ea4a288bccbb5a2d5bfad5fb328d4a839853f4e libjpeg-turbo-2.0.1.tar.gz -md5 1b05a66aa9b006fd04ed29f408e68f46 libjpeg-turbo-2.0.1.tar.gz +# From https://sourceforge.net/projects/libjpeg-turbo/files/2.0.3/ +sha1 539363a444f92421c098a1a3e7cebfda48d4cfb3 libjpeg-turbo-2.0.3.tar.gz +md5 bd07fddf26f9def7bab02739eb655116 libjpeg-turbo-2.0.3.tar.gz # Locally computed -sha256 e5f86cec31df1d39596e0cca619ab1b01f99025a27dafdfc97a30f3a12f866ff libjpeg-turbo-2.0.1.tar.gz -sha256 8412238c5ad95965cf3c3197791e9dea8b5fae505d133449e33ee2fa754fe61e LICENSE.md +sha256 4246de500544d4ee408ee57048aa4aadc6f165fc17f141da87669f20ed3241b7 libjpeg-turbo-2.0.3.tar.gz +sha256 69e570a251515ced17d4492256d57c89db77ed949652f88a44c80c1ca9607920 LICENSE.md sha256 82fece2bff2669c476495f0fe70096b154e8bc5b40916a64e99836d9a01c3110 README.ijg diff --git a/buildroot/package/jpeg-turbo/jpeg-turbo.mk b/buildroot/package/jpeg-turbo/jpeg-turbo.mk index b848b6689..0c75cf1db 100644 --- a/buildroot/package/jpeg-turbo/jpeg-turbo.mk +++ b/buildroot/package/jpeg-turbo/jpeg-turbo.mk @@ -4,7 +4,7 @@ # ################################################################################ -JPEG_TURBO_VERSION = 2.0.1 +JPEG_TURBO_VERSION = 2.0.3 JPEG_TURBO_SOURCE = libjpeg-turbo-$(JPEG_TURBO_VERSION).tar.gz JPEG_TURBO_SITE = https://downloads.sourceforge.net/project/libjpeg-turbo/$(JPEG_TURBO_VERSION) JPEG_TURBO_LICENSE = IJG (libjpeg), BSD-3-Clause (TurboJPEG), Zlib (SIMD) diff --git a/buildroot/package/json-glib/json-glib.mk b/buildroot/package/json-glib/json-glib.mk index 77c0c4532..5c1fca3fd 100644 --- a/buildroot/package/json-glib/json-glib.mk +++ b/buildroot/package/json-glib/json-glib.mk @@ -17,4 +17,8 @@ JSON_GLIB_DEPENDENCIES = \ host-pkgconf \ libglib2 +JSON_GLIB_CONF_OPTS = -Dintrospection=false + +JSON_GLIB_LDFLAGS = $(TARGET_LDFLAGS) $(TARGET_NLS_LIBS) + $(eval $(meson-package)) diff --git a/buildroot/package/kexec-lite/Config.in b/buildroot/package/kexec-lite/Config.in index cd0e30f2d..3e84f90d5 100644 --- a/buildroot/package/kexec-lite/Config.in +++ b/buildroot/package/kexec-lite/Config.in @@ -15,6 +15,8 @@ config BR2_PACKAGE_KEXEC_LITE This package is a tiny implementation of the kexec userspace components, for devicetree-based platforms. + https://github.com/antonblanchard/kexec-lite + comment "kexec-lite needs a uClibc or glibc toolchain w/ wchar, dynamic library" depends on BR2_powerpc || BR2_powerpc64 depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR \ diff --git a/buildroot/package/kf5/Config.in b/buildroot/package/kf5/Config.in index 2e50bce49..aecbb932f 100644 --- a/buildroot/package/kf5/Config.in +++ b/buildroot/package/kf5/Config.in @@ -6,6 +6,8 @@ menuconfig BR2_PACKAGE_KF5 This option enables the KF5 KDE Frameworks. Sub-options allow to select which modules should be built. + https://techbase.kde.org/KDE_Frameworks + if BR2_PACKAGE_KF5 source "package/kf5/kf5-extra-cmake-modules/Config.in" source "package/kf5/kf5-kcoreaddons/Config.in" diff --git a/buildroot/package/kf5/kf5-extra-cmake-modules/kf5-extra-cmake-modules.mk b/buildroot/package/kf5/kf5-extra-cmake-modules/kf5-extra-cmake-modules.mk index 7b96e1f1b..3c4281b96 100644 --- a/buildroot/package/kf5/kf5-extra-cmake-modules/kf5-extra-cmake-modules.mk +++ b/buildroot/package/kf5/kf5-extra-cmake-modules/kf5-extra-cmake-modules.mk @@ -8,7 +8,7 @@ KF5_EXTRA_CMAKE_MODULES_VERSION = $(KF5_VERSION) KF5_EXTRA_CMAKE_MODULES_SITE = $(KF5_SITE) KF5_EXTRA_CMAKE_MODULES_SOURCE = extra-cmake-modules-$(KF5_EXTRA_CMAKE_MODULES_VERSION).tar.xz KF5_EXTRA_CMAKE_MODULES_LICENSE = BSD-3-Clause -KF5_EXTRA_CMAKE_MODULES_LICENSE_FILE = COPYING-CMAKE-SCRIPTS +KF5_EXTRA_CMAKE_MODULES_LICENSE_FILES = COPYING-CMAKE-SCRIPTS KF5_EXTRA_CMAKE_MODULES_DEPENDENCIES = host-pkgconf KF5_EXTRA_CMAKE_MODULES_INSTALL_STAGING = YES diff --git a/buildroot/package/kf5/kf5-modemmanager-qt/kf5-modemmanager-qt.mk b/buildroot/package/kf5/kf5-modemmanager-qt/kf5-modemmanager-qt.mk index 20fbc102c..2a782b35e 100644 --- a/buildroot/package/kf5/kf5-modemmanager-qt/kf5-modemmanager-qt.mk +++ b/buildroot/package/kf5/kf5-modemmanager-qt/kf5-modemmanager-qt.mk @@ -8,7 +8,7 @@ KF5_MODEMMANAGER_QT_VERSION = $(KF5_VERSION) KF5_MODEMMANAGER_QT_SITE = $(KF5_SITE) KF5_MODEMMANAGER_QT_SOURCE = modemmanager-qt-$(KF5_MODEMMANAGER_QT_VERSION).tar.xz KF5_MODEMMANAGER_QT_LICENSE = LGPL-2.1+ -KF5_MODEMMANAGER_QT_LICENSE_FILE = COPYING.LIB +KF5_MODEMMANAGER_QT_LICENSE_FILES = COPYING.LIB KF5_MODEMMANAGER_QT_DEPENDENCIES = kf5-extra-cmake-modules modem-manager qt5base KF5_MODEMMANAGER_QT_INSTALL_STAGING = YES diff --git a/buildroot/package/kf5/kf5-networkmanager-qt/kf5-networkmanager-qt.mk b/buildroot/package/kf5/kf5-networkmanager-qt/kf5-networkmanager-qt.mk index 52e70e3c4..c383f98e9 100644 --- a/buildroot/package/kf5/kf5-networkmanager-qt/kf5-networkmanager-qt.mk +++ b/buildroot/package/kf5/kf5-networkmanager-qt/kf5-networkmanager-qt.mk @@ -8,7 +8,7 @@ KF5_NETWORKMANAGER_QT_VERSION = $(KF5_VERSION) KF5_NETWORKMANAGER_QT_SITE = $(KF5_SITE) KF5_NETWORKMANAGER_QT_SOURCE = networkmanager-qt-$(KF5_NETWORKMANAGER_QT_VERSION).tar.xz KF5_NETWORKMANAGER_QT_LICENSE = LGPL-2.1+ -KF5_NETWORKMANAGER_QT_LICENSE_FILE = COPYING.LIB +KF5_NETWORKMANAGER_QT_LICENSE_FILES = COPYING.LIB KF5_NETWORKMANAGER_QT_DEPENDENCIES = kf5-extra-cmake-modules network-manager qt5base KF5_NETWORKMANAGER_QT_INSTALL_STAGING = YES diff --git a/buildroot/package/kodi-jsonschemabuilder/kodi-jsonschemabuilder.mk b/buildroot/package/kodi-jsonschemabuilder/kodi-jsonschemabuilder.mk index fcf4888a9..713d415fe 100644 --- a/buildroot/package/kodi-jsonschemabuilder/kodi-jsonschemabuilder.mk +++ b/buildroot/package/kodi-jsonschemabuilder/kodi-jsonschemabuilder.mk @@ -9,6 +9,7 @@ KODI_JSONSCHEMABUILDER_VERSION = 17.6-Krypton KODI_JSONSCHEMABUILDER_SITE = $(call github,xbmc,xbmc,$(KODI_JSONSCHEMABUILDER_VERSION)) KODI_JSONSCHEMABUILDER_SOURCE = kodi-$(KODI_JSONSCHEMABUILDER_VERSION).tar.gz +KODI_JSONSCHEMABUILDER_DL_SUBDIR = kodi KODI_JSONSCHEMABUILDER_LICENSE = GPL-2.0 KODI_JSONSCHEMABUILDER_LICENSE_FILES = LICENSE.GPL HOST_KODI_JSONSCHEMABUILDER_SUBDIR = tools/depends/native/JsonSchemaBuilder diff --git a/buildroot/package/kodi-texturepacker/kodi-texturepacker.mk b/buildroot/package/kodi-texturepacker/kodi-texturepacker.mk index 31e3580ae..bb35252b9 100644 --- a/buildroot/package/kodi-texturepacker/kodi-texturepacker.mk +++ b/buildroot/package/kodi-texturepacker/kodi-texturepacker.mk @@ -9,6 +9,7 @@ KODI_TEXTUREPACKER_VERSION = 17.6-Krypton KODI_TEXTUREPACKER_SITE = $(call github,xbmc,xbmc,$(KODI_TEXTUREPACKER_VERSION)) KODI_TEXTUREPACKER_SOURCE = kodi-$(KODI_TEXTUREPACKER_VERSION).tar.gz +KODI_TEXTUREPACKER_DL_SUBDIR = kodi KODI_TEXTUREPACKER_LICENSE = GPL-2.0 KODI_TEXTUREPACKER_LICENSE_FILES = LICENSE.GPL HOST_KODI_TEXTUREPACKER_SUBDIR = tools/depends/native/TexturePacker diff --git a/buildroot/package/kodi/Config.in b/buildroot/package/kodi/Config.in index 279b4ead0..28c56ac1b 100644 --- a/buildroot/package/kodi/Config.in +++ b/buildroot/package/kodi/Config.in @@ -81,12 +81,10 @@ menuconfig BR2_PACKAGE_KODI select BR2_PACKAGE_PYTHON_BZIP2 select BR2_PACKAGE_PYTHON_CURSES select BR2_PACKAGE_PYTHON_PYEXPAT - select BR2_PACKAGE_PYTHON_READLINE select BR2_PACKAGE_PYTHON_SQLITE select BR2_PACKAGE_PYTHON_SSL select BR2_PACKAGE_PYTHON_UNICODEDATA select BR2_PACKAGE_PYTHON_ZLIB - select BR2_PACKAGE_READLINE select BR2_PACKAGE_SQLITE select BR2_PACKAGE_TAGLIB select BR2_PACKAGE_TINYXML diff --git a/buildroot/package/kodi/kodi.hash b/buildroot/package/kodi/kodi.hash index 8018c67a3..2b2e5e64f 100644 --- a/buildroot/package/kodi/kodi.hash +++ b/buildroot/package/kodi/kodi.hash @@ -8,3 +8,5 @@ sha256 b6eb2d929ff56cb051152c32010afc5e7cf5fe8c5ae32dca412a2b46b6b57e34 2f12236 sha256 312b3d15bc448d24e92f4b2e7248409525eccc4e75776026d805478e51c5ef3d 981488f.tar.gz # Locally computed - libdvdread sha256 e7179b2054163652596a56301c9f025515cb08c6d6310b42b897c3ad11c0199b 17d99db.tar.gz +# Locally computed +sha256 89931c1fb1f3716694175763cf3221cfcd63d6935031cf6b4512d17ffe5d9860 LICENSE.GPL diff --git a/buildroot/package/kodi/kodi.mk b/buildroot/package/kodi/kodi.mk index 590af15b7..3ba89abcc 100644 --- a/buildroot/package/kodi/kodi.mk +++ b/buildroot/package/kodi/kodi.mk @@ -19,6 +19,7 @@ KODI_DEPENDENCIES = \ freetype \ gnutls \ host-gawk \ + host-gettext \ host-gperf \ host-kodi-jsonschemabuilder \ host-kodi-texturepacker \ @@ -38,7 +39,6 @@ KODI_DEPENDENCIES = \ openssl \ pcre \ python \ - readline \ sqlite \ taglib \ tinyxml \ diff --git a/buildroot/package/kvm-unit-tests/kvm-unit-tests.mk b/buildroot/package/kvm-unit-tests/kvm-unit-tests.mk index 92d67fb34..263706670 100644 --- a/buildroot/package/kvm-unit-tests/kvm-unit-tests.mk +++ b/buildroot/package/kvm-unit-tests/kvm-unit-tests.mk @@ -35,7 +35,13 @@ KVM_UNIT_TESTS_CONF_OPTS =\ # compiler. However, for x86-64, we use the host compiler, as # kvm-unit-tests builds 32 bit code, which Buildroot toolchains for # x86-64 cannot do. -ifneq ($(BR2_x86_64),y) +ifeq ($(BR2_x86_64),y) +# Arch Linux adds -fstack-protector even when building with -ffreestanding, but +# it doesn't link with the stack-protector library when -nostdlib is passed, +# which leads to a link error. Therefore, disable it explicitly to work around +# this bug in Arch Linux. https://bugs.archlinux.org/task/64270 +KVM_UNIT_TESTS_MAKE_OPTS += EXTRA_CFLAGS=-fno-stack-protector +else KVM_UNIT_TESTS_CONF_OPTS += --cross-prefix="$(TARGET_CROSS)" endif @@ -44,11 +50,12 @@ define KVM_UNIT_TESTS_CONFIGURE_CMDS endef define KVM_UNIT_TESTS_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) standalone + $(TARGET_MAKE_ENV) $(MAKE) $(KVM_UNIT_TESTS_MAKE_OPTS) -C $(@D) \ + standalone endef define KVM_UNIT_TESTS_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + $(TARGET_MAKE_ENV) $(MAKE) $(KVM_UNIT_TESTS_MAKE_OPTS) -C $(@D) \ DESTDIR=$(TARGET_DIR)/usr/share/kvm-unit-tests/ \ install endef diff --git a/buildroot/package/leafnode2/Config.in b/buildroot/package/leafnode2/Config.in index 93d3090a0..e244bdc45 100644 --- a/buildroot/package/leafnode2/Config.in +++ b/buildroot/package/leafnode2/Config.in @@ -9,9 +9,9 @@ config BR2_PACKAGE_LEAFNODE2 Leafnode-2 needs inetd, check chapter 14 of the documentation at: - http://www.dt.e-technik.uni-dortmund.de/~ma/leafnode/beta/leafnode-readme.txt + http://krusty.dt.e-technik.tu-dortmund.de/~ma/leafnode/beta/leafnode-readme.txt For example, you can add this line to inetd.conf: nntp stream tcp nowait news /usr/sbin/leafnode - http://www.dt.e-technik.tu-dortmund.de/~ma/leafnode/beta + http://krusty.dt.e-technik.tu-dortmund.de/~ma/leafnode/beta diff --git a/buildroot/package/lftp/lftp.mk b/buildroot/package/lftp/lftp.mk index 93a0bf5c3..b8a2b2430 100644 --- a/buildroot/package/lftp/lftp.mk +++ b/buildroot/package/lftp/lftp.mk @@ -25,6 +25,9 @@ endif ifeq ($(BR2_PACKAGE_EXPAT)$(BR2_PACKAGE_LFTP_PROTO_HTTP),yy) LFTP_DEPENDENCIES += expat +LFTP_CONF_OPTS += --with-expat=$(STAGING_DIR)/usr +else +LFTP_CONF_OPTS += --without-expat endif ifeq ($(BR2_PACKAGE_GNUTLS),y) diff --git a/buildroot/package/libarchive/0007-RAR-reader-fix-use-after-free.patch b/buildroot/package/libarchive/0007-RAR-reader-fix-use-after-free.patch new file mode 100644 index 000000000..5acbb77e9 --- /dev/null +++ b/buildroot/package/libarchive/0007-RAR-reader-fix-use-after-free.patch @@ -0,0 +1,36 @@ +From b8592ecba2f9e451e1f5cb7ab6dcee8b8e7b3f60 Mon Sep 17 00:00:00 2001 +From: Martin Matuska +Date: Sat, 11 May 2019 02:36:53 +0200 +Subject: [PATCH] RAR reader: fix use after free + +If read_data_compressed() returns ARCHIVE_FAILED, the caller is allowed +to continue with next archive headers. We need to set rar->start_new_table +after the ppmd7_context got freed, otherwise it won't be allocated again. + +Reported by: OSS-Fuzz issue 2582 + +[Peter: fixes CVE-2019-18408] +Signed-off-by: Peter Korsgaard +--- + libarchive/archive_read_support_format_rar.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/libarchive/archive_read_support_format_rar.c b/libarchive/archive_read_support_format_rar.c +index a8cc5c94..49360876 100644 +--- a/libarchive/archive_read_support_format_rar.c ++++ b/libarchive/archive_read_support_format_rar.c +@@ -1024,8 +1024,10 @@ archive_read_format_rar_read_data(struct archive_read *a, const void **buff, + case COMPRESS_METHOD_GOOD: + case COMPRESS_METHOD_BEST: + ret = read_data_compressed(a, buff, size, offset); +- if (ret != ARCHIVE_OK && ret != ARCHIVE_WARN) ++ if (ret != ARCHIVE_OK && ret != ARCHIVE_WARN) { + __archive_ppmd7_functions.Ppmd7_Free(&rar->ppmd7_context); ++ rar->start_new_table = 1; ++ } + break; + + default: +-- +2.20.1 + diff --git a/buildroot/package/libass/Config.in b/buildroot/package/libass/Config.in index 769068518..c654d8212 100644 --- a/buildroot/package/libass/Config.in +++ b/buildroot/package/libass/Config.in @@ -6,4 +6,4 @@ config BR2_PACKAGE_LIBASS libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format - http://code.google.com/p/libass/ + https://github.com/libass/libass diff --git a/buildroot/package/libbsd/0001-flopen-fix-build-with-musl-libc.patch b/buildroot/package/libbsd/0001-flopen-fix-build-with-musl-libc.patch deleted file mode 100644 index 6f0aeffed..000000000 --- a/buildroot/package/libbsd/0001-flopen-fix-build-with-musl-libc.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 8575450b9c1226fc38196b29e33c67f2b58cacf5 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Tue, 5 Jun 2018 19:18:47 +0300 -Subject: [PATCH] flopen: fix build with musl libc -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Commit 993828d84ee (Add flopenat() function from FreeBSD) dropped the -fcntl.h header. This breaks the build with musl libc: - -flopen.c: In function ‘vflopenat’: -flopen.c:60:14: error: ‘O_CREAT’ undeclared (first use in this function) - if (flags & O_CREAT) { - ^~~~~~~ - -Restore the fcntl.h header include to fix the build. - -Signed-off-by: Baruch Siach ---- -Upstream status: sent to libbsd@lists.freedesktop.org - - src/flopen.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/flopen.c b/src/flopen.c -index b9972c94ec90..ff20d074445b 100644 ---- a/src/flopen.c -+++ b/src/flopen.c -@@ -32,6 +32,7 @@ - #include - - #include -+#include - #include - #include - --- -2.17.1 - diff --git a/buildroot/package/libbsd/Config.in b/buildroot/package/libbsd/Config.in index 0f320302b..a163ce9b6 100644 --- a/buildroot/package/libbsd/Config.in +++ b/buildroot/package/libbsd/Config.in @@ -5,8 +5,6 @@ config BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS depends on !BR2_microblaze depends on !BR2_arc depends on !BR2_xtensa - # uClibc on noMMU doesn't provide __register_atfork() - depends on !(BR2_TOOLCHAIN_USES_UCLIBC && !BR2_USE_MMU) config BR2_PACKAGE_LIBBSD bool "libbsd" diff --git a/buildroot/package/libbsd/libbsd.hash b/buildroot/package/libbsd/libbsd.hash index 93af3944a..95887bd60 100644 --- a/buildroot/package/libbsd/libbsd.hash +++ b/buildroot/package/libbsd/libbsd.hash @@ -1,3 +1,3 @@ -# From https://lists.freedesktop.org/archives/libbsd/2018-May/000190.html -sha256 56d835742327d69faccd16955a60b6dcf30684a8da518c4eca0ac713b9e0a7a4 libbsd-0.9.1.tar.xz -sha256 df6d8e1b5b3a5b06376c658c8ad3afc82687f1c0e0404cec4738ad14b2675708 COPYING +# From https://lists.freedesktop.org/archives/libbsd/2019-August/000229.html +sha256 34b8adc726883d0e85b3118fa13605e179a62b31ba51f676136ecb2d0bc1a887 libbsd-0.10.0.tar.xz +sha256 933d14a6bc89ee1fd7adbf5b6ec97f6ff0e002549d0b0c164f8a8895371d78f8 COPYING diff --git a/buildroot/package/libbsd/libbsd.mk b/buildroot/package/libbsd/libbsd.mk index 2d78b8c5f..27bac6838 100644 --- a/buildroot/package/libbsd/libbsd.mk +++ b/buildroot/package/libbsd/libbsd.mk @@ -4,9 +4,9 @@ # ################################################################################ -LIBBSD_VERSION = 0.9.1 +LIBBSD_VERSION = 0.10.0 LIBBSD_SOURCE = libbsd-$(LIBBSD_VERSION).tar.xz -LIBBSD_SITE = https://archive.hadrons.org/software/libbsd +LIBBSD_SITE = https://libbsd.freedesktop.org/releases LIBBSD_LICENSE = BSD-2-Clause, BSD-3-Clause, BSD-4-Clause, BSD-5-Clause, \ MIT, ISC, Beerware LIBBSD_LICENSE_FILES = COPYING diff --git a/buildroot/package/libbson/Config.in b/buildroot/package/libbson/Config.in index 4305ca903..95f224e29 100644 --- a/buildroot/package/libbson/Config.in +++ b/buildroot/package/libbson/Config.in @@ -5,5 +5,7 @@ config BR2_PACKAGE_LIBBSON libbson is a library providing useful routines related to building, parsing, and iterating BSON documents. + http://mongoc.org/libbson/ + comment "libbson needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/buildroot/package/libcdaudio/0001-libcdaudio-enable-autoreconf.patch b/buildroot/package/libcdaudio/0001-libcdaudio-enable-autoreconf.patch new file mode 100644 index 000000000..ab2296c04 --- /dev/null +++ b/buildroot/package/libcdaudio/0001-libcdaudio-enable-autoreconf.patch @@ -0,0 +1,43 @@ +From 9c2873b1d9292bcf43c862b6777d41c40521424c Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Sun, 13 Jan 2019 22:27:42 +0100 +Subject: [PATCH] libcdaudio: enable autoreconf + +Fixes the following two autoreconf errors (by simple removing of the +two offending lines): + + configure.ac:20: error: automatic de-ANSI-fication support has been removed + + Makefile.am:2: error: automatic de-ANSI-fication support has been removed + +Signed-off-by: Peter Seiderer +--- + Makefile.am | 1 - + configure.ac | 1 - + 2 files changed, 2 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index f639dd8..a32cfe6 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -1,5 +1,4 @@ + ## Process this file with automake to produce Makefile.in +-AUTOMAKE_OPTIONS = ansi2knr + SUBDIRS = src + + bin_SCRIPTS = libcdaudio-config +diff --git a/configure.ac b/configure.ac +index bbdd42d..6699ceb 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -17,7 +17,6 @@ AM_CONFIG_HEADER(config.h) + AC_PROG_AWK + AC_PROG_CC + AC_PROG_CPP +-AM_C_PROTOTYPES + AM_PROG_CC_STDC + AC_PROG_INSTALL + AC_PROG_LN_S +-- +2.20.1 + diff --git a/buildroot/package/libcdaudio/libcdaudio.mk b/buildroot/package/libcdaudio/libcdaudio.mk index 5d421eba7..651289d7e 100644 --- a/buildroot/package/libcdaudio/libcdaudio.mk +++ b/buildroot/package/libcdaudio/libcdaudio.mk @@ -11,4 +11,7 @@ LIBCDAUDIO_CONFIG_SCRIPTS = libcdaudio-config LIBCDAUDIO_LICENSE = GPL-2.0+ LIBCDAUDIO_LICENSE_FILES = COPYING +# fix configure failure when the toolchain doesn't have C++ support +LIBCDAUDIO_AUTORECONF = YES + $(eval $(autotools-package)) diff --git a/buildroot/package/libcurl/libcurl.hash b/buildroot/package/libcurl/libcurl.hash index f5e90e0aa..8f2d0c058 100644 --- a/buildroot/package/libcurl/libcurl.hash +++ b/buildroot/package/libcurl/libcurl.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -# https://curl.haxx.se/download/curl-7.65.1.tar.xz.asc +# https://curl.haxx.se/download/curl-7.66.0.tar.xz.asc # with key 27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2 -sha256 f6c22074877f235aebc7c53057dbc7ee82358f8ae58bfb767e955c18c859a77a curl-7.65.1.tar.xz +sha256 dbb48088193016d079b97c5c3efde8efa56ada2ebf336e8a97d04eb8e2ed98c1 curl-7.66.0.tar.xz sha256 8c8824f50e73a021f5dde1fccbf69685939247399a33a32abab1fa448c9ddabb COPYING diff --git a/buildroot/package/libcurl/libcurl.mk b/buildroot/package/libcurl/libcurl.mk index abf7c0bf5..e78049cdc 100644 --- a/buildroot/package/libcurl/libcurl.mk +++ b/buildroot/package/libcurl/libcurl.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBCURL_VERSION = 7.65.1 +LIBCURL_VERSION = 7.66.0 LIBCURL_SOURCE = curl-$(LIBCURL_VERSION).tar.xz LIBCURL_SITE = https://curl.haxx.se/download LIBCURL_DEPENDENCIES = host-pkgconf \ diff --git a/buildroot/package/libdnet/libdnet.mk b/buildroot/package/libdnet/libdnet.mk index 00d9c4fd4..d1cc0bf15 100644 --- a/buildroot/package/libdnet/libdnet.mk +++ b/buildroot/package/libdnet/libdnet.mk @@ -13,6 +13,7 @@ LIBDNET_AUTORECONF = YES LIBDNET_CONF_OPTS = \ --with-gnu-ld \ --with-check=no +LIBDNET_CONFIG_SCRIPTS = dnet-config ifneq ($(BR2_PACKAGE_LIBDNET_PYTHON),) LIBDNET_DEPENDENCIES = python diff --git a/buildroot/package/libdvdnav/Config.in b/buildroot/package/libdvdnav/Config.in index 8cfcb4a6d..77cba5f13 100644 --- a/buildroot/package/libdvdnav/Config.in +++ b/buildroot/package/libdvdnav/Config.in @@ -7,7 +7,7 @@ config BR2_PACKAGE_LIBDVDNAV DVD navigation features such as DVD menus, multiangle playback and even interactive DVD games. - http://www.mplayerhq.hu + https://www.videolan.org/developers/libdvdnav.html comment "libdvdnav needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/buildroot/package/libdvdread/Config.in b/buildroot/package/libdvdread/Config.in index 91bec83a4..357905415 100644 --- a/buildroot/package/libdvdread/Config.in +++ b/buildroot/package/libdvdread/Config.in @@ -5,4 +5,4 @@ config BR2_PACKAGE_LIBDVDREAD libdvdread provides a simple foundation for reading DVD-Video images. - http://www.mplayerhq.hu/MPlayer/releases/dvdnav/ + https://www.videolan.org/developers/libdvdnav.html diff --git a/buildroot/package/liberation/Config.in b/buildroot/package/liberation/Config.in index b68166f63..8d6b3e78d 100644 --- a/buildroot/package/liberation/Config.in +++ b/buildroot/package/liberation/Config.in @@ -5,6 +5,8 @@ config BR2_PACKAGE_LIBERATION three most commonly used fonts on Microsoft systems: Times New Roman, Arial, and Courier New. + https://github.com/liberationfonts/liberation-fonts + if BR2_PACKAGE_LIBERATION config BR2_PACKAGE_LIBERATION_MONO diff --git a/buildroot/package/libftdi/libftdi.hash b/buildroot/package/libftdi/libftdi.hash index 5d9f8765d..8271ab277 100644 --- a/buildroot/package/libftdi/libftdi.hash +++ b/buildroot/package/libftdi/libftdi.hash @@ -1,2 +1,7 @@ # Locally computed (after checking the signature from http://www.intra2net.com/en/developer/libftdi/download.php) sha256 3176d5b5986438f33f5208e690a8bfe90941be501cc0a72118ce3d338d4b838e libftdi-0.20.tar.gz + +# Hash for license files: +sha256 6bd354f4b9beca001b1b5395be48cef1d749a3ed27dddb8114bf09eb0ab2d88c LICENSE +sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING.GPL +sha256 c340cbee4974bb96019e782f2279df016c92fb1e7f5299347e779d9acedbb991 COPYING.LIB diff --git a/buildroot/package/libftdi/libftdi.mk b/buildroot/package/libftdi/libftdi.mk index cdd77c2e6..257342622 100644 --- a/buildroot/package/libftdi/libftdi.mk +++ b/buildroot/package/libftdi/libftdi.mk @@ -6,6 +6,8 @@ LIBFTDI_VERSION = 0.20 LIBFTDI_SITE = http://www.intra2net.com/en/developer/libftdi/download +LIBFTDI_LICENSE = LGPL-2.1 (libftdi) +LIBFTDI_LICENSE_FILES = LICENSE COPYING.LIB LIBFTDI_DEPENDENCIES = libusb-compat libusb HOST_LIBFTDI_DEPENDENCIES = host-libusb-compat host-libusb LIBFTDI_INSTALL_STAGING = YES @@ -16,6 +18,8 @@ LIBFTDI_CONF_OPTS = --without-examples # configure detect it automaticaly so we need to force it ifeq ($(BR2_PACKAGE_LIBFTDI_CPP),y) +LIBFTDI_LICENSE += , GPL-2.0 with exception (ftdipp) +LIBFTDI_LICENSE_FILES += COPYING.GPL LIBFTDI_DEPENDENCIES += boost LIBFTDI_CONF_OPTS += --enable-libftdipp else diff --git a/buildroot/package/libftdi1/libftdi1.mk b/buildroot/package/libftdi1/libftdi1.mk index 014dd8401..9c3bafdbc 100644 --- a/buildroot/package/libftdi1/libftdi1.mk +++ b/buildroot/package/libftdi1/libftdi1.mk @@ -9,12 +9,14 @@ LIBFTDI1_SOURCE = libftdi1-$(LIBFTDI1_VERSION).tar.bz2 LIBFTDI1_SITE = http://www.intra2net.com/en/developer/libftdi/download LIBFTDI1_INSTALL_STAGING = YES LIBFTDI1_DEPENDENCIES = libusb -LIBFTDI1_LICENSE = LGPL-2.0 (libftdi1), GPL-2.0 with exception (ftdipp1) -LIBFTDI1_LICENSE_FILES = LICENSE COPYING.GPL COPYING.LIB +LIBFTDI1_LICENSE = LGPL-2.1 (libftdi1), MIT (libftdi1) +LIBFTDI1_LICENSE_FILES = LICENSE COPYING.LIB LIBFTDI1_CONFIG_SCRIPTS = libftdi1-config LIBFTDI1_CONF_OPTS = -DDOCUMENTATION=OFF -DEXAMPLES=OFF ifeq ($(BR2_PACKAGE_LIBFTDI1_LIBFTDIPP1),y) +LIBFTDI1_LICENSE += , GPL-2.0 with exception (libftdipp1) +LIBFTDI1_LICENSE_FILES += COPYING.GPL LIBFTDI1_DEPENDENCIES += boost LIBFTDI1_CONF_OPTS += -DFTDIPP=ON else @@ -30,6 +32,8 @@ endif ifeq ($(BR2_PACKAGE_LIBFTDI1_FDTI_EEPROM),y) # ftdi_eeprom optionally depends on libintl +LIBFTDI1_LICENSE += , GPL-2.0 (ftdi_eeprom) +LIBFTDI1_LICENSE_FILES += COPYING.GPL LIBFTDI1_DEPENDENCIES += libconfuse $(TARGET_NLS_DEPENDENCIES) LIBFTDI1_CONF_OPTS += -DFTDI_EEPROM=ON else diff --git a/buildroot/package/libgcrypt/0001-build-Don-t-default-to-underscore-yes-for-cross-buil.patch b/buildroot/package/libgcrypt/0001-build-Don-t-default-to-underscore-yes-for-cross-buil.patch new file mode 100644 index 000000000..032cb7c84 --- /dev/null +++ b/buildroot/package/libgcrypt/0001-build-Don-t-default-to-underscore-yes-for-cross-buil.patch @@ -0,0 +1,48 @@ +From 7fec3ac22efb86fce90a9edc5696e16ee88a65c7 Mon Sep 17 00:00:00 2001 +From: NIIBE Yutaka +Date: Wed, 24 Oct 2018 14:29:45 +0900 +Subject: [PATCH] build: Don't default to underscore=yes for cross-build. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +* acinclude.m4: Don't set ac_cv_sys_symbol_underscore +for cross build. + +-- + +It made sense in the past when cross compile were basically for a.out +system, but nowadays, it's better not to assume that. + +Fetched from: 0f4545b441b6fbdd6e9c4e95f5f2a367483e78ad + +Signed-off-by: NIIBE Yutaka +Signed-off-by: Jörg Krause +--- + acinclude.m4 | 8 ++------ + 1 file changed, 2 insertions(+), 6 deletions(-) + +diff --git a/acinclude.m4 b/acinclude.m4 +index fc208c53..6f7789d0 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -111,14 +111,10 @@ case "${host}" in + ac_cv_sys_symbol_underscore=yes + ;; + *) +- if test "$cross_compiling" = yes; then +- if test "x$ac_cv_sys_symbol_underscore" = x ; then +- ac_cv_sys_symbol_underscore=yes +- fi +- else ++ if test "$cross_compiling" != yes; then + tmp_do_check="yes" + fi +- ;; ++ ;; + esac + if test "$tmp_do_check" = "yes"; then + AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE]) +-- +2.22.0 + diff --git a/buildroot/package/libgcrypt/0001-reconfigure.patch b/buildroot/package/libgcrypt/0001-reconfigure.patch deleted file mode 100644 index 87d29a298..000000000 --- a/buildroot/package/libgcrypt/0001-reconfigure.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff --git a/configure b/configure -index 70a6d50..8f55d95 100755 ---- a/configure -+++ b/configure -@@ -22306,14 +22306,15 @@ case "${host}" in - i386-emx-os2 | i345686-pc-os2*emx | i386-pc-msdosdjgpp) - ac_cv_sys_symbol_underscore=yes - ;; -- *) -- if test "$cross_compiling" = yes; then -- if test "x$ac_cv_sys_symbol_underscore" = x ; then -- ac_cv_sys_symbol_underscore=yes -+ *)if test -z "$ac_cv_sys_symbol_underscore";then -+ if test "$cross_compiling" = yes; then -+ if test "x$ac_cv_sys_symbol_underscore" = x ; then -+ ac_cv_sys_symbol_underscore=yes -+ fi -+ else -+ tmp_do_check="yes" -+ fi - fi -- else -- tmp_do_check="yes" -- fi - ;; - esac - if test "$tmp_do_check" = "yes"; then diff --git a/buildroot/package/libgcrypt/0002-configure.ac-add-an-option-to-disable-tests.patch b/buildroot/package/libgcrypt/0002-configure.ac-add-an-option-to-disable-tests.patch new file mode 100644 index 000000000..21ff20a47 --- /dev/null +++ b/buildroot/package/libgcrypt/0002-configure.ac-add-an-option-to-disable-tests.patch @@ -0,0 +1,66 @@ +From 7fe1b8a53cc8c865c2a10dcd8f6cb4e51ccc6300 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Mon, 29 Jul 2019 12:19:10 +0200 +Subject: [PATCH] configure.ac: add an option to disable tests + +Add an option to allow the user to disable tests, this can be useful for +example when the toolchain does not provide thread. Indeed, in this +case, libgcrypt fails to build t-lock: + +t-lock.c: In function 'run_test': +t-lock.c:359:3: error: unknown type name 'pthread_t' + pthread_t rthread; + +Fixes: + - http://autobuild.buildroot.org/results/50a8ba572e3fafd3c6a39bd54bcfcaf78b5ad325 + +Signed-off-by: Fabrice Fontaine +--- + Makefile.am | 7 ++++++- + configure.ac | 10 ++++++++++ + 2 files changed, 16 insertions(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index 7fa4fa4d..f0bd90e4 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -39,9 +39,14 @@ else + doc = + endif + ++if BUILD_TESTS ++tests = tests ++else ++tests = ++endif + + DIST_SUBDIRS = m4 compat mpi cipher random src doc tests +-SUBDIRS = compat mpi cipher random src $(doc) tests ++SUBDIRS = compat mpi cipher random src $(doc) $(tests) + + EXTRA_DIST = autogen.sh autogen.rc README.GIT LICENSES \ + ChangeLog-2011 build-aux/ChangeLog-2011 doc/ChangeLog-2011 \ +diff --git a/configure.ac b/configure.ac +index e8c8cd39..1a6b61e5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2710,6 +2710,16 @@ AC_ARG_ENABLE([doc], AC_HELP_STRING([--disable-doc], + AM_CONDITIONAL([BUILD_DOC], [test "x$build_doc" != xno]) + + ++# ++# Option to disable building of tests ++# ++build_tests=yes ++AC_ARG_ENABLE([tests], AC_HELP_STRING([--disable-tests], ++ [do not build tests]), ++ build_tests=$enableval, build_tests=yes) ++AM_CONDITIONAL([BUILD_TESTS], [test "x$build_tests" != xno]) ++ ++ + # + # Provide information about the build. + # +-- +2.20.1 + diff --git a/buildroot/package/libgcrypt/libgcrypt.hash b/buildroot/package/libgcrypt/libgcrypt.hash index 000f26dd2..580bdf331 100644 --- a/buildroot/package/libgcrypt/libgcrypt.hash +++ b/buildroot/package/libgcrypt/libgcrypt.hash @@ -1,7 +1,7 @@ -# From https://lists.gnupg.org/pipermail/gnupg-announce/2018q4/000431.html -sha1 4a8ef9db6922f3a31992aca5640b4198a69b58fc libgcrypt-1.8.4.tar.bz2 +# From https://lists.gnupg.org/pipermail/gnupg-announce/2019q3/000440.html +sha1 2d8781e92f88706707a1e76fb628b499ad538a30 libgcrypt-1.8.5.tar.bz2 # Locally calculated after checking signature -# https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.8.4.tar.bz2.sig +# https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.8.5.tar.bz2.sig # using key D8692123C4065DEA5E0F3AB5249B39D24F25E3B6 -sha256 f638143a0672628fde0cad745e9b14deb85dffb175709cacc1f4fe24b93f2227 libgcrypt-1.8.4.tar.bz2 +sha256 3b4a2a94cb637eff5bdebbcaf46f4d95c4f25206f459809339cdada0eb577ac3 libgcrypt-1.8.5.tar.bz2 sha256 ca0061fc1381a3ab242310e4b3f56389f28e3d460eb2fd822ed7a21c6f030532 COPYING.LIB diff --git a/buildroot/package/libgcrypt/libgcrypt.mk b/buildroot/package/libgcrypt/libgcrypt.mk index 452cf17ce..d21513bd3 100644 --- a/buildroot/package/libgcrypt/libgcrypt.mk +++ b/buildroot/package/libgcrypt/libgcrypt.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBGCRYPT_VERSION = 1.8.4 +LIBGCRYPT_VERSION = 1.8.5 LIBGCRYPT_SOURCE = libgcrypt-$(LIBGCRYPT_VERSION).tar.bz2 LIBGCRYPT_LICENSE = LGPL-2.1+ LIBGCRYPT_LICENSE_FILES = COPYING.LIB @@ -13,9 +13,11 @@ LIBGCRYPT_INSTALL_STAGING = YES LIBGCRYPT_DEPENDENCIES = libgpg-error LIBGCRYPT_CONFIG_SCRIPTS = libgcrypt-config -LIBGCRYPT_CONF_ENV = \ - ac_cv_sys_symbol_underscore=no +# Patching acinclude.m4 in 0001 +# Patching configure.ac and Makefile.am in 0002 +LIBGCRYPT_AUTORECONF = YES LIBGCRYPT_CONF_OPTS = \ + --disable-tests \ --with-gpg-error-prefix=$(STAGING_DIR)/usr # Libgcrypt doesn't support assembly for coldfire diff --git a/buildroot/package/libgit2/libgit2.hash b/buildroot/package/libgit2/libgit2.hash index 41ab87bf4..2d06c26d2 100644 --- a/buildroot/package/libgit2/libgit2.hash +++ b/buildroot/package/libgit2/libgit2.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 0b7ca31cb959ff1b22afa0da8621782afe61f99242bf716c403802ffbdb21d51 libgit2-v0.27.4.tar.gz +sha256 adf17310b590e6e7618f070c742b5ee028aeeed2c60099bc4190c386b5060de1 libgit2-0.27.9.tar.gz sha256 d9a8038088df84fde493fa33a0f1e537252eeb9642122aa4b862690197152813 COPYING diff --git a/buildroot/package/libgit2/libgit2.mk b/buildroot/package/libgit2/libgit2.mk index 551e3dea6..25a93d72f 100644 --- a/buildroot/package/libgit2/libgit2.mk +++ b/buildroot/package/libgit2/libgit2.mk @@ -4,8 +4,8 @@ # ################################################################################ -LIBGIT2_VERSION = v0.27.4 -LIBGIT2_SITE = $(call github,libgit2,libgit2,$(LIBGIT2_VERSION)) +LIBGIT2_VERSION = 0.27.9 +LIBGIT2_SITE = $(call github,libgit2,libgit2,v$(LIBGIT2_VERSION)) LIBGIT2_LICENSE = GPL-2.0 with linking exception LIBGIT2_LICENSE_FILES = COPYING LIBGIT2_INSTALL_STAGING = YES diff --git a/buildroot/package/libglib2/0005-gfile-Limit-access-to-files-when-copying.patch b/buildroot/package/libglib2/0005-gfile-Limit-access-to-files-when-copying.patch new file mode 100644 index 000000000..750767dfb --- /dev/null +++ b/buildroot/package/libglib2/0005-gfile-Limit-access-to-files-when-copying.patch @@ -0,0 +1,56 @@ +From cf09035d361287dfadc93f09272ce68b4a9457ad Mon Sep 17 00:00:00 2001 +From: Ondrej Holy +Date: Thu, 23 May 2019 10:41:53 +0200 +Subject: [PATCH] gfile: Limit access to files when copying + +file_copy_fallback creates new files with default permissions and +set the correct permissions after the operation is finished. This +might cause that the files can be accessible by more users during +the operation than expected. Use G_FILE_CREATE_PRIVATE for the new +files to limit access to those files. + +(cherry picked from commit d8f8f4d637ce43f8699ba94c9b7648beda0ca174) +Signed-off-by: Peter Korsgaard +--- + gio/gfile.c | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/gio/gfile.c b/gio/gfile.c +index a67aad383..ff313ebf8 100644 +--- a/gio/gfile.c ++++ b/gio/gfile.c +@@ -3279,12 +3279,12 @@ file_copy_fallback (GFile *source, + out = (GOutputStream*)_g_local_file_output_stream_replace (_g_local_file_get_filename (G_LOCAL_FILE (destination)), + FALSE, NULL, + flags & G_FILE_COPY_BACKUP, +- G_FILE_CREATE_REPLACE_DESTINATION, +- info, ++ G_FILE_CREATE_REPLACE_DESTINATION | ++ G_FILE_CREATE_PRIVATE, info, + cancellable, error); + else + out = (GOutputStream*)_g_local_file_output_stream_create (_g_local_file_get_filename (G_LOCAL_FILE (destination)), +- FALSE, 0, info, ++ FALSE, G_FILE_CREATE_PRIVATE, info, + cancellable, error); + } + else if (flags & G_FILE_COPY_OVERWRITE) +@@ -3292,12 +3292,13 @@ file_copy_fallback (GFile *source, + out = (GOutputStream *)g_file_replace (destination, + NULL, + flags & G_FILE_COPY_BACKUP, +- G_FILE_CREATE_REPLACE_DESTINATION, ++ G_FILE_CREATE_REPLACE_DESTINATION | ++ G_FILE_CREATE_PRIVATE, + cancellable, error); + } + else + { +- out = (GOutputStream *)g_file_create (destination, 0, cancellable, error); ++ out = (GOutputStream *)g_file_create (destination, G_FILE_CREATE_PRIVATE, cancellable, error); + } + + if (!out) +-- +2.11.0 + diff --git a/buildroot/package/libglob/Config.in b/buildroot/package/libglob/Config.in index 029ed6a1d..7ae2bfd25 100644 --- a/buildroot/package/libglob/Config.in +++ b/buildroot/package/libglob/Config.in @@ -2,3 +2,5 @@ config BR2_PACKAGE_LIBGLOB bool "libglob" help OpenBSD implementation of glob(3). + + https://github.com/void-linux/libglob diff --git a/buildroot/package/libgpg-error/0001-gawk5-support.patch b/buildroot/package/libgpg-error/0001-gawk5-support.patch new file mode 100644 index 000000000..09d114c45 --- /dev/null +++ b/buildroot/package/libgpg-error/0001-gawk5-support.patch @@ -0,0 +1,162 @@ +From 7865041c77f4f7005282f10f9b6666b19072fbdf Mon Sep 17 00:00:00 2001 +From: NIIBE Yutaka +Date: Mon, 15 Apr 2019 15:10:44 +0900 +Subject: [PATCH] awk: Prepare for Gawk 5.0. + +* src/Makefile.am: Use pkg_namespace (instead of namespace). +* src/mkerrnos.awk: Likewise. +* lang/cl/mkerrcodes.awk: Don't escape # in regexp. +* src/mkerrcodes.awk, src/mkerrcodes1.awk, src/mkerrcodes2.awk: Ditto. + +Downloaded from +https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-libs/libgpg-error/files/libgpg-error-1.36-gawk5-support.patch + +Signed-off-by: Bernd Kuhls +-- + +In Gawk 5.0, regexp routines are replaced by Gnulib implementation, +which only allows escaping specific characters. + +GnuPG-bug-id: 4459 +Reported-by: Marius Schamschula +Signed-off-by: NIIBE Yutaka +--- + lang/cl/mkerrcodes.awk | 2 +- + src/Makefile.am | 2 +- + src/mkerrcodes.awk | 2 +- + src/mkerrcodes1.awk | 2 +- + src/mkerrcodes2.awk | 2 +- + src/mkerrnos.awk | 2 +- + src/mkstrtable.awk | 10 +++++----- + 7 files changed, 11 insertions(+), 11 deletions(-) + +diff --git a/lang/cl/mkerrcodes.awk b/lang/cl/mkerrcodes.awk +index ae29043..9a1fc18 100644 +--- a/lang/cl/mkerrcodes.awk ++++ b/lang/cl/mkerrcodes.awk +@@ -122,7 +122,7 @@ header { + } + + !header { +- sub (/\#.+/, ""); ++ sub (/#.+/, ""); + sub (/[ ]+$/, ""); # Strip trailing space and tab characters. + + if (/^$/) +diff --git a/src/Makefile.am b/src/Makefile.am +index ce1b882..f2590cb 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -293,7 +293,7 @@ code-from-errno.h: mkerrcodes$(EXEEXT_FOR_BUILD) Makefile + + errnos-sym.h: Makefile mkstrtable.awk errnos.in + $(AWK) -f $(srcdir)/mkstrtable.awk -v textidx=2 -v nogettext=1 \ +- -v prefix=GPG_ERR_ -v namespace=errnos_ \ ++ -v prefix=GPG_ERR_ -v pkg_namespace=errnos_ \ + $(srcdir)/errnos.in >$@ + + +diff --git a/src/mkerrcodes.awk b/src/mkerrcodes.awk +index 46d436c..e9c857c 100644 +--- a/src/mkerrcodes.awk ++++ b/src/mkerrcodes.awk +@@ -85,7 +85,7 @@ header { + } + + !header { +- sub (/\#.+/, ""); ++ sub (/#.+/, ""); + sub (/[ ]+$/, ""); # Strip trailing space and tab characters. + + if (/^$/) +diff --git a/src/mkerrcodes1.awk b/src/mkerrcodes1.awk +index a771a73..4578e29 100644 +--- a/src/mkerrcodes1.awk ++++ b/src/mkerrcodes1.awk +@@ -81,7 +81,7 @@ header { + } + + !header { +- sub (/\#.+/, ""); ++ sub (/#.+/, ""); + sub (/[ ]+$/, ""); # Strip trailing space and tab characters. + + if (/^$/) +diff --git a/src/mkerrcodes2.awk b/src/mkerrcodes2.awk +index ea58503..188f7a4 100644 +--- a/src/mkerrcodes2.awk ++++ b/src/mkerrcodes2.awk +@@ -91,7 +91,7 @@ header { + } + + !header { +- sub (/\#.+/, ""); ++ sub (/#.+/, ""); + sub (/[ ]+$/, ""); # Strip trailing space and tab characters. + + if (/^$/) +diff --git a/src/mkerrnos.awk b/src/mkerrnos.awk +index f79df66..15b1aad 100644 +--- a/src/mkerrnos.awk ++++ b/src/mkerrnos.awk +@@ -83,7 +83,7 @@ header { + } + + !header { +- sub (/\#.+/, ""); ++ sub (/#.+/, ""); + sub (/[ ]+$/, ""); # Strip trailing space and tab characters. + + if (/^$/) +diff --git a/src/mkstrtable.awk b/src/mkstrtable.awk +index c9de9c1..285e45f 100644 +--- a/src/mkstrtable.awk ++++ b/src/mkstrtable.awk +@@ -77,7 +77,7 @@ + # + # The variable prefix can be used to prepend a string to each message. + # +-# The variable namespace can be used to prepend a string to each ++# The variable pkg_namespace can be used to prepend a string to each + # variable and macro name. + + BEGIN { +@@ -102,7 +102,7 @@ header { + print "/* The purpose of this complex string table is to produce"; + print " optimal code with a minimum of relocations. */"; + print ""; +- print "static const char " namespace "msgstr[] = "; ++ print "static const char " pkg_namespace "msgstr[] = "; + header = 0; + } + else +@@ -110,7 +110,7 @@ header { + } + + !header { +- sub (/\#.+/, ""); ++ sub (/#.+/, ""); + sub (/[ ]+$/, ""); # Strip trailing space and tab characters. + + if (/^$/) +@@ -150,7 +150,7 @@ END { + else + print " gettext_noop (\"" last_msgstr "\");"; + print ""; +- print "static const int " namespace "msgidx[] ="; ++ print "static const int " pkg_namespace "msgidx[] ="; + print " {"; + for (i = 0; i < coded_msgs; i++) + print " " pos[i] ","; +@@ -158,7 +158,7 @@ END { + print " };"; + print ""; + print "static GPG_ERR_INLINE int"; +- print namespace "msgidxof (int code)"; ++ print pkg_namespace "msgidxof (int code)"; + print "{"; + print " return (0 ? 0"; + +-- +2.21.0 + diff --git a/buildroot/package/libgpg-error/libgpg-error.mk b/buildroot/package/libgpg-error/libgpg-error.mk index d26d92fb0..a34c85bff 100644 --- a/buildroot/package/libgpg-error/libgpg-error.mk +++ b/buildroot/package/libgpg-error/libgpg-error.mk @@ -10,6 +10,8 @@ LIBGPG_ERROR_SOURCE = libgpg-error-$(LIBGPG_ERROR_VERSION).tar.bz2 LIBGPG_ERROR_LICENSE = GPL-2.0+, LGPL-2.1+ LIBGPG_ERROR_LICENSE_FILES = COPYING COPYING.LIB LIBGPG_ERROR_INSTALL_STAGING = YES +# 0001-gawk5-support.patch +LIBGPG_ERROR_AUTORECONF = YES LIBGPG_ERROR_CONFIG_SCRIPTS = gpg-error-config LIBGPG_ERROR_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES) LIBGPG_ERROR_CONF_OPTS = --disable-tests \ diff --git a/buildroot/package/libgtk2/libgtk2.mk b/buildroot/package/libgtk2/libgtk2.mk index 8f60573a5..710e6e47d 100644 --- a/buildroot/package/libgtk2/libgtk2.mk +++ b/buildroot/package/libgtk2/libgtk2.mk @@ -21,7 +21,10 @@ LIBGTK2_CONF_ENV = \ LIBGTK2_CONF_OPTS = --disable-glibtest --enable-explicit-deps=no -LIBGTK2_DEPENDENCIES = host-pkgconf host-libgtk2 libglib2 cairo pango atk gdk-pixbuf +LIBGTK2_DEPENDENCIES = host-pkgconf host-libgtk2 libglib2 cairo pango atk \ + gdk-pixbuf $(TARGET_NLS_DEPENDENCIES) + +LIBGTK2_MAKE_OPTS = LIBS=$(TARGET_NLS_LIBS) # Xorg dependencies LIBGTK2_CONF_OPTS += \ diff --git a/buildroot/package/libgtk3/libgtk3.mk b/buildroot/package/libgtk3/libgtk3.mk index bdf820de3..b9adc673f 100644 --- a/buildroot/package/libgtk3/libgtk3.mk +++ b/buildroot/package/libgtk3/libgtk3.mk @@ -24,9 +24,11 @@ LIBGTK3_CONF_OPTS = \ # Override pkg-config pkgdatadir variable, it needs the prefix LIBGTK3_MAKE_OPTS = \ - WAYLAND_PROTOCOLS_DATADIR=$(STAGING_DIR)/usr/share/wayland-protocols + WAYLAND_PROTOCOLS_DATADIR=$(STAGING_DIR)/usr/share/wayland-protocols \ + LIBS=$(TARGET_NLS_LIBS) -LIBGTK3_DEPENDENCIES = host-pkgconf host-libgtk3 atk libglib2 cairo pango gdk-pixbuf libepoxy +LIBGTK3_DEPENDENCIES = host-pkgconf host-libgtk3 atk libglib2 cairo pango \ + gdk-pixbuf libepoxy $(TARGET_NLS_DEPENDENCIES) ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) LIBGTK3_DEPENDENCIES += fontconfig xlib_libX11 xlib_libXext xlib_libXrender xlib_libXi diff --git a/buildroot/package/libhid/Config.in b/buildroot/package/libhid/Config.in index e6f201286..ec6630806 100644 --- a/buildroot/package/libhid/Config.in +++ b/buildroot/package/libhid/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_LIBHID help Userspace library for accessing USB HID devices - http://libhid.alioth.debian.org + https://directory.fsf.org/wiki/Libhid comment "libhid needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/buildroot/package/libiscsi/Config.in b/buildroot/package/libiscsi/Config.in index 760fecea6..8e588c9ef 100644 --- a/buildroot/package/libiscsi/Config.in +++ b/buildroot/package/libiscsi/Config.in @@ -9,4 +9,4 @@ config BR2_PACKAGE_LIBISCSI scsi tasks, but a sync layer is also provided for ease of use for simpler applications. - https://github.com/sahlberg/libiscsi (no proper homepage) + https://github.com/sahlberg/libiscsi diff --git a/buildroot/package/liblockfile/Config.in b/buildroot/package/liblockfile/Config.in index 88a9c338b..83ffea86c 100644 --- a/buildroot/package/liblockfile/Config.in +++ b/buildroot/package/liblockfile/Config.in @@ -2,3 +2,5 @@ config BR2_PACKAGE_LIBLOCKFILE bool "liblockfile" help NFS-safe locking library. + + https://github.com/miquels/liblockfile diff --git a/buildroot/package/libmodplug/libmodplug.hash b/buildroot/package/libmodplug/libmodplug.hash index d50a56eed..e75152e27 100644 --- a/buildroot/package/libmodplug/libmodplug.hash +++ b/buildroot/package/libmodplug/libmodplug.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 77462d12ee99476c8645cb5511363e3906b88b33a6b54362b4dbc0f39aa2daad libmodplug-0.8.8.5.tar.gz +sha256 457ca5a6c179656d66c01505c0d95fafaead4329b9dbaa0f997d00a3508ad9de libmodplug-0.8.9.0.tar.gz sha256 49942e7b3b175f549e751feb08b5270ca6f6c5fb7a1be9f9517db275ec32c92e COPYING diff --git a/buildroot/package/libmodplug/libmodplug.mk b/buildroot/package/libmodplug/libmodplug.mk index d9d74df50..05786ce81 100644 --- a/buildroot/package/libmodplug/libmodplug.mk +++ b/buildroot/package/libmodplug/libmodplug.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBMODPLUG_VERSION = 0.8.8.5 +LIBMODPLUG_VERSION = 0.8.9.0 LIBMODPLUG_SITE = http://downloads.sourceforge.net/project/modplug-xmms/libmodplug/$(LIBMODPLUG_VERSION) LIBMODPLUG_INSTALL_STAGING = YES LIBMODPLUG_LICENSE = Public Domain diff --git a/buildroot/package/libmspack/Config.in b/buildroot/package/libmspack/Config.in new file mode 100644 index 000000000..e2b1a9059 --- /dev/null +++ b/buildroot/package/libmspack/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_LIBMSPACK + bool "libmspack" + help + libmspack is a portable library for some loosely related + Microsoft compression formats + + https://www.cabextract.org.uk/libmspack diff --git a/buildroot/package/libmspack/libmspack.hash b/buildroot/package/libmspack/libmspack.hash new file mode 100644 index 000000000..b12e9b628 --- /dev/null +++ b/buildroot/package/libmspack/libmspack.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 bac862dee6e0fc10d92c70212441d9f8ad9b0222edc9a708c3ead4adb1b24a8e libmspack-0.10.1alpha.tar.gz +sha256 a190dc9c8043755d90f8b0a75fa66b9e42d4af4c980bf5ddc633f0124db3cee7 COPYING.LIB diff --git a/buildroot/package/libmspack/libmspack.mk b/buildroot/package/libmspack/libmspack.mk new file mode 100644 index 000000000..e9fdc3ca8 --- /dev/null +++ b/buildroot/package/libmspack/libmspack.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# libmspack +# +################################################################################ + +LIBMSPACK_VERSION = 0.10.1alpha +LIBMSPACK_SITE = https://www.cabextract.org.uk/libmspack +LIBMSPACK_LICENSE = LGPL-2.1 +LIBMSPACK_LICENSE_FILES = COPYING.LIB +LIBMSPACK_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/buildroot/package/libnftnl/0002-Add-Libs.private-field-to-libnftnl.pc.patch b/buildroot/package/libnftnl/0001-Add-Libs.private-field-to-libnftnl.pc.patch similarity index 100% rename from buildroot/package/libnftnl/0002-Add-Libs.private-field-to-libnftnl.pc.patch rename to buildroot/package/libnftnl/0001-Add-Libs.private-field-to-libnftnl.pc.patch diff --git a/buildroot/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch b/buildroot/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch deleted file mode 100644 index 213aab79e..000000000 --- a/buildroot/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch +++ /dev/null @@ -1,1032 +0,0 @@ -From 90a0152c224fa90f648b27187859bd84f6426e1b Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Thu, 2 Jun 2016 23:03:27 -0300 -Subject: [PATCH] Rename xfree() to libnftnl_xfree() to avoid symbol naming - conflict - -When ELF binaries and shared libraries are used, the internal -functions of libnftnl such as xfree() are not visible to the outside -world (their visibility is 'hidden'). Therefore, the fact that other -programs (especially nftables) may have symbols with the same name -does not cause any problem. - -However, when doing static linking on a non-ELF platform (such as -Blackfin, which uses the FLAT binary format), there is no way of -encoding this visibility. Therefore, the xfree() symbols of libnftnl -becomes visible to the outside world, causing a conflict with the -xfree() symbol defined by nftables. - -To solve this, this patch renames the libnftnl xfree() function to -libnftnl_xfree(). - -Signed-off-by: Thomas Petazzoni -[Gustavo: update for version 1.0.7] -Signed-off-by: Gustavo Zacarias -[baruch: update for versions 1.0.9, 1.1.2] -Signed-off-by: Baruch Siach ---- - include/utils.h | 2 +- - src/chain.c | 36 ++++++++++++++++++------------------ - src/common.c | 2 +- - src/expr.c | 4 ++-- - src/expr/data_reg.c | 2 +- - src/expr/dynset.c | 2 +- - src/expr/flow_offload.c | 2 +- - src/expr/immediate.c | 2 +- - src/expr/log.c | 6 +++--- - src/expr/lookup.c | 2 +- - src/expr/match.c | 6 +++--- - src/expr/target.c | 6 +++--- - src/flowtable.c | 32 ++++++++++++++++---------------- - src/gen.c | 2 +- - src/object.c | 14 +++++++------- - src/rule.c | 32 ++++++++++++++++---------------- - src/ruleset.c | 2 +- - src/set.c | 28 ++++++++++++++-------------- - src/set_elem.c | 28 ++++++++++++++-------------- - src/table.c | 14 +++++++------- - src/trace.c | 14 +++++++------- - src/udata.c | 2 +- - src/utils.c | 2 +- - 23 files changed, 121 insertions(+), 121 deletions(-) - -diff --git a/include/utils.h b/include/utils.h -index 3cc659652fe2..820556715013 100644 ---- a/include/utils.h -+++ b/include/utils.h -@@ -17,7 +17,7 @@ - - #define __noreturn __attribute__((__noreturn__)) - --#define xfree(ptr) free((void *)ptr); -+#define nftnl_xfree(ptr) free((void *)ptr); - - #define div_round_up(n, d) (((n) + (d) - 1) / (d)) - -diff --git a/src/chain.c b/src/chain.c -index 01d62c84f140..93e193955934 100644 ---- a/src/chain.c -+++ b/src/chain.c -@@ -97,14 +97,14 @@ EXPORT_SYMBOL(nftnl_chain_free); - void nftnl_chain_free(const struct nftnl_chain *c) - { - if (c->flags & (1 << NFTNL_CHAIN_NAME)) -- xfree(c->name); -+ nftnl_xfree(c->name); - if (c->flags & (1 << NFTNL_CHAIN_TABLE)) -- xfree(c->table); -+ nftnl_xfree(c->table); - if (c->flags & (1 << NFTNL_CHAIN_TYPE)) -- xfree(c->type); -+ nftnl_xfree(c->type); - if (c->flags & (1 << NFTNL_CHAIN_DEV)) -- xfree(c->dev); -- xfree(c); -+ nftnl_xfree(c->dev); -+ nftnl_xfree(c); - } - - EXPORT_SYMBOL(nftnl_chain_is_set); -@@ -121,15 +121,15 @@ void nftnl_chain_unset(struct nftnl_chain *c, uint16_t attr) - - switch (attr) { - case NFTNL_CHAIN_NAME: -- xfree(c->name); -+ nftnl_xfree(c->name); - break; - case NFTNL_CHAIN_TABLE: -- xfree(c->table); -+ nftnl_xfree(c->table); - break; - case NFTNL_CHAIN_USE: - break; - case NFTNL_CHAIN_TYPE: -- xfree(c->type); -+ nftnl_xfree(c->type); - break; - case NFTNL_CHAIN_HOOKNUM: - case NFTNL_CHAIN_PRIO: -@@ -140,7 +140,7 @@ void nftnl_chain_unset(struct nftnl_chain *c, uint16_t attr) - case NFTNL_CHAIN_FAMILY: - break; - case NFTNL_CHAIN_DEV: -- xfree(c->dev); -+ nftnl_xfree(c->dev); - break; - default: - return; -@@ -169,7 +169,7 @@ int nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, - switch(attr) { - case NFTNL_CHAIN_NAME: - if (c->flags & (1 << NFTNL_CHAIN_NAME)) -- xfree(c->name); -+ nftnl_xfree(c->name); - - c->name = strdup(data); - if (!c->name) -@@ -177,7 +177,7 @@ int nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, - break; - case NFTNL_CHAIN_TABLE: - if (c->flags & (1 << NFTNL_CHAIN_TABLE)) -- xfree(c->table); -+ nftnl_xfree(c->table); - - c->table = strdup(data); - if (!c->table) -@@ -209,7 +209,7 @@ int nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, - break; - case NFTNL_CHAIN_TYPE: - if (c->flags & (1 << NFTNL_CHAIN_TYPE)) -- xfree(c->type); -+ nftnl_xfree(c->type); - - c->type = strdup(data); - if (!c->type) -@@ -217,7 +217,7 @@ int nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, - break; - case NFTNL_CHAIN_DEV: - if (c->flags & (1 << NFTNL_CHAIN_DEV)) -- xfree(c->dev); -+ nftnl_xfree(c->dev); - - c->dev = strdup(data); - if (!c->dev) -@@ -541,7 +541,7 @@ int nftnl_chain_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_chain *c) - - if (tb[NFTA_CHAIN_NAME]) { - if (c->flags & (1 << NFTNL_CHAIN_NAME)) -- xfree(c->name); -+ nftnl_xfree(c->name); - c->name = strdup(mnl_attr_get_str(tb[NFTA_CHAIN_NAME])); - if (!c->name) - return -1; -@@ -549,7 +549,7 @@ int nftnl_chain_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_chain *c) - } - if (tb[NFTA_CHAIN_TABLE]) { - if (c->flags & (1 << NFTNL_CHAIN_TABLE)) -- xfree(c->table); -+ nftnl_xfree(c->table); - c->table = strdup(mnl_attr_get_str(tb[NFTA_CHAIN_TABLE])); - if (!c->table) - return -1; -@@ -579,7 +579,7 @@ int nftnl_chain_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_chain *c) - } - if (tb[NFTA_CHAIN_TYPE]) { - if (c->flags & (1 << NFTNL_CHAIN_TYPE)) -- xfree(c->type); -+ nftnl_xfree(c->type); - c->type = strdup(mnl_attr_get_str(tb[NFTA_CHAIN_TYPE])); - if (!c->type) - return -1; -@@ -711,7 +711,7 @@ void nftnl_chain_list_free(struct nftnl_chain_list *list) - list_del(&r->head); - nftnl_chain_free(r); - } -- xfree(list); -+ nftnl_xfree(list); - } - - EXPORT_SYMBOL(nftnl_chain_list_is_empty); -@@ -797,5 +797,5 @@ struct nftnl_chain *nftnl_chain_list_iter_next(struct nftnl_chain_list_iter *ite - EXPORT_SYMBOL(nftnl_chain_list_iter_destroy); - void nftnl_chain_list_iter_destroy(struct nftnl_chain_list_iter *iter) - { -- xfree(iter); -+ nftnl_xfree(iter); - } -diff --git a/src/common.c b/src/common.c -index feb13b2aa836..de7e9d08b9e2 100644 ---- a/src/common.c -+++ b/src/common.c -@@ -68,7 +68,7 @@ struct nftnl_parse_err *nftnl_parse_err_alloc(void) - EXPORT_SYMBOL(nftnl_parse_err_free); - void nftnl_parse_err_free(struct nftnl_parse_err *err) - { -- xfree(err); -+ nftnl_xfree(err); - } - - EXPORT_SYMBOL(nftnl_parse_perror); -diff --git a/src/expr.c b/src/expr.c -index 80c4c36a9bd7..f5e44cd16349 100644 ---- a/src/expr.c -+++ b/src/expr.c -@@ -51,7 +51,7 @@ void nftnl_expr_free(const struct nftnl_expr *expr) - if (expr->ops->free) - expr->ops->free(expr); - -- xfree(expr); -+ nftnl_xfree(expr); - } - - EXPORT_SYMBOL(nftnl_expr_is_set); -@@ -260,7 +260,7 @@ struct nftnl_expr *nftnl_expr_parse(struct nlattr *attr) - return expr; - - err2: -- xfree(expr); -+ nftnl_xfree(expr); - err1: - return NULL; - } -diff --git a/src/expr/data_reg.c b/src/expr/data_reg.c -index 67165feb931f..c6f3cec48caf 100644 ---- a/src/expr/data_reg.c -+++ b/src/expr/data_reg.c -@@ -225,7 +225,7 @@ void nftnl_free_verdict(const union nftnl_data_reg *data) - switch(data->verdict) { - case NFT_JUMP: - case NFT_GOTO: -- xfree(data->chain); -+ nftnl_xfree(data->chain); - break; - default: - break; -diff --git a/src/expr/dynset.c b/src/expr/dynset.c -index 68115ba50c94..4e8093b7e9db 100644 ---- a/src/expr/dynset.c -+++ b/src/expr/dynset.c -@@ -276,7 +276,7 @@ static void nftnl_expr_dynset_free(const struct nftnl_expr *e) - { - struct nftnl_expr_dynset *dynset = nftnl_expr_data(e); - -- xfree(dynset->set_name); -+ nftnl_xfree(dynset->set_name); - } - - struct expr_ops expr_ops_dynset = { -diff --git a/src/expr/flow_offload.c b/src/expr/flow_offload.c -index 6ccec9a13396..877ad072ba53 100644 ---- a/src/expr/flow_offload.c -+++ b/src/expr/flow_offload.c -@@ -122,7 +122,7 @@ static void nftnl_expr_flow_free(const struct nftnl_expr *e) - { - struct nftnl_expr_flow *flow = nftnl_expr_data(e); - -- xfree(flow->table_name); -+ nftnl_xfree(flow->table_name); - } - - struct expr_ops expr_ops_flow = { -diff --git a/src/expr/immediate.c b/src/expr/immediate.c -index 47106ae86675..b0289f9397fb 100644 ---- a/src/expr/immediate.c -+++ b/src/expr/immediate.c -@@ -44,7 +44,7 @@ nftnl_expr_immediate_set(struct nftnl_expr *e, uint16_t type, - break; - case NFTNL_EXPR_IMM_CHAIN: - if (e->flags & (1 << NFTNL_EXPR_IMM_CHAIN)) -- xfree(imm->data.chain); -+ nftnl_xfree(imm->data.chain); - - imm->data.chain = strdup(data); - if (!imm->data.chain) -diff --git a/src/expr/log.c b/src/expr/log.c -index bbe43d2dc6bc..a5952ce10ccc 100644 ---- a/src/expr/log.c -+++ b/src/expr/log.c -@@ -39,7 +39,7 @@ static int nftnl_expr_log_set(struct nftnl_expr *e, uint16_t type, - switch(type) { - case NFTNL_EXPR_LOG_PREFIX: - if (log->flags & (1 << NFTNL_EXPR_LOG_PREFIX)) -- xfree(log->prefix); -+ nftnl_xfree(log->prefix); - - log->prefix = strdup(data); - if (!log->prefix) -@@ -155,7 +155,7 @@ nftnl_expr_log_parse(struct nftnl_expr *e, struct nlattr *attr) - - if (tb[NFTA_LOG_PREFIX]) { - if (log->prefix) -- xfree(log->prefix); -+ nftnl_xfree(log->prefix); - - log->prefix = strdup(mnl_attr_get_str(tb[NFTA_LOG_PREFIX])); - if (!log->prefix) -@@ -255,7 +255,7 @@ static void nftnl_expr_log_free(const struct nftnl_expr *e) - { - struct nftnl_expr_log *log = nftnl_expr_data(e); - -- xfree(log->prefix); -+ nftnl_xfree(log->prefix); - } - - struct expr_ops expr_ops_log = { -diff --git a/src/expr/lookup.c b/src/expr/lookup.c -index a495ac0fdcfc..4fce24288c57 100644 ---- a/src/expr/lookup.c -+++ b/src/expr/lookup.c -@@ -209,7 +209,7 @@ static void nftnl_expr_lookup_free(const struct nftnl_expr *e) - { - struct nftnl_expr_lookup *lookup = nftnl_expr_data(e); - -- xfree(lookup->set_name); -+ nftnl_xfree(lookup->set_name); - } - - struct expr_ops expr_ops_lookup = { -diff --git a/src/expr/match.c b/src/expr/match.c -index 4fa74b2da893..7ee706753b68 100644 ---- a/src/expr/match.c -+++ b/src/expr/match.c -@@ -50,7 +50,7 @@ nftnl_expr_match_set(struct nftnl_expr *e, uint16_t type, - break; - case NFTNL_EXPR_MT_INFO: - if (e->flags & (1 << NFTNL_EXPR_MT_INFO)) -- xfree(mt->data); -+ nftnl_xfree(mt->data); - - mt->data = data; - mt->data_len = data_len; -@@ -147,7 +147,7 @@ static int nftnl_expr_match_parse(struct nftnl_expr *e, struct nlattr *attr) - void *match_data; - - if (e->flags & (1 << NFTNL_EXPR_MT_INFO)) -- xfree(match->data); -+ nftnl_xfree(match->data); - - match_data = calloc(1, len); - if (match_data == NULL) -@@ -186,7 +186,7 @@ static void nftnl_expr_match_free(const struct nftnl_expr *e) - { - struct nftnl_expr_match *match = nftnl_expr_data(e); - -- xfree(match->data); -+ nftnl_xfree(match->data); - } - - struct expr_ops expr_ops_match = { -diff --git a/src/expr/target.c b/src/expr/target.c -index 91000386704a..5d0763edf63f 100644 ---- a/src/expr/target.c -+++ b/src/expr/target.c -@@ -50,7 +50,7 @@ nftnl_expr_target_set(struct nftnl_expr *e, uint16_t type, - break; - case NFTNL_EXPR_TG_INFO: - if (e->flags & (1 << NFTNL_EXPR_TG_INFO)) -- xfree(tg->data); -+ nftnl_xfree(tg->data); - - tg->data = data; - tg->data_len = data_len; -@@ -147,7 +147,7 @@ static int nftnl_expr_target_parse(struct nftnl_expr *e, struct nlattr *attr) - void *target_data; - - if (target->data) -- xfree(target->data); -+ nftnl_xfree(target->data); - - target_data = calloc(1, len); - if (target_data == NULL) -@@ -186,7 +186,7 @@ static void nftnl_expr_target_free(const struct nftnl_expr *e) - { - struct nftnl_expr_target *target = nftnl_expr_data(e); - -- xfree(target->data); -+ nftnl_xfree(target->data); - } - - struct expr_ops expr_ops_target = { -diff --git a/src/flowtable.c b/src/flowtable.c -index c939306b56c4..f1b3eef48b73 100644 ---- a/src/flowtable.c -+++ b/src/flowtable.c -@@ -45,16 +45,16 @@ void nftnl_flowtable_free(const struct nftnl_flowtable *c) - int i; - - if (c->flags & (1 << NFTNL_FLOWTABLE_NAME)) -- xfree(c->name); -+ nftnl_xfree(c->name); - if (c->flags & (1 << NFTNL_FLOWTABLE_TABLE)) -- xfree(c->table); -+ nftnl_xfree(c->table); - if (c->flags & (1 << NFTNL_FLOWTABLE_DEVICES)) { - for (i = 0; i < c->dev_array_len; i++) -- xfree(c->dev_array[i]); -+ nftnl_xfree(c->dev_array[i]); - -- xfree(c->dev_array); -+ nftnl_xfree(c->dev_array); - } -- xfree(c); -+ nftnl_xfree(c); - } - EXPORT_SYMBOL(nftnl_flowtable_free); - -@@ -73,10 +73,10 @@ void nftnl_flowtable_unset(struct nftnl_flowtable *c, uint16_t attr) - - switch (attr) { - case NFTNL_FLOWTABLE_NAME: -- xfree(c->name); -+ nftnl_xfree(c->name); - break; - case NFTNL_FLOWTABLE_TABLE: -- xfree(c->table); -+ nftnl_xfree(c->table); - break; - case NFTNL_FLOWTABLE_HOOKNUM: - case NFTNL_FLOWTABLE_PRIO: -@@ -86,8 +86,8 @@ void nftnl_flowtable_unset(struct nftnl_flowtable *c, uint16_t attr) - break; - case NFTNL_FLOWTABLE_DEVICES: - for (i = 0; i < c->dev_array_len; i++) { -- xfree(c->dev_array[i]); -- xfree(c->dev_array); -+ nftnl_xfree(c->dev_array[i]); -+ nftnl_xfree(c->dev_array); - } - break; - default: -@@ -117,7 +117,7 @@ int nftnl_flowtable_set_data(struct nftnl_flowtable *c, uint16_t attr, - switch(attr) { - case NFTNL_FLOWTABLE_NAME: - if (c->flags & (1 << NFTNL_FLOWTABLE_NAME)) -- xfree(c->name); -+ nftnl_xfree(c->name); - - c->name = strdup(data); - if (!c->name) -@@ -125,7 +125,7 @@ int nftnl_flowtable_set_data(struct nftnl_flowtable *c, uint16_t attr, - break; - case NFTNL_FLOWTABLE_TABLE: - if (c->flags & (1 << NFTNL_FLOWTABLE_TABLE)) -- xfree(c->table); -+ nftnl_xfree(c->table); - - c->table = strdup(data); - if (!c->table) -@@ -147,8 +147,8 @@ int nftnl_flowtable_set_data(struct nftnl_flowtable *c, uint16_t attr, - - if (c->flags & (1 << NFTNL_FLOWTABLE_DEVICES)) { - for (i = 0; i < c->dev_array_len; i++) { -- xfree(c->dev_array[i]); -- xfree(c->dev_array); -+ nftnl_xfree(c->dev_array[i]); -+ nftnl_xfree(c->dev_array); - } - } - -@@ -423,7 +423,7 @@ int nftnl_flowtable_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_flowtab - - if (tb[NFTA_FLOWTABLE_NAME]) { - if (c->flags & (1 << NFTNL_FLOWTABLE_NAME)) -- xfree(c->name); -+ nftnl_xfree(c->name); - c->name = strdup(mnl_attr_get_str(tb[NFTA_FLOWTABLE_NAME])); - if (!c->name) - return -1; -@@ -431,7 +431,7 @@ int nftnl_flowtable_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_flowtab - } - if (tb[NFTA_FLOWTABLE_TABLE]) { - if (c->flags & (1 << NFTNL_FLOWTABLE_TABLE)) -- xfree(c->table); -+ nftnl_xfree(c->table); - c->table = strdup(mnl_attr_get_str(tb[NFTA_FLOWTABLE_TABLE])); - if (!c->table) - return -1; -@@ -635,7 +635,7 @@ void nftnl_flowtable_list_free(struct nftnl_flowtable_list *list) - list_del(&s->head); - nftnl_flowtable_free(s); - } -- xfree(list); -+ nftnl_xfree(list); - } - EXPORT_SYMBOL(nftnl_flowtable_list_free); - -diff --git a/src/gen.c b/src/gen.c -index 1fc909930d86..c69f6f87deae 100644 ---- a/src/gen.c -+++ b/src/gen.c -@@ -38,7 +38,7 @@ struct nftnl_gen *nftnl_gen_alloc(void) - EXPORT_SYMBOL(nftnl_gen_free); - void nftnl_gen_free(const struct nftnl_gen *gen) - { -- xfree(gen); -+ nftnl_xfree(gen); - } - - EXPORT_SYMBOL(nftnl_gen_is_set); -diff --git a/src/object.c b/src/object.c -index e88203a82441..28e04486c76c 100644 ---- a/src/object.c -+++ b/src/object.c -@@ -53,11 +53,11 @@ EXPORT_SYMBOL(nftnl_obj_free); - void nftnl_obj_free(const struct nftnl_obj *obj) - { - if (obj->flags & (1 << NFTNL_OBJ_TABLE)) -- xfree(obj->table); -+ nftnl_xfree(obj->table); - if (obj->flags & (1 << NFTNL_OBJ_NAME)) -- xfree(obj->name); -+ nftnl_xfree(obj->name); - -- xfree(obj); -+ nftnl_xfree(obj); - } - - EXPORT_SYMBOL(nftnl_obj_is_set); -@@ -81,11 +81,11 @@ void nftnl_obj_set_data(struct nftnl_obj *obj, uint16_t attr, - - switch (attr) { - case NFTNL_OBJ_TABLE: -- xfree(obj->table); -+ nftnl_xfree(obj->table); - obj->table = strdup(data); - break; - case NFTNL_OBJ_NAME: -- xfree(obj->name); -+ nftnl_xfree(obj->name); - obj->name = strdup(data); - break; - case NFTNL_OBJ_TYPE: -@@ -452,7 +452,7 @@ void nftnl_obj_list_free(struct nftnl_obj_list *list) - list_del(&r->head); - nftnl_obj_free(r); - } -- xfree(list); -+ nftnl_xfree(list); - } - - EXPORT_SYMBOL(nftnl_obj_list_is_empty); -@@ -539,5 +539,5 @@ struct nftnl_obj *nftnl_obj_list_iter_next(struct nftnl_obj_list_iter *iter) - EXPORT_SYMBOL(nftnl_obj_list_iter_destroy); - void nftnl_obj_list_iter_destroy(struct nftnl_obj_list_iter *iter) - { -- xfree(iter); -+ nftnl_xfree(iter); - } -diff --git a/src/rule.c b/src/rule.c -index 9af8fae2a803..0fce46e5c944 100644 ---- a/src/rule.c -+++ b/src/rule.c -@@ -75,13 +75,13 @@ void nftnl_rule_free(const struct nftnl_rule *r) - nftnl_expr_free(e); - - if (r->flags & (1 << (NFTNL_RULE_TABLE))) -- xfree(r->table); -+ nftnl_xfree(r->table); - if (r->flags & (1 << (NFTNL_RULE_CHAIN))) -- xfree(r->chain); -+ nftnl_xfree(r->chain); - if (r->flags & (1 << (NFTNL_RULE_USERDATA))) -- xfree(r->user.data); -+ nftnl_xfree(r->user.data); - -- xfree(r); -+ nftnl_xfree(r); - } - - EXPORT_SYMBOL(nftnl_rule_is_set); -@@ -98,10 +98,10 @@ void nftnl_rule_unset(struct nftnl_rule *r, uint16_t attr) - - switch (attr) { - case NFTNL_RULE_TABLE: -- xfree(r->table); -+ nftnl_xfree(r->table); - break; - case NFTNL_RULE_CHAIN: -- xfree(r->chain); -+ nftnl_xfree(r->chain); - break; - case NFTNL_RULE_HANDLE: - case NFTNL_RULE_COMPAT_PROTO: -@@ -111,7 +111,7 @@ void nftnl_rule_unset(struct nftnl_rule *r, uint16_t attr) - case NFTNL_RULE_ID: - break; - case NFTNL_RULE_USERDATA: -- xfree(r->user.data); -+ nftnl_xfree(r->user.data); - break; - } - -@@ -137,7 +137,7 @@ int nftnl_rule_set_data(struct nftnl_rule *r, uint16_t attr, - switch(attr) { - case NFTNL_RULE_TABLE: - if (r->flags & (1 << NFTNL_RULE_TABLE)) -- xfree(r->table); -+ nftnl_xfree(r->table); - - r->table = strdup(data); - if (!r->table) -@@ -145,7 +145,7 @@ int nftnl_rule_set_data(struct nftnl_rule *r, uint16_t attr, - break; - case NFTNL_RULE_CHAIN: - if (r->flags & (1 << NFTNL_RULE_CHAIN)) -- xfree(r->chain); -+ nftnl_xfree(r->chain); - - r->chain = strdup(data); - if (!r->chain) -@@ -168,7 +168,7 @@ int nftnl_rule_set_data(struct nftnl_rule *r, uint16_t attr, - break; - case NFTNL_RULE_USERDATA: - if (r->flags & (1 << NFTNL_RULE_USERDATA)) -- xfree(r->user.data); -+ nftnl_xfree(r->user.data); - - r->user.data = malloc(data_len); - if (!r->user.data) -@@ -453,7 +453,7 @@ int nftnl_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_rule *r) - - if (tb[NFTA_RULE_TABLE]) { - if (r->flags & (1 << NFTNL_RULE_TABLE)) -- xfree(r->table); -+ nftnl_xfree(r->table); - r->table = strdup(mnl_attr_get_str(tb[NFTA_RULE_TABLE])); - if (!r->table) - return -1; -@@ -461,7 +461,7 @@ int nftnl_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_rule *r) - } - if (tb[NFTA_RULE_CHAIN]) { - if (r->flags & (1 << NFTNL_RULE_CHAIN)) -- xfree(r->chain); -+ nftnl_xfree(r->chain); - r->chain = strdup(mnl_attr_get_str(tb[NFTA_RULE_CHAIN])); - if (!r->chain) - return -1; -@@ -490,7 +490,7 @@ int nftnl_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_rule *r) - mnl_attr_get_payload(tb[NFTA_RULE_USERDATA]); - - if (r->flags & (1 << NFTNL_RULE_USERDATA)) -- xfree(r->user.data); -+ nftnl_xfree(r->user.data); - - r->user.len = mnl_attr_get_payload_len(tb[NFTA_RULE_USERDATA]); - -@@ -737,7 +737,7 @@ struct nftnl_expr *nftnl_expr_iter_next(struct nftnl_expr_iter *iter) - EXPORT_SYMBOL(nftnl_expr_iter_destroy); - void nftnl_expr_iter_destroy(struct nftnl_expr_iter *iter) - { -- xfree(iter); -+ nftnl_xfree(iter); - } - - struct nftnl_rule_list { -@@ -767,7 +767,7 @@ void nftnl_rule_list_free(struct nftnl_rule_list *list) - list_del(&r->head); - nftnl_rule_free(r); - } -- xfree(list); -+ nftnl_xfree(list); - } - - EXPORT_SYMBOL(nftnl_rule_list_is_empty); -@@ -865,5 +865,5 @@ struct nftnl_rule *nftnl_rule_list_iter_next(struct nftnl_rule_list_iter *iter) - EXPORT_SYMBOL(nftnl_rule_list_iter_destroy); - void nftnl_rule_list_iter_destroy(const struct nftnl_rule_list_iter *iter) - { -- xfree(iter); -+ nftnl_xfree(iter); - } -diff --git a/src/ruleset.c b/src/ruleset.c -index 2468bd46cd5d..16059a305309 100644 ---- a/src/ruleset.c -+++ b/src/ruleset.c -@@ -70,7 +70,7 @@ void nftnl_ruleset_free(const struct nftnl_ruleset *r) - nftnl_set_list_free(r->set_list); - if (r->flags & (1 << NFTNL_RULESET_RULELIST)) - nftnl_rule_list_free(r->rule_list); -- xfree(r); -+ nftnl_xfree(r); - } - - EXPORT_SYMBOL(nftnl_ruleset_is_set); -diff --git a/src/set.c b/src/set.c -index d1bdb165ab4b..53e54715d4b8 100644 ---- a/src/set.c -+++ b/src/set.c -@@ -46,17 +46,17 @@ void nftnl_set_free(const struct nftnl_set *s) - struct nftnl_set_elem *elem, *tmp; - - if (s->flags & (1 << NFTNL_SET_TABLE)) -- xfree(s->table); -+ nftnl_xfree(s->table); - if (s->flags & (1 << NFTNL_SET_NAME)) -- xfree(s->name); -+ nftnl_xfree(s->name); - if (s->flags & (1 << NFTNL_SET_USERDATA)) -- xfree(s->user.data); -+ nftnl_xfree(s->user.data); - - list_for_each_entry_safe(elem, tmp, &s->element_list, head) { - list_del(&elem->head); - nftnl_set_elem_free(elem); - } -- xfree(s); -+ nftnl_xfree(s); - } - - EXPORT_SYMBOL(nftnl_set_is_set); -@@ -73,10 +73,10 @@ void nftnl_set_unset(struct nftnl_set *s, uint16_t attr) - - switch (attr) { - case NFTNL_SET_TABLE: -- xfree(s->table); -+ nftnl_xfree(s->table); - break; - case NFTNL_SET_NAME: -- xfree(s->name); -+ nftnl_xfree(s->name); - break; - case NFTNL_SET_HANDLE: - case NFTNL_SET_FLAGS: -@@ -93,7 +93,7 @@ void nftnl_set_unset(struct nftnl_set *s, uint16_t attr) - case NFTNL_SET_GC_INTERVAL: - break; - case NFTNL_SET_USERDATA: -- xfree(s->user.data); -+ nftnl_xfree(s->user.data); - break; - default: - return; -@@ -127,7 +127,7 @@ int nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data, - switch(attr) { - case NFTNL_SET_TABLE: - if (s->flags & (1 << NFTNL_SET_TABLE)) -- xfree(s->table); -+ nftnl_xfree(s->table); - - s->table = strdup(data); - if (!s->table) -@@ -135,7 +135,7 @@ int nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data, - break; - case NFTNL_SET_NAME: - if (s->flags & (1 << NFTNL_SET_NAME)) -- xfree(s->name); -+ nftnl_xfree(s->name); - - s->name = strdup(data); - if (!s->name) -@@ -182,7 +182,7 @@ int nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data, - break; - case NFTNL_SET_USERDATA: - if (s->flags & (1 << NFTNL_SET_USERDATA)) -- xfree(s->user.data); -+ nftnl_xfree(s->user.data); - - s->user.data = malloc(data_len); - if (!s->user.data) -@@ -492,7 +492,7 @@ int nftnl_set_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) - - if (tb[NFTA_SET_TABLE]) { - if (s->flags & (1 << NFTNL_SET_TABLE)) -- xfree(s->table); -+ nftnl_xfree(s->table); - s->table = strdup(mnl_attr_get_str(tb[NFTA_SET_TABLE])); - if (!s->table) - return -1; -@@ -500,7 +500,7 @@ int nftnl_set_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) - } - if (tb[NFTA_SET_NAME]) { - if (s->flags & (1 << NFTNL_SET_NAME)) -- xfree(s->name); -+ nftnl_xfree(s->name); - s->name = strdup(mnl_attr_get_str(tb[NFTA_SET_NAME])); - if (!s->name) - return -1; -@@ -742,7 +742,7 @@ void nftnl_set_list_free(struct nftnl_set_list *list) - list_del(&s->head); - nftnl_set_free(s); - } -- xfree(list); -+ nftnl_xfree(list); - } - - EXPORT_SYMBOL(nftnl_set_list_is_empty); -@@ -834,7 +834,7 @@ struct nftnl_set *nftnl_set_list_iter_next(struct nftnl_set_list_iter *iter) - EXPORT_SYMBOL(nftnl_set_list_iter_destroy); - void nftnl_set_list_iter_destroy(const struct nftnl_set_list_iter *iter) - { -- xfree(iter); -+ nftnl_xfree(iter); - } - - static struct nftnl_set *nftnl_set_lookup(const char *this_set_name, -diff --git a/src/set_elem.c b/src/set_elem.c -index ff983a67d62a..fac96cd368f1 100644 ---- a/src/set_elem.c -+++ b/src/set_elem.c -@@ -43,18 +43,18 @@ EXPORT_SYMBOL(nftnl_set_elem_free); - void nftnl_set_elem_free(struct nftnl_set_elem *s) - { - if (s->flags & (1 << NFTNL_SET_ELEM_CHAIN)) -- xfree(s->data.chain); -+ nftnl_xfree(s->data.chain); - - if (s->flags & (1 << NFTNL_SET_ELEM_EXPR)) - nftnl_expr_free(s->expr); - - if (s->flags & (1 << NFTNL_SET_ELEM_USERDATA)) -- xfree(s->user.data); -+ nftnl_xfree(s->user.data); - - if (s->flags & (1 << NFTNL_SET_ELEM_OBJREF)) -- xfree(s->objref); -+ nftnl_xfree(s->objref); - -- xfree(s); -+ nftnl_xfree(s); - } - - EXPORT_SYMBOL(nftnl_set_elem_is_set); -@@ -71,7 +71,7 @@ void nftnl_set_elem_unset(struct nftnl_set_elem *s, uint16_t attr) - - switch (attr) { - case NFTNL_SET_ELEM_CHAIN: -- xfree(s->data.chain); -+ nftnl_xfree(s->data.chain); - break; - case NFTNL_SET_ELEM_FLAGS: - case NFTNL_SET_ELEM_KEY: /* NFTA_SET_ELEM_KEY */ -@@ -81,13 +81,13 @@ void nftnl_set_elem_unset(struct nftnl_set_elem *s, uint16_t attr) - case NFTNL_SET_ELEM_EXPIRATION: /* NFTA_SET_ELEM_EXPIRATION */ - break; - case NFTNL_SET_ELEM_USERDATA: /* NFTA_SET_ELEM_USERDATA */ -- xfree(s->user.data); -+ nftnl_xfree(s->user.data); - break; - case NFTNL_SET_ELEM_EXPR: - nftnl_expr_free(s->expr); - break; - case NFTNL_SET_ELEM_OBJREF: -- xfree(s->objref); -+ nftnl_xfree(s->objref); - break; - default: - return; -@@ -113,7 +113,7 @@ int nftnl_set_elem_set(struct nftnl_set_elem *s, uint16_t attr, - break; - case NFTNL_SET_ELEM_CHAIN: /* NFTA_SET_ELEM_DATA */ - if (s->flags & (1 << NFTNL_SET_ELEM_CHAIN)) -- xfree(s->data.chain); -+ nftnl_xfree(s->data.chain); - - s->data.chain = strdup(data); - if (!s->data.chain) -@@ -128,7 +128,7 @@ int nftnl_set_elem_set(struct nftnl_set_elem *s, uint16_t attr, - break; - case NFTNL_SET_ELEM_USERDATA: /* NFTA_SET_ELEM_USERDATA */ - if (s->flags & (1 << NFTNL_SET_ELEM_USERDATA)) -- xfree(s->user.data); -+ nftnl_xfree(s->user.data); - - s->user.data = malloc(data_len); - if (!s->user.data) -@@ -138,7 +138,7 @@ int nftnl_set_elem_set(struct nftnl_set_elem *s, uint16_t attr, - break; - case NFTNL_SET_ELEM_OBJREF: - if (s->flags & (1 << NFTNL_SET_ELEM_OBJREF)) -- xfree(s->objref); -+ nftnl_xfree(s->objref); - - s->objref = strdup(data); - if (!s->objref) -@@ -436,7 +436,7 @@ static int nftnl_set_elems_parse2(struct nftnl_set *s, const struct nlattr *nest - mnl_attr_get_payload(tb[NFTA_SET_ELEM_USERDATA]); - - if (e->flags & (1 << NFTNL_RULE_USERDATA)) -- xfree(e->user.data); -+ nftnl_xfree(e->user.data); - - e->user.len = mnl_attr_get_payload_len(tb[NFTA_SET_ELEM_USERDATA]); - e->user.data = malloc(e->user.len); -@@ -521,7 +521,7 @@ int nftnl_set_elems_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) - - if (tb[NFTA_SET_ELEM_LIST_TABLE]) { - if (s->flags & (1 << NFTNL_SET_TABLE)) -- xfree(s->table); -+ nftnl_xfree(s->table); - s->table = - strdup(mnl_attr_get_str(tb[NFTA_SET_ELEM_LIST_TABLE])); - if (!s->table) -@@ -530,7 +530,7 @@ int nftnl_set_elems_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) - } - if (tb[NFTA_SET_ELEM_LIST_SET]) { - if (s->flags & (1 << NFTNL_SET_NAME)) -- xfree(s->name); -+ nftnl_xfree(s->name); - s->name = - strdup(mnl_attr_get_str(tb[NFTA_SET_ELEM_LIST_SET])); - if (!s->name) -@@ -729,7 +729,7 @@ struct nftnl_set_elem *nftnl_set_elems_iter_next(struct nftnl_set_elems_iter *it - EXPORT_SYMBOL(nftnl_set_elems_iter_destroy); - void nftnl_set_elems_iter_destroy(struct nftnl_set_elems_iter *iter) - { -- xfree(iter); -+ nftnl_xfree(iter); - } - - static bool nftnl_attr_nest_overflow(struct nlmsghdr *nlh, -diff --git a/src/table.c b/src/table.c -index 54259eec7d06..888991b1b80d 100644 ---- a/src/table.c -+++ b/src/table.c -@@ -47,9 +47,9 @@ EXPORT_SYMBOL(nftnl_table_free); - void nftnl_table_free(const struct nftnl_table *t) - { - if (t->flags & (1 << NFTNL_TABLE_NAME)) -- xfree(t->name); -+ nftnl_xfree(t->name); - -- xfree(t); -+ nftnl_xfree(t); - } - - EXPORT_SYMBOL(nftnl_table_is_set); -@@ -66,7 +66,7 @@ void nftnl_table_unset(struct nftnl_table *t, uint16_t attr) - - switch (attr) { - case NFTNL_TABLE_NAME: -- xfree(t->name); -+ nftnl_xfree(t->name); - break; - case NFTNL_TABLE_FLAGS: - case NFTNL_TABLE_HANDLE: -@@ -94,7 +94,7 @@ int nftnl_table_set_data(struct nftnl_table *t, uint16_t attr, - switch (attr) { - case NFTNL_TABLE_NAME: - if (t->flags & (1 << NFTNL_TABLE_NAME)) -- xfree(t->name); -+ nftnl_xfree(t->name); - - t->name = strdup(data); - if (!t->name) -@@ -258,7 +258,7 @@ int nftnl_table_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_table *t) - - if (tb[NFTA_TABLE_NAME]) { - if (t->flags & (1 << NFTNL_TABLE_NAME)) -- xfree(t->name); -+ nftnl_xfree(t->name); - t->name = strdup(mnl_attr_get_str(tb[NFTA_TABLE_NAME])); - if (!t->name) - return -1; -@@ -395,7 +395,7 @@ void nftnl_table_list_free(struct nftnl_table_list *list) - list_del(&r->head); - nftnl_table_free(r); - } -- xfree(list); -+ nftnl_xfree(list); - } - - EXPORT_SYMBOL(nftnl_table_list_is_empty); -@@ -481,5 +481,5 @@ struct nftnl_table *nftnl_table_list_iter_next(struct nftnl_table_list_iter *ite - EXPORT_SYMBOL(nftnl_table_list_iter_destroy); - void nftnl_table_list_iter_destroy(const struct nftnl_table_list_iter *iter) - { -- xfree(iter); -+ nftnl_xfree(iter); - } -diff --git a/src/trace.c b/src/trace.c -index f4264377508e..8a18391d83d1 100644 ---- a/src/trace.c -+++ b/src/trace.c -@@ -61,13 +61,13 @@ struct nftnl_trace *nftnl_trace_alloc(void) - EXPORT_SYMBOL(nftnl_trace_free); - void nftnl_trace_free(const struct nftnl_trace *t) - { -- xfree(t->chain); -- xfree(t->table); -- xfree(t->jump_target); -- xfree(t->ll.data); -- xfree(t->nh.data); -- xfree(t->th.data); -- xfree(t); -+ nftnl_xfree(t->chain); -+ nftnl_xfree(t->table); -+ nftnl_xfree(t->jump_target); -+ nftnl_xfree(t->ll.data); -+ nftnl_xfree(t->nh.data); -+ nftnl_xfree(t->th.data); -+ nftnl_xfree(t); - } - - EXPORT_SYMBOL(nftnl_trace_is_set); -diff --git a/src/udata.c b/src/udata.c -index b5a47295b40d..3b3be548036d 100644 ---- a/src/udata.c -+++ b/src/udata.c -@@ -33,7 +33,7 @@ struct nftnl_udata_buf *nftnl_udata_buf_alloc(uint32_t data_size) - EXPORT_SYMBOL(nftnl_udata_buf_free); - void nftnl_udata_buf_free(const struct nftnl_udata_buf *buf) - { -- xfree(buf); -+ nftnl_xfree(buf); - } - - EXPORT_SYMBOL(nftnl_udata_buf_len); -diff --git a/src/utils.c b/src/utils.c -index f641bf93ec68..02e7476a0ced 100644 ---- a/src/utils.c -+++ b/src/utils.c -@@ -304,7 +304,7 @@ int nftnl_fprintf(FILE *fp, const void *obj, uint32_t cmd, uint32_t type, - - out: - if (buf != _buf) -- xfree(buf); -+ nftnl_xfree(buf); - - return ret; - } --- -2.19.1 - diff --git a/buildroot/package/libnftnl/libnftnl.hash b/buildroot/package/libnftnl/libnftnl.hash index 3ecaeb8a1..64bd07a23 100644 --- a/buildroot/package/libnftnl/libnftnl.hash +++ b/buildroot/package/libnftnl/libnftnl.hash @@ -1,3 +1,3 @@ # From http://www.netfilter.org/projects/libnftnl/downloads.html -sha256 a5c7b7a6c13c9c5898b13fcb1126fefce2015d5a96d7c354b19aaa40b6aece5d libnftnl-1.1.2.tar.bz2 +sha256 22dd97d3b06ae8c67499506e2bfd6803ce116479076ec3700e7a4c7cd9fcba0f libnftnl-1.1.3.tar.bz2 sha256 98193898c663001eff2fdcfb676e210c13042bc1a05e8d570c363efa396f8e24 COPYING diff --git a/buildroot/package/libnftnl/libnftnl.mk b/buildroot/package/libnftnl/libnftnl.mk index b8e015baf..a3fba488c 100644 --- a/buildroot/package/libnftnl/libnftnl.mk +++ b/buildroot/package/libnftnl/libnftnl.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNFTNL_VERSION = 1.1.2 +LIBNFTNL_VERSION = 1.1.3 LIBNFTNL_SITE = https://netfilter.org/projects/libnftnl/files LIBNFTNL_SOURCE = libnftnl-$(LIBNFTNL_VERSION).tar.bz2 LIBNFTNL_LICENSE = GPL-2.0+ diff --git a/buildroot/package/libnspr/0001-nios2.patch b/buildroot/package/libnspr/0001-nios2.patch index 2a967c459..52fbbfddd 100644 --- a/buildroot/package/libnspr/0001-nios2.patch +++ b/buildroot/package/libnspr/0001-nios2.patch @@ -1,17 +1,18 @@ -Add Nios-II support +Bug 1578360 - Add Nios-II support [Gustavo: update for nspr 4.10.9] Signed-off-by: Ezequiel Garcia [Fabrice: update for nspr 4.20] Signed-off-by: Fabrice Fontaine +[Giulio: update for nspr 4.22] +Signed-off-by: Giulio Benetti -Index: b/nspr/pr/include/md/_linux.cfg -=================================================================== ---- a/nspr/pr/include/md/_linux.cfg -+++ b/nspr/pr/include/md/_linux.cfg -@@ -1112,6 +1112,51 @@ - #define PR_BYTES_PER_WORD_LOG2 3 - #define PR_BYTES_PER_DWORD_LOG2 3 +diff -r 3af4891397ab -r 8487beb203e9 nspr/pr/include/md/_linux.cfg +--- a/nspr/pr/include/md/_linux.cfg Mon Aug 19 16:17:52 2019 +0200 ++++ b/nspr/pr/include/md/_linux.cfg Tue Sep 03 11:25:11 2019 +0200 +@@ -1157,6 +1157,51 @@ + #define PR_BYTES_PER_WORD_LOG2 2 + #define PR_BYTES_PER_DWORD_LOG2 3 +#elif defined(__nios2__) + @@ -61,14 +62,13 @@ Index: b/nspr/pr/include/md/_linux.cfg #else #error "Unknown CPU architecture" -Index: b/nspr/pr/include/md/_linux.h -=================================================================== ---- a/nspr/pr/include/md/_linux.h -+++ b/nspr/pr/include/md/_linux.h -@@ -57,6 +57,8 @@ - #define _PR_SI_ARCHITECTURE "riscv32" - #elif defined(__riscv) && (__riscv_xlen == 64) +diff -r 3af4891397ab -r 8487beb203e9 nspr/pr/include/md/_linux.h +--- a/nspr/pr/include/md/_linux.h Mon Aug 19 16:17:52 2019 +0200 ++++ b/nspr/pr/include/md/_linux.h Tue Sep 03 11:25:11 2019 +0200 +@@ -63,6 +63,8 @@ #define _PR_SI_ARCHITECTURE "riscv64" + #elif defined(__arc__) + #define _PR_SI_ARCHITECTURE "arc" +#elif defined(__nios2__) +#define _PR_SI_ARCHITECTURE "nios2" #else diff --git a/buildroot/package/libnspr/0002-microblaze.patch b/buildroot/package/libnspr/0002-microblaze.patch index 4c23259d5..6558882bd 100644 --- a/buildroot/package/libnspr/0002-microblaze.patch +++ b/buildroot/package/libnspr/0002-microblaze.patch @@ -1,15 +1,16 @@ -Add Microblaze support +Bug 1578363 - Add Microblaze support [Gustavo: update for nspr 4.10.9] Signed-off-by: Spenser Gilliland [Fabrice: update for nspr 4.20] Signed-off-by: Fabrice Fontaine +[Giulio: update for nspr 4.22] +Signed-off-by: Giulio Benetti -Index: b/nspr/pr/include/md/_linux.cfg -=================================================================== ---- a/nspr/pr/include/md/_linux.cfg -+++ b/nspr/pr/include/md/_linux.cfg -@@ -1157,6 +1157,56 @@ +diff -r 8487beb203e9 -r ab7d5c504daf nspr/pr/include/md/_linux.cfg +--- a/nspr/pr/include/md/_linux.cfg Tue Sep 03 11:25:11 2019 +0200 ++++ b/nspr/pr/include/md/_linux.cfg Tue Sep 03 11:33:15 2019 +0200 +@@ -1202,6 +1202,56 @@ #define PR_BYTES_PER_WORD_LOG2 2 #define PR_BYTES_PER_DWORD_LOG2 3 @@ -66,16 +67,15 @@ Index: b/nspr/pr/include/md/_linux.cfg #else #error "Unknown CPU architecture" -Index: b/nspr/pr/include/md/_linux.h -=================================================================== ---- a/nspr/pr/include/md/_linux.h -+++ b/nspr/pr/include/md/_linux.h -@@ -57,6 +57,8 @@ - #define _PR_SI_ARCHITECTURE "riscv32" - #elif defined(__riscv) && (__riscv_xlen == 64) - #define _PR_SI_ARCHITECTURE "riscv64" -+#elif defined(__microblaze__) -+#define _PR_SI_ARCHITECTURE "microblaze" +diff -r 8487beb203e9 -r ab7d5c504daf nspr/pr/include/md/_linux.h +--- a/nspr/pr/include/md/_linux.h Tue Sep 03 11:25:11 2019 +0200 ++++ b/nspr/pr/include/md/_linux.h Tue Sep 03 11:33:15 2019 +0200 +@@ -65,6 +65,8 @@ + #define _PR_SI_ARCHITECTURE "arc" #elif defined(__nios2__) #define _PR_SI_ARCHITECTURE "nios2" ++#elif defined(__microblaze__) ++#define _PR_SI_ARCHITECTURE "microblaze" #else + #error "Unknown CPU architecture" + #endif diff --git a/buildroot/package/libnspr/0003-nds32.patch b/buildroot/package/libnspr/0003-nds32.patch new file mode 100644 index 000000000..49d0d81ac --- /dev/null +++ b/buildroot/package/libnspr/0003-nds32.patch @@ -0,0 +1,73 @@ +Bug 1578364 - Add Nds32 support + +Signed-off-by: Nylon Chen +[Giulio: update for nspr 4.22] +Signed-off-by: Giulio Benetti + +diff -r ab7d5c504daf -r d212d80704a2 nspr/pr/include/md/_linux.cfg +--- a/nspr/pr/include/md/_linux.cfg Tue Sep 03 11:33:15 2019 +0200 ++++ b/nspr/pr/include/md/_linux.cfg Tue Sep 03 11:36:05 2019 +0200 +@@ -1252,6 +1252,51 @@ + #define PR_BYTES_PER_WORD_LOG2 2 + #define PR_BYTES_PER_DWORD_LOG2 3 + ++#elif defined(__nds32__) ++ ++#define IS_LITTLE_ENDIAN 1 ++#undef IS_BIG_ENDIAN ++ ++#define PR_BYTES_PER_BYTE 1 ++#define PR_BYTES_PER_SHORT 2 ++#define PR_BYTES_PER_INT 4 ++#define PR_BYTES_PER_INT64 8 ++#define PR_BYTES_PER_LONG 4 ++#define PR_BYTES_PER_FLOAT 4 ++#define PR_BYTES_PER_DOUBLE 8 ++#define PR_BYTES_PER_WORD 4 ++#define PR_BYTES_PER_DWORD 8 ++ ++#define PR_BITS_PER_BYTE 8 ++#define PR_BITS_PER_SHORT 16 ++#define PR_BITS_PER_INT 32 ++#define PR_BITS_PER_INT64 64 ++#define PR_BITS_PER_LONG 32 ++#define PR_BITS_PER_FLOAT 32 ++#define PR_BITS_PER_DOUBLE 64 ++#define PR_BITS_PER_WORD 32 ++ ++#define PR_BITS_PER_BYTE_LOG2 3 ++#define PR_BITS_PER_SHORT_LOG2 4 ++#define PR_BITS_PER_INT_LOG2 5 ++#define PR_BITS_PER_INT64_LOG2 6 ++#define PR_BITS_PER_LONG_LOG2 5 ++#define PR_BITS_PER_FLOAT_LOG2 5 ++#define PR_BITS_PER_DOUBLE_LOG2 6 ++#define PR_BITS_PER_WORD_LOG2 5 ++ ++#define PR_ALIGN_OF_SHORT 2 ++#define PR_ALIGN_OF_INT 4 ++#define PR_ALIGN_OF_LONG 4 ++#define PR_ALIGN_OF_INT64 4 ++#define PR_ALIGN_OF_FLOAT 4 ++#define PR_ALIGN_OF_DOUBLE 4 ++#define PR_ALIGN_OF_POINTER 4 ++#define PR_ALIGN_OF_WORD 4 ++ ++#define PR_BYTES_PER_WORD_LOG2 2 ++#define PR_BYTES_PER_DWORD_LOG2 3 ++ + #else + + #error "Unknown CPU architecture" +diff -r ab7d5c504daf -r d212d80704a2 nspr/pr/include/md/_linux.h +--- a/nspr/pr/include/md/_linux.h Tue Sep 03 11:33:15 2019 +0200 ++++ b/nspr/pr/include/md/_linux.h Tue Sep 03 11:36:05 2019 +0200 +@@ -67,6 +67,8 @@ + #define _PR_SI_ARCHITECTURE "nios2" + #elif defined(__microblaze__) + #define _PR_SI_ARCHITECTURE "microblaze" ++#elif defined(__nds32__) ++#define _PR_SI_ARCHITECTURE "nds32" + #else + #error "Unknown CPU architecture" + #endif diff --git a/buildroot/package/libnspr/libnspr.hash b/buildroot/package/libnspr/libnspr.hash index 33710b65a..0317f20b1 100644 --- a/buildroot/package/libnspr/libnspr.hash +++ b/buildroot/package/libnspr/libnspr.hash @@ -1,4 +1,4 @@ # From https://ftp.mozilla.org/pub/nspr/releases/v4.20/src/SHA256SUMS -sha256 2c8964913da89ffbaf464d49ce44d79e8804e1794ef9a8c52a7bff7224d1556e nspr-4.20.tar.gz +sha256 4b9d821037faf5723da901515ed9cac8b23ef1ea3729022259777393453477a4 nspr-4.23.tar.gz # Locally calculated sha256 fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85 nspr/LICENSE diff --git a/buildroot/package/libnspr/libnspr.mk b/buildroot/package/libnspr/libnspr.mk index 763c5393b..f21f69a74 100644 --- a/buildroot/package/libnspr/libnspr.mk +++ b/buildroot/package/libnspr/libnspr.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNSPR_VERSION = 4.20 +LIBNSPR_VERSION = 4.23 LIBNSPR_SOURCE = nspr-$(LIBNSPR_VERSION).tar.gz LIBNSPR_SITE = https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v$(LIBNSPR_VERSION)/src LIBNSPR_SUBDIR = nspr diff --git a/buildroot/package/libnss/0003-Bug-1590676-Fix-build-if-arm-doesn-t-support-NEON.patch b/buildroot/package/libnss/0003-Bug-1590676-Fix-build-if-arm-doesn-t-support-NEON.patch new file mode 100644 index 000000000..467a1dc47 --- /dev/null +++ b/buildroot/package/libnss/0003-Bug-1590676-Fix-build-if-arm-doesn-t-support-NEON.patch @@ -0,0 +1,50 @@ +From c915be634cbfb90eb7880ec9efbdba9b98c6d4c1 Mon Sep 17 00:00:00 2001 +From: Giulio Benetti +Date: Wed, 23 Oct 2019 11:47:03 +0200 +Subject: [PATCH] Bug 1590676 - Fix build if arm doesn't support NEON + +At the moment NSS assumes that ARM supports NEON extension but this is +not true and leads to build failure on ARM without NEON extension. +Add check to assure USE_HW_AES is not defined if ARM without NEON +extension is used. + +Signed-off-by: Giulio Benetti +--- + nss/lib/freebl/aes-armv8.c | 5 +++-- + nss/lib/freebl/rijndael.c | 3 ++- + 2 files changed, 5 insertions(+), 3 deletions(-) + +diff --git a/nss/lib/freebl/aes-armv8.c b/nss/lib/freebl/aes-armv8.c +index 40d5e2d34..057d1aed3 100644 +--- a/nss/lib/freebl/aes-armv8.c ++++ b/nss/lib/freebl/aes-armv8.c +@@ -5,9 +5,10 @@ + #include "secerr.h" + #include "rijndael.h" + +-#if (defined(__clang__) || \ ++#if ((defined(__clang__) || \ + (defined(__GNUC__) && defined(__GNUC_MINOR__) && \ +- (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 8)))) ++ (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 8)))) && \ ++ (defined(__ARM_NEON) || defined(__ARM_NEON__))) + + #ifndef __ARM_FEATURE_CRYPTO + #error "Compiler option is invalid" +diff --git a/nss/lib/freebl/rijndael.c b/nss/lib/freebl/rijndael.c +index 26bd58ee0..6d77d942d 100644 +--- a/nss/lib/freebl/rijndael.c ++++ b/nss/lib/freebl/rijndael.c +@@ -20,7 +20,8 @@ + #include "gcm.h" + #include "mpi.h" + +-#if !defined(IS_LITTLE_ENDIAN) && !defined(NSS_X86_OR_X64) ++#if (!defined(IS_LITTLE_ENDIAN) && !defined(NSS_X86_OR_X64)) || \ ++ (defined(__arm__) && !defined(__ARM_NEON) && !defined(__ARM_NEON__)) + // not test yet on big endian platform of arm + #undef USE_HW_AES + #endif +-- +2.20.1 + diff --git a/buildroot/package/libnss/libnss.hash b/buildroot/package/libnss/libnss.hash index 1d600f14e..518d95d84 100644 --- a/buildroot/package/libnss/libnss.hash +++ b/buildroot/package/libnss/libnss.hash @@ -1,4 +1,4 @@ -# From https://ftp.mozilla.org/pub/security/nss/releases/NSS_3_42_1_RTM/src/SHA256SUMS -sha256 087db37d38fd49dfd584dd2a8b5baa7fc88de7c9bd97c0c2d5be4abcafc61fc6 nss-3.42.1.tar.gz +# From https://ftp.mozilla.org/pub/security/nss/releases/NSS_3_46_1_RTM/src/SHA256SUMS +sha256 1ae3d1cb1de345b258788f2ef6b10a460068034c3fd64f42427a183d8342a6fb nss-3.47.1.tar.gz # Locally calculated sha256 a20c1a32d1f8102432360b42e932869f7c11c7cdbacf9cac554c422132af47f4 nss/COPYING diff --git a/buildroot/package/libnss/libnss.mk b/buildroot/package/libnss/libnss.mk index 89d614fe1..cf11deaf9 100644 --- a/buildroot/package/libnss/libnss.mk +++ b/buildroot/package/libnss/libnss.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNSS_VERSION = 3.42.1 +LIBNSS_VERSION = 3.47.1 LIBNSS_SOURCE = nss-$(LIBNSS_VERSION).tar.gz LIBNSS_SITE = https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_$(subst .,_,$(LIBNSS_VERSION))_RTM/src LIBNSS_DISTDIR = dist @@ -13,6 +13,14 @@ LIBNSS_DEPENDENCIES = libnspr sqlite zlib LIBNSS_LICENSE = MPL-2.0 LIBNSS_LICENSE_FILES = nss/COPYING +# Need to pass down TARGET_CFLAGS and TARGET_LDFLAGS +define LIBNSS_FIXUP_LINUX_MK + echo 'OS_CFLAGS += $(TARGET_CFLAGS)' >> $(@D)/nss/coreconf/Linux.mk + echo 'LDFLAGS += $(TARGET_LDFLAGS)' >> $(@D)/nss/coreconf/Linux.mk +endef + +LIBNSS_PRE_CONFIGURE_HOOKS += LIBNSS_FIXUP_LINUX_MK + # --gc-sections triggers binutils ld segfault # https://sourceware.org/bugzilla/show_bug.cgi?id=21180 ifeq ($(BR2_microblaze),y) @@ -33,15 +41,14 @@ LIBNSS_BUILD_VARS = \ MOZILLA_CLIENT=1 \ NSPR_INCLUDE_DIR=$(STAGING_DIR)/usr/include/nspr \ NSPR_LIB_DIR=$(STAGING_DIR)/usr/lib \ - BUILD_OPT=1 \ NS_USE_GCC=1 \ NSS_DISABLE_GTESTS=1 \ NSS_USE_SYSTEM_SQLITE=1 \ - NSS_ENABLE_ECC=1 \ NATIVE_CC="$(HOSTCC)" \ OS_ARCH="Linux" \ OS_RELEASE="2.6" \ - OS_TEST="$(LIBNSS_ARCH)" + OS_TEST="$(LIBNSS_ARCH)" \ + NSS_ENABLE_WERROR=0 # #pragma usage needs gcc >= 4.8 # See https://bugzilla.mozilla.org/show_bug.cgi?id=1226179 @@ -102,13 +109,12 @@ HOST_LIBNSS_BUILD_VARS = \ MOZILLA_CLIENT=1 \ NSPR_INCLUDE_DIR=$(HOST_DIR)/include/nspr \ NSPR_LIB_DIR=$(HOST_DIR)/lib \ - BUILD_OPT=1 \ NS_USE_GCC=1 \ NSS_DISABLE_GTESTS=1 \ NSS_USE_SYSTEM_SQLITE=1 \ SQLITE_INCLUDE_DIR=$(HOST_DIR)/include \ ZLIB_INCLUDE_DIR=$(HOST_DIR)/include \ - NSS_ENABLE_ECC=1 + NSS_ENABLE_WERROR=0 HOST_LIBNSS_DEPENDENCIES = host-libnspr host-sqlite host-zlib diff --git a/buildroot/package/libopenssl/libopenssl.hash b/buildroot/package/libopenssl/libopenssl.hash index 753f447ab..1b239fbee 100644 --- a/buildroot/package/libopenssl/libopenssl.hash +++ b/buildroot/package/libopenssl/libopenssl.hash @@ -1,5 +1,5 @@ -# From https://www.openssl.org/source/openssl-1.1.1b.tar.gz.sha256 -sha256 f6fb3079ad15076154eda9413fed42877d668e7069d9b87396d0804fdb3f4c90 openssl-1.1.1c.tar.gz +# From https://www.openssl.org/source/openssl-1.1.1d.tar.gz.sha256 +sha256 1e3a91bc1f9dfce01af26026f856e064eab4c8ee0a8f457b5ae30b40b8b711f2 openssl-1.1.1d.tar.gz # License files sha256 c32913b33252e71190af2066f08115c69bc9fddadf3bf29296e20c835389841c LICENSE diff --git a/buildroot/package/libopenssl/libopenssl.mk b/buildroot/package/libopenssl/libopenssl.mk index 2a7514d59..a1bbf9a90 100644 --- a/buildroot/package/libopenssl/libopenssl.mk +++ b/buildroot/package/libopenssl/libopenssl.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBOPENSSL_VERSION = 1.1.1c +LIBOPENSSL_VERSION = 1.1.1d LIBOPENSSL_SITE = https://www.openssl.org/source LIBOPENSSL_SOURCE = openssl-$(LIBOPENSSL_VERSION).tar.gz LIBOPENSSL_LICENSE = OpenSSL or SSLeay @@ -12,7 +12,9 @@ LIBOPENSSL_LICENSE_FILES = LICENSE LIBOPENSSL_INSTALL_STAGING = YES LIBOPENSSL_DEPENDENCIES = zlib HOST_LIBOPENSSL_DEPENDENCIES = host-zlib -LIBOPENSSL_TARGET_ARCH = linux-generic32 +# no-asm is needed with generic architectures such as linux-generic32, see +# https://github.com/openssl/openssl/issues/9839 +LIBOPENSSL_TARGET_ARCH = linux-generic32 no-asm LIBOPENSSL_CFLAGS = $(TARGET_CFLAGS) LIBOPENSSL_PROVIDES = openssl @@ -55,7 +57,9 @@ endif ifeq ($(BR2_STATIC_LIBS),y) # Use "gcc" minimalistic target to disable DSO -LIBOPENSSL_TARGET_ARCH = gcc +# no-asm is needed with generic architectures such as gcc, see +# https://github.com/openssl/openssl/issues/9839 +LIBOPENSSL_TARGET_ARCH = gcc no-asm else # Some architectures are optimized in OpenSSL # Doesn't work for thumb-only (Cortex-M?) diff --git a/buildroot/package/libpcap/0001-pcap-usb-linux.c-add-missing-limits.h-for-musl-systems.patch b/buildroot/package/libpcap/0001-pcap-usb-linux.c-add-missing-limits.h-for-musl-systems.patch deleted file mode 100644 index aabaef338..000000000 --- a/buildroot/package/libpcap/0001-pcap-usb-linux.c-add-missing-limits.h-for-musl-systems.patch +++ /dev/null @@ -1,26 +0,0 @@ -From aafa3512b7b742f5e66a5543e41974cc5e7eebfa Mon Sep 17 00:00:00 2001 -From: maxice8 -Date: Sun, 22 Jul 2018 18:54:17 -0300 -Subject: [PATCH] pcap-usb-linux.c: add missing limits.h for musl systems. - -fix compilation on musl libc systems like Void Linux and Alpine. - -Signed-off-by: Fabrice Fontaine -[Retrieved from: -https://github.com/the-tcpdump-group/libpcap/commit/aafa3512b7b742f5e66a5543e41974cc5e7eebfa] ---- - pcap-usb-linux.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/pcap-usb-linux.c b/pcap-usb-linux.c -index 6f8adf65e..b92c05ea1 100644 ---- a/pcap-usb-linux.c -+++ b/pcap-usb-linux.c -@@ -50,6 +50,7 @@ - #include - #include - #include -+#include - #include - #include - #include diff --git a/buildroot/package/libpcap/libpcap.hash b/buildroot/package/libpcap/libpcap.hash index 19ce2adbe..a24fba24d 100644 --- a/buildroot/package/libpcap/libpcap.hash +++ b/buildroot/package/libpcap/libpcap.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -sha256 2edb88808e5913fdaa8e9c1fcaf272e19b2485338742b5074b9fe44d68f37019 libpcap-1.9.0.tar.gz +sha256 635237637c5b619bcceba91900666b64d56ecb7be63f298f601ec786ce087094 libpcap-1.9.1.tar.gz # Hash for license file: sha256 8a54594d257e14a5260ac770f1633516cb51e3fc28c40136ce2697014eda7afd LICENSE diff --git a/buildroot/package/libpcap/libpcap.mk b/buildroot/package/libpcap/libpcap.mk index ebceca527..476183555 100644 --- a/buildroot/package/libpcap/libpcap.mk +++ b/buildroot/package/libpcap/libpcap.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBPCAP_VERSION = 1.9.0 +LIBPCAP_VERSION = 1.9.1 LIBPCAP_SITE = http://www.tcpdump.org/release LIBPCAP_LICENSE = BSD-3-Clause LIBPCAP_LICENSE_FILES = LICENSE diff --git a/buildroot/package/libpciaccess/0001-pciaccess.pc.in-add-Libs.Private.patch b/buildroot/package/libpciaccess/0001-pciaccess.pc.in-add-Libs.Private.patch new file mode 100644 index 000000000..e520dd03d --- /dev/null +++ b/buildroot/package/libpciaccess/0001-pciaccess.pc.in-add-Libs.Private.patch @@ -0,0 +1,28 @@ +From e1f9fc0a11559c1200005c4bfe34cd217ec117b4 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 25 Oct 2019 19:03:32 +0200 +Subject: [PATCH] pciaccess.pc.in: add Libs.Private + +Add Libs.Private in pciaccess.pc.in so applications that wants to link +statically with pciaccess will know that they have to link with its +dependencies such as -lz + +Signed-off-by: Fabrice Fontaine +[Upstream status: +https://gitlab.freedesktop.org/xorg/lib/libpciaccess/merge_requests/10] +--- + pciaccess.pc.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/pciaccess.pc.in b/pciaccess.pc.in +index 706c5f7..c2da3d9 100644 +--- a/pciaccess.pc.in ++++ b/pciaccess.pc.in +@@ -8,3 +8,4 @@ Description: Library providing generic access to the PCI bus and devices. + Version: @PACKAGE_VERSION@ + Cflags: -I${includedir} + Libs: -L${libdir} -lpciaccess ++Libs.Private: @PCIACCESS_LIBS@ +-- +2.23.0 + diff --git a/buildroot/package/libpciaccess/Config.in b/buildroot/package/libpciaccess/Config.in index 6cc983f57..1f5d5e6be 100644 --- a/buildroot/package/libpciaccess/Config.in +++ b/buildroot/package/libpciaccess/Config.in @@ -2,3 +2,7 @@ config BR2_PACKAGE_LIBPCIACCESS bool "libpciaccess" help X.Org libpciaccess + + Generic PCI access library + + https://gitlab.freedesktop.org/xorg/lib/libpciaccess diff --git a/buildroot/package/libpri/libpri.mk b/buildroot/package/libpri/libpri.mk index 2e2d0e8a6..e1fa2abcf 100644 --- a/buildroot/package/libpri/libpri.mk +++ b/buildroot/package/libpri/libpri.mk @@ -33,7 +33,8 @@ endif LIBPRI_UTILS = pridump pritest rosetest testprilib define LIBPRI_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ + $(TARGET_MAKE_ENV) $(MAKE1) $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -fPIC" -C $(@D) \ $(LIBPRI_LIBS) $(LIBPRI_UTILS) endef diff --git a/buildroot/package/librsvg/librsvg.mk b/buildroot/package/librsvg/librsvg.mk index 4f563ce6d..470910d94 100644 --- a/buildroot/package/librsvg/librsvg.mk +++ b/buildroot/package/librsvg/librsvg.mk @@ -9,10 +9,12 @@ LIBRSVG_VERSION = $(LIBRSVG_VERSION_MAJOR).20 LIBRSVG_SITE = http://ftp.gnome.org/pub/gnome/sources/librsvg/$(LIBRSVG_VERSION_MAJOR) LIBRSVG_SOURCE = librsvg-$(LIBRSVG_VERSION).tar.xz LIBRSVG_INSTALL_STAGING = YES +LIBRSVG_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) LIBRSVG_CONF_OPTS = --disable-pixbuf-loader --disable-tools --enable-introspection=no HOST_LIBRSVG_CONF_OPTS = --enable-introspection=no LIBRSVG_DEPENDENCIES = cairo host-gdk-pixbuf gdk-pixbuf libcroco libglib2 libxml2 pango \ - $(if $(BR2_PACKAGE_LIBGTK3),libgtk3) + $(if $(BR2_PACKAGE_LIBGTK3),libgtk3) \ + $(TARGET_NLS_DEPENDENCIES) HOST_LIBRSVG_DEPENDENCIES = host-cairo host-gdk-pixbuf host-libcroco host-libglib2 host-libxml2 host-pango LIBRSVG_LICENSE = LGPL-2.0+ LIBRSVG_LICENSE_FILES = COPYING.LIB diff --git a/buildroot/package/libseccomp/0002-Circumvent-bug-in-uClibc-ng-syscall-on-x86_64-system.patch b/buildroot/package/libseccomp/0002-Circumvent-bug-in-uClibc-ng-syscall-on-x86_64-system.patch new file mode 100644 index 000000000..6ac9b08a7 --- /dev/null +++ b/buildroot/package/libseccomp/0002-Circumvent-bug-in-uClibc-ng-syscall-on-x86_64-system.patch @@ -0,0 +1,80 @@ +From 613e601bb4b50dc359b41f162a5b629449e4bbea Mon Sep 17 00:00:00 2001 +From: Carlos Santos +Date: Fri, 18 Oct 2019 22:02:49 -0300 +Subject: [PATCH] Circumvent bug in uClibc-ng syscall() on x86_64 systems + +On uClibc at least up to v1.0.32, syscall() for x86_64 is defined in +libc/sysdeps/linux/x86_64/syscall.S as + +syscall: + movq %rdi, %rax /* Syscall number -> rax. */ + movq %rsi, %rdi /* shift arg1 - arg5. */ + movq %rdx, %rsi + movq %rcx, %rdx + movq %r8, %r10 + movq %r9, %r8 + movq 8(%rsp),%r9 /* arg6 is on the stack. */ + syscall /* Do the system call. */ + cmpq $-4095, %rax /* Check %rax for error. */ + jae __syscall_error /* Branch forward if it failed. */ + ret /* Return to caller. */ + +And __syscall_error is defined in +libc/sysdeps/linux/x86_64/__syscall_error.c as + +int __syscall_error(void) attribute_hidden; +int __syscall_error(void) +{ + register int err_no __asm__ ("%rcx"); + __asm__ ("mov %rax, %rcx\n\t" + "neg %rcx"); + __set_errno(err_no); + return -1; +} + +Notice that __syscall_error returns -1 as a 32-bit int in %rax, a 64-bit +register i.e. 0x00000000ffffffff (decimal 4294967295). When this value +is compared to -1 in _sys_chk_seccomp_flag_kernel() the result is false, +leading the function to always return 0. + +Prevent the error by coercing the return value of syscall() to int in a +temporary variable before comparing it to -1. We could use just an (int) +cast but the variable makes the code more readable and the machine code +generated by the compiler is the same in both cases. + +All other syscall() invocations were inspected and they either already +coerce the result to int or do not compare it to -1. + +The same problem probably occurs on other 64-bit systems but so far only +x86_64 was tested. + +A bug report is being submitted to uClibc. + +Signed-off-by: Carlos Santos +--- + src/system.c | 8 +++++--- + 1 file changed, 5 insertions(+), 3 deletions(-) + +diff --git a/src/system.c b/src/system.c +index 8e5aafc..811b401 100644 +--- a/src/system.c ++++ b/src/system.c +@@ -215,10 +215,12 @@ static int _sys_chk_seccomp_flag_kernel(int flag) + /* this is an invalid seccomp(2) call because the last argument + * is NULL, but depending on the errno value of EFAULT we can + * guess if the filter flag is supported or not */ +- if (sys_chk_seccomp_syscall() == 1 && +- syscall(_nr_seccomp, SECCOMP_SET_MODE_FILTER, flag, NULL) == -1 && +- errno == EFAULT) ++ int rc; ++ if (sys_chk_seccomp_syscall() == 1) { ++ rc = syscall(_nr_seccomp, SECCOMP_SET_MODE_FILTER, flag, NULL); ++ if (rc == -1 && errno == EFAULT) + return 1; ++ } + + return 0; + } +-- +2.18.1 + diff --git a/buildroot/package/libseccomp/libseccomp.hash b/buildroot/package/libseccomp/libseccomp.hash index 0823903c3..39c5f8aa3 100644 --- a/buildroot/package/libseccomp/libseccomp.hash +++ b/buildroot/package/libseccomp/libseccomp.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 b7ee0299157fb7a6a81c99f2e0d7e64429b7d7c0eae43c3a6ef91e87eeed2868 libseccomp-v2.4.0.tar.gz +sha256 36aa502c0461ae9efc6c93ec2430d6badd9bf91ecbe73806baf7b7c6f687ab4f libseccomp-2.4.1.tar.gz sha256 102900208eef27b766380135906d431dba87edaa7ec6aa72e6ebd3dd67f3a97b LICENSE diff --git a/buildroot/package/libseccomp/libseccomp.mk b/buildroot/package/libseccomp/libseccomp.mk index 90b981f04..491e51b37 100644 --- a/buildroot/package/libseccomp/libseccomp.mk +++ b/buildroot/package/libseccomp/libseccomp.mk @@ -4,8 +4,8 @@ # ################################################################################ -LIBSECCOMP_VERSION = v2.4.0 -LIBSECCOMP_SITE = $(call github,seccomp,libseccomp,$(LIBSECCOMP_VERSION)) +LIBSECCOMP_VERSION = 2.4.1 +LIBSECCOMP_SITE = $(call github,seccomp,libseccomp,v$(LIBSECCOMP_VERSION)) LIBSECCOMP_LICENSE = LGPL-2.1 LIBSECCOMP_LICENSE_FILES = LICENSE LIBSECCOMP_INSTALL_STAGING = YES diff --git a/buildroot/package/libsecret/Config.in b/buildroot/package/libsecret/Config.in index 0539e5da2..04a3e46fe 100644 --- a/buildroot/package/libsecret/Config.in +++ b/buildroot/package/libsecret/Config.in @@ -10,7 +10,7 @@ config BR2_PACKAGE_LIBSECRET using DBus. gnome-keyring and ksecretservice are both implementations of a Secret Service. - https://wiki.gnome.org/Libsecret + https://wiki.gnome.org/Projects/Libsecret comment "libsecret needs a toolchain w/ wchar, threads" depends on BR2_USE_MMU diff --git a/buildroot/package/libsecret/libsecret.mk b/buildroot/package/libsecret/libsecret.mk index adc7c508d..f5879fbf4 100644 --- a/buildroot/package/libsecret/libsecret.mk +++ b/buildroot/package/libsecret/libsecret.mk @@ -9,7 +9,8 @@ LIBSECRET_VERSION = $(LIBSECRET_VERSION_MAJOR).6 LIBSECRET_SITE = http://ftp.gnome.org/pub/GNOME/sources/libsecret/$(LIBSECRET_VERSION_MAJOR) LIBSECRET_SOURCE = libsecret-$(LIBSECRET_VERSION).tar.xz LIBSECRET_INSTALL_STAGING = YES -LIBSECRET_DEPENDENCIES = libglib2 host-intltool +LIBSECRET_DEPENDENCIES = libglib2 host-intltool $(TARGET_NLS_DEPENDENCIES) +LIBSECRET_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) LIBSECRET_CONF_OPTS = \ --disable-manpages \ --disable-strict \ diff --git a/buildroot/package/libsexy/Config.in b/buildroot/package/libsexy/Config.in index 5d1e710c4..a2a2cc820 100644 --- a/buildroot/package/libsexy/Config.in +++ b/buildroot/package/libsexy/Config.in @@ -8,4 +8,4 @@ config BR2_PACKAGE_LIBSEXY GtkLabel by subclassing them and working around the limitations of the widgets. - http://www.chipx86.com/wiki/Libsexy + https://blog.chipx86.com/tag/libsexy/ diff --git a/buildroot/package/libshout/libshout.mk b/buildroot/package/libshout/libshout.mk index 4f209081a..375ce05b4 100644 --- a/buildroot/package/libshout/libshout.mk +++ b/buildroot/package/libshout/libshout.mk @@ -5,7 +5,7 @@ ################################################################################ LIBSHOUT_VERSION = 2.4.1 -LIBSHOUT_SITE = http://downloads.xiph.org/releases/libshout +LIBSHOUT_SITE = https://downloads.xiph.org/releases/libshout LIBSHOUT_LICENSE = LGPL-2.0+ LIBSHOUT_LICENSE_FILES = COPYING LIBSHOUT_INSTALL_STAGING = YES diff --git a/buildroot/package/libsigrok/libsigrok.hash b/buildroot/package/libsigrok/libsigrok.hash index 7a52c6ca1..e5ab5d973 100644 --- a/buildroot/package/libsigrok/libsigrok.hash +++ b/buildroot/package/libsigrok/libsigrok.hash @@ -1,2 +1,3 @@ # Locally computed sha256 e40fde7af98d29e922e9d3cbe0a6c0569889153fc31e47b8b1afe4d846292b9c libsigrok-0.5.1.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/buildroot/package/libsigrok/libsigrok.mk b/buildroot/package/libsigrok/libsigrok.mk index 5bca9ad51..aa79191e9 100644 --- a/buildroot/package/libsigrok/libsigrok.mk +++ b/buildroot/package/libsigrok/libsigrok.mk @@ -10,27 +10,27 @@ LIBSIGROK_LICENSE = GPL-3.0+ LIBSIGROK_LICENSE_FILES = COPYING LIBSIGROK_INSTALL_STAGING = YES LIBSIGROK_DEPENDENCIES = libglib2 libzip host-pkgconf -LIBSIGROK_CONF_OPTS = --disable-glibtest --disable-java --disable-python +LIBSIGROK_CONF_OPTS = --disable-java --disable-python ifeq ($(BR2_PACKAGE_LIBSERIALPORT),y) -LIBSIGROK_CONF_OPTS += --enable-libserialport +LIBSIGROK_CONF_OPTS += --with-libserialport LIBSIGROK_DEPENDENCIES += libserialport else -LIBSIGROK_CONF_OPTS += --disable-libserialport +LIBSIGROK_CONF_OPTS += --without-libserialport endif -ifeq ($(BR2_PACKAGE_LIBFTDI),y) -LIBSIGROK_CONF_OPTS += --enable-libftdi -LIBSIGROK_DEPENDENCIES += libftdi +ifeq ($(BR2_PACKAGE_LIBFTDI1),y) +LIBSIGROK_CONF_OPTS += --with-libftdi +LIBSIGROK_DEPENDENCIES += libftdi1 else -LIBSIGROK_CONF_OPTS += --disable-libftdi +LIBSIGROK_CONF_OPTS += --without-libftdi endif ifeq ($(BR2_PACKAGE_LIBUSB),y) -LIBSIGROK_CONF_OPTS += --enable-libusb +LIBSIGROK_CONF_OPTS += --with-libusb LIBSIGROK_DEPENDENCIES += libusb else -LIBSIGROK_CONF_OPTS += --disable-libusb +LIBSIGROK_CONF_OPTS += --without-libusb endif ifeq ($(BR2_PACKAGE_GLIBMM),y) diff --git a/buildroot/package/libss7/libss7.mk b/buildroot/package/libss7/libss7.mk index 541505b26..151b6a61b 100644 --- a/buildroot/package/libss7/libss7.mk +++ b/buildroot/package/libss7/libss7.mk @@ -36,7 +36,8 @@ endif LIBSS7_UTILS = parser_debug ss7test ss7linktest define LIBSS7_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -fPIC" -C $(@D) \ $(LIBSS7_LIBS) $(LIBSS7_UTILS) endef diff --git a/buildroot/package/libssh2/0001-drop-custom-buildconf-script.patch b/buildroot/package/libssh2/0001-drop-custom-buildconf-script.patch index a9a98e083..bf187b26a 100644 --- a/buildroot/package/libssh2/0001-drop-custom-buildconf-script.patch +++ b/buildroot/package/libssh2/0001-drop-custom-buildconf-script.patch @@ -29,6 +29,8 @@ Update gitignore accordingly, too. Signed-off-by: "Yann E. MORIN" Cc: Sam Voss +[Fabrice: Remove .gitignore so patch applies on 1.9.0] +Signed-off-by: Fabrice Fontaine --- .gitignore | 2 ++ buildconf | 24 +++++------------------- @@ -37,19 +39,6 @@ Cc: Sam Voss example/Makefile.am | 2 +- 5 files changed, 9 insertions(+), 23 deletions(-) -diff --git a/.gitignore b/.gitignore -index 997e51e1..b6d6b5cb 100644 ---- a/.gitignore -+++ b/.gitignore -@@ -13,6 +13,8 @@ Makefile - Makefile.in - aclocal.m4 - autom4te.cache -+compile -+test-driver - config.guess - config.log - config.status diff --git a/buildconf b/buildconf index 558dcb66..728b3397 100755 --- a/buildconf @@ -95,19 +84,6 @@ index c6ff7535..6939d0d6 100644 AM_MAINTAINER_MODE m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) -diff --git a/example/.gitignore b/example/.gitignore -index 13448191..cac152b8 100644 ---- a/example/.gitignore -+++ b/example/.gitignore -@@ -20,8 +20,6 @@ sftp_write_nonblock - config.h.in - ssh2_exec - ssh2_agent --libssh2_config.h --libssh2_config.h.in - stamp-h2 - sftp_append - sftp_write_sliding diff --git a/example/Makefile.am b/example/Makefile.am index 5cf5f071..41f65b12 100644 --- a/example/Makefile.am diff --git a/buildroot/package/libssh2/libssh2.hash b/buildroot/package/libssh2/libssh2.hash index c4732a2c0..8e048ff50 100644 --- a/buildroot/package/libssh2/libssh2.hash +++ b/buildroot/package/libssh2/libssh2.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 468e7a81a8121c06cb099eef2e17106b0b8c2e1d890b1c0e34e1951f182babb1 libssh2-1b3cbaff518f32e5b70650d4b7b52361b1410d37.tar.gz +sha256 d5fb8bd563305fd1074dda90bd053fb2d29fc4bce048d182f96eaa466dfadafd libssh2-1.9.0.tar.gz sha256 e15ed284a15e80115467d6d7f030f0d89d8fabbecd78fb6e0f861f0cfc128fd9 COPYING diff --git a/buildroot/package/libssh2/libssh2.mk b/buildroot/package/libssh2/libssh2.mk index abee1f8c7..bd8517dac 100644 --- a/buildroot/package/libssh2/libssh2.mk +++ b/buildroot/package/libssh2/libssh2.mk @@ -4,8 +4,8 @@ # ################################################################################ -LIBSSH2_VERSION = 1b3cbaff518f32e5b70650d4b7b52361b1410d37 -LIBSSH2_SITE = $(call github,libssh2,libssh2,$(LIBSSH2_VERSION)) +LIBSSH2_VERSION = 1.9.0 +LIBSSH2_SITE = https://www.libssh2.org/download LIBSSH2_LICENSE = BSD LIBSSH2_LICENSE_FILES = COPYING LIBSSH2_INSTALL_STAGING = YES diff --git a/buildroot/package/libstrophe/libstrophe.hash b/buildroot/package/libstrophe/libstrophe.hash index 72eb38652..1e46a82bc 100644 --- a/buildroot/package/libstrophe/libstrophe.hash +++ b/buildroot/package/libstrophe/libstrophe.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 158145bc1565a5fd0bbd7f57e3e15d768e58b8a460897ab5918a5a689d67ae6f libstrophe-0.9.2.tar.gz +sha256 8a3b79f62177ed59c01d4d4108357ff20bd933d53b845ee4e350d304c051a4fe libstrophe-0.9.3.tar.gz sha256 82476f36ffd5e895a176013c0812166ba7b7d99f3d536fc7f5ed2e33e9f74a08 MIT-LICENSE.txt sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 GPL-LICENSE.txt diff --git a/buildroot/package/libstrophe/libstrophe.mk b/buildroot/package/libstrophe/libstrophe.mk index 7445caa67..d5434f503 100644 --- a/buildroot/package/libstrophe/libstrophe.mk +++ b/buildroot/package/libstrophe/libstrophe.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSTROPHE_VERSION = 0.9.2 +LIBSTROPHE_VERSION = 0.9.3 LIBSTROPHE_SITE = $(call github,strophe,libstrophe,$(LIBSTROPHE_VERSION)) LIBSTROPHE_DEPENDENCIES = openssl host-pkgconf # Doesn't ship configure diff --git a/buildroot/package/libsvgtiny/libsvgtiny.hash b/buildroot/package/libsvgtiny/libsvgtiny.hash index fce379535..86096cef3 100644 --- a/buildroot/package/libsvgtiny/libsvgtiny.hash +++ b/buildroot/package/libsvgtiny/libsvgtiny.hash @@ -1,2 +1,3 @@ # Locally computed sha256 082a2e8849f05e2364a942eec51a798d637c6eca44db8c73350a038ebd1fd268 libsvgtiny-ea9d99fc8b231c22d06168135e181d61f4eb2f06.tar.gz +sha256 92b965c77be71661cae51425a6b40a5ca274f44cc13c723c90fb471a9a26a828 README diff --git a/buildroot/package/libsvgtiny/libsvgtiny.mk b/buildroot/package/libsvgtiny/libsvgtiny.mk index febd3fcec..fe7dc0a6d 100644 --- a/buildroot/package/libsvgtiny/libsvgtiny.mk +++ b/buildroot/package/libsvgtiny/libsvgtiny.mk @@ -12,6 +12,8 @@ LIBSVGTINY_DEPENDENCIES = \ libxml2 host-gperf host-pkgconf host-netsurf-buildsystem LIBSVGTINY_LICENSE = MIT LIBSVGTINY_LICENSE_FILES = README +# Package does not build in parallel due to improper make rules +LIBSVGTINY_MAKE = $(MAKE1) # The libsvgtiny build system cannot build both the shared and static # libraries. So when the Buildroot configuration requests to build diff --git a/buildroot/package/libtorrent/0001-libtorrent.pc.in-add-Libs.Private.patch b/buildroot/package/libtorrent/0001-libtorrent.pc.in-add-Libs.Private.patch new file mode 100644 index 000000000..7d363d293 --- /dev/null +++ b/buildroot/package/libtorrent/0001-libtorrent.pc.in-add-Libs.Private.patch @@ -0,0 +1,30 @@ +From a86219e725441eb87321fa3e24531dafa54ee674 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 20 Oct 2019 20:23:19 +0200 +Subject: [PATCH] libtorrent.pc.in: add Libs.Private + +Add Libs.Private: -lz so applications that want to link statically with +libtorrent (such as rtorrent) will know that they must link with -lz + +Fixes: + - http://autobuild.buildroot.org/results/075598e1699c2ac20a4dfbcb5695bbb7343f9a86 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/rakshasa/libtorrent/pull/202] +--- + libtorrent.pc.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libtorrent.pc.in b/libtorrent.pc.in +index cf6612bc..6108f7e9 100644 +--- a/libtorrent.pc.in ++++ b/libtorrent.pc.in +@@ -7,4 +7,5 @@ Name: libtorrent + Description: A BitTorrent library + Version: @VERSION@ + Libs: -L${libdir} -ltorrent ++Libs.Private: -lz + Cflags: -I${includedir} +-- +2.23.0 + diff --git a/buildroot/package/libunwind/libunwind.mk b/buildroot/package/libunwind/libunwind.mk index 7adf31896..7469b789e 100644 --- a/buildroot/package/libunwind/libunwind.mk +++ b/buildroot/package/libunwind/libunwind.mk @@ -11,7 +11,9 @@ LIBUNWIND_LICENSE_FILES = COPYING LIBUNWIND_LICENSE = MIT LIBUNWIND_AUTORECONF = YES -LIBUNWIND_CONF_OPTS = --disable-tests +LIBUNWIND_CONF_OPTS = \ + --disable-tests \ + $(if $(BR2_INSTALL_LIBSTDCPP),--enable-cxx-exceptions,--disable-cxx-exceptions) ifeq ($(BR2_PACKAGE_LIBATOMIC_OPS),y) LIBUNWIND_DEPENDENCIES = libatomic_ops diff --git a/buildroot/package/libvips/libvips.mk b/buildroot/package/libvips/libvips.mk index 7622f32fb..72fcf6003 100644 --- a/buildroot/package/libvips/libvips.mk +++ b/buildroot/package/libvips/libvips.mk @@ -20,7 +20,8 @@ ifeq ($(BR2_sparc64),y) LIBVIPS_CXXFLAGS += -O0 endif -LIBVIPS_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) $(LIBVIPS_CXXFLAGS)" +LIBVIPS_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) $(LIBVIPS_CXXFLAGS)" \ + LIBS=$(TARGET_NLS_LIBS) LIBVIPS_CONF_OPTS = \ --disable-introspection \ diff --git a/buildroot/package/libvncserver/Config.in b/buildroot/package/libvncserver/Config.in index 460aa784e..d5fac82e8 100644 --- a/buildroot/package/libvncserver/Config.in +++ b/buildroot/package/libvncserver/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_LIBVNCSERVER help libvncserver is a VNC server/client library. - http://libvncserver.sourceforge.net/ + https://libvnc.github.io/ if BR2_PACKAGE_LIBVNCSERVER diff --git a/buildroot/package/libvorbis/Config.in b/buildroot/package/libvorbis/Config.in index 3d5b5d6d6..1b7cd6c3b 100644 --- a/buildroot/package/libvorbis/Config.in +++ b/buildroot/package/libvorbis/Config.in @@ -13,3 +13,5 @@ config BR2_PACKAGE_LIBVORBIS representations such as MPEG-4 (AAC), and similar to, but higher performance than MPEG-1/2 audio layer 3, MPEG-4 audio (TwinVQ), WMA and PAC. + + https://xiph.org/vorbis/ diff --git a/buildroot/package/linux-fusion/Config.in b/buildroot/package/linux-fusion/Config.in index ed8bd6ad4..14b4f946a 100644 --- a/buildroot/package/linux-fusion/Config.in +++ b/buildroot/package/linux-fusion/Config.in @@ -8,3 +8,5 @@ config BR2_PACKAGE_LINUX_FUSION help DirectFB Communication Layer allowing multiple DirectFB applications to run concurrently + + https://github.com/deniskropp/linux-fusion diff --git a/buildroot/package/linux-headers/Config.in.host b/buildroot/package/linux-headers/Config.in.host index d092da2fb..17a27075c 100644 --- a/buildroot/package/linux-headers/Config.in.host +++ b/buildroot/package/linux-headers/Config.in.host @@ -287,10 +287,10 @@ endchoice config BR2_DEFAULT_KERNEL_HEADERS string - default "4.4.180" if BR2_KERNEL_HEADERS_4_4 - default "4.9.180" if BR2_KERNEL_HEADERS_4_9 - default "4.14.123" if BR2_KERNEL_HEADERS_4_14 - default "4.19.47" if BR2_KERNEL_HEADERS_4_19 + default "4.4.206" if BR2_KERNEL_HEADERS_4_4 + default "4.9.206" if BR2_KERNEL_HEADERS_4_9 + default "4.14.158" if BR2_KERNEL_HEADERS_4_14 + default "4.19.88" if BR2_KERNEL_HEADERS_4_19 default "4.20.17" if BR2_KERNEL_HEADERS_4_20 default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION default "custom" if BR2_KERNEL_HEADERS_CUSTOM_TARBALL diff --git a/buildroot/package/linux-headers/linux-headers.mk b/buildroot/package/linux-headers/linux-headers.mk index 95432ade8..676c8c44e 100644 --- a/buildroot/package/linux-headers/linux-headers.mk +++ b/buildroot/package/linux-headers/linux-headers.mk @@ -60,7 +60,8 @@ endif # LINUX_HEADERS_CUSTOM_TARBALL # Apply any necessary patches if we are using the headers from a kernel # build. ifeq ($(BR2_KERNEL_HEADERS_AS_KERNEL),y) -LINUX_HEADERS_PATCHES = $(call qstrip,$(BR2_LINUX_KERNEL_PATCH)) +LINUX_HEADERS_PATCHES = $(call qstrip,$(BR2_LINUX_KERNEL_PATCH)) \ + $(wildcard $(addsuffix /linux,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR)))) # We rely on the generic package infrastructure to download and apply # remote patches (downloaded from ftp, http or https). For local @@ -132,6 +133,7 @@ endef ifeq ($(BR2_KERNEL_HEADERS_VERSION)$(BR2_KERNEL_HEADERS_AS_KERNEL)$(BR2_KERNEL_HEADERS_CUSTOM_TARBALL)$(BR2_KERNEL_HEADERS_CUSTOM_GIT),y) define LINUX_HEADERS_CHECK_VERSION $(call check_kernel_headers_version,\ + $(BUILD_DIR),\ $(STAGING_DIR),\ $(call qstrip,$(BR2_TOOLCHAIN_HEADERS_AT_LEAST))) endef diff --git a/buildroot/package/linux-tools/Config.in b/buildroot/package/linux-tools/Config.in index 1c660f76f..ab8cc3891 100644 --- a/buildroot/package/linux-tools/Config.in +++ b/buildroot/package/linux-tools/Config.in @@ -82,6 +82,7 @@ config BR2_PACKAGE_LINUX_TOOLS_SELFTESTS bool"selftests" depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # bash depends on BR2_USE_MMU # bash + depends on !BR2_STATIC_LIBS select BR2_PACKAGE_LINUX_TOOLS select BR2_PACKAGE_BASH # runtime select BR2_PACKAGE_NCURSES @@ -103,9 +104,9 @@ config BR2_PACKAGE_LINUX_TOOLS_SELFTESTS This is very much a use at your risk option and may not work for every setup or every architecture. -comment "selftests needs BR2_PACKAGE_BUSYBOX_SHOW_OTHERS" +comment "selftests needs BR2_PACKAGE_BUSYBOX_SHOW_OTHERS and a toolchain w/ dynamic library" depends on BR2_USE_MMU - depends on !BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + depends on !BR2_PACKAGE_BUSYBOX_SHOW_OTHERS || BR2_STATIC_LIBS config BR2_PACKAGE_LINUX_TOOLS_TMON bool "tmon" diff --git a/buildroot/package/lmbench/0001-scripts-build-use-bin-bash-as-shell.patch b/buildroot/package/lmbench/0001-scripts-build-use-bin-bash-as-shell.patch new file mode 100644 index 000000000..b7e1dc64d --- /dev/null +++ b/buildroot/package/lmbench/0001-scripts-build-use-bin-bash-as-shell.patch @@ -0,0 +1,28 @@ +From 02a538c2b4b54b41d23dbd7668714ea4d2016131 Mon Sep 17 00:00:00 2001 +From: Markus Mayer +Date: Thu, 13 Jun 2019 12:27:04 -0700 +Subject: [PATCH] scripts/build: use /bin/bash as shell + +scripts/build makes use of the "+=" operator which is not supported by +/bin/sh. We switch to /bin/bash in order to avoid errors of the form + + ../scripts/build: 21: ../scripts/build: LDLIBS+= -lm: not found + +Signed-off-by: Markus Mayer +--- + scripts/build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/scripts/build b/scripts/build +index 34a1371d0056..60b755cd2320 100755 +--- a/scripts/build ++++ b/scripts/build +@@ -1,4 +1,4 @@ +-#!/bin/sh ++#!/bin/bash + + CC=${CC-`../scripts/compiler`} + MAKE=${MAKE-`../scripts/make`} +-- +2.17.1 + diff --git a/buildroot/package/lmbench/0002-src-Makefile-add-lmbench-to-list-of-executables.patch b/buildroot/package/lmbench/0002-src-Makefile-add-lmbench-to-list-of-executables.patch new file mode 100644 index 000000000..f5067a6b0 --- /dev/null +++ b/buildroot/package/lmbench/0002-src-Makefile-add-lmbench-to-list-of-executables.patch @@ -0,0 +1,29 @@ +From c158a02561c64d0cd236f86db24cc20d0378eb72 Mon Sep 17 00:00:00 2001 +From: Markus Mayer +Date: Thu, 13 Jun 2019 12:28:54 -0700 +Subject: [PATCH] src/Makefile: add lmbench to list of executables + +We want to install the lmbench script along with the other executables, +so we add it to the appropriate list. + +Signed-off-by: Markus Mayer +--- + src/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/Makefile b/src/Makefile +index 4962815b5fe7..70dbc6794898 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -98,7 +98,7 @@ EXES = $O/bw_file_rd $O/bw_mem $O/bw_mmap_rd $O/bw_pipe $O/bw_tcp \ + $O/lat_select $O/lat_pipe $O/lat_rpc $O/lat_syscall $O/lat_tcp \ + $O/lat_udp $O/lat_mmap $O/mhz $O/lat_proc $O/lat_pagefault \ + $O/lat_connect $O/lat_fs $O/lat_sig $O/lat_mem_rd $O/lat_ctx \ +- $O/lat_sem \ ++ $O/lat_sem $O/lmbench \ + $O/memsize $O/lat_unix $O/lmdd $O/timing_o $O/enough \ + $O/msleep $O/loop_o $O/lat_fifo $O/lmhttp $O/lat_http \ + $O/lat_fcntl $O/disk $O/lat_unix_connect $O/flushdisk \ +-- +2.17.1 + diff --git a/buildroot/package/lmbench/lmbench.mk b/buildroot/package/lmbench/lmbench.mk index c52d6a5a3..2f3b19b5f 100644 --- a/buildroot/package/lmbench/lmbench.mk +++ b/buildroot/package/lmbench/lmbench.mk @@ -18,8 +18,9 @@ LMBENCH_CFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags libtirpc` LMBENCH_LDLIBS = `$(PKG_CONFIG_HOST_BINARY) --libs libtirpc` endif +LMBENCH_POST_PATCH_HOOKS += UPDATE_CONFIG_HOOK + define LMBENCH_CONFIGURE_CMDS - $(call CONFIG_UPDATE,$(@D)) sed -i 's/CFLAGS=/CFLAGS+=/g' $(@D)/src/Makefile sed -i 's/LDLIBS=/LDLIBS+=/g' $(@D)/scripts/build sed -i '/cd .*doc/d' $(@D)/src/Makefile diff --git a/buildroot/package/logrotate/logrotate.hash b/buildroot/package/logrotate/logrotate.hash index 70b068c67..bebbd7465 100644 --- a/buildroot/package/logrotate/logrotate.hash +++ b/buildroot/package/logrotate/logrotate.hash @@ -1,2 +1,3 @@ # Locally calculated sha256 fb1ff8502e7ae4aedaa3d0da8d3740a6a0f44b72e34666af724e9094b166c942 logrotate-3.13.0.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/buildroot/package/lua-sdl2/lua-sdl2.mk b/buildroot/package/lua-sdl2/lua-sdl2.mk index 31375997b..ef3ede9cc 100644 --- a/buildroot/package/lua-sdl2/lua-sdl2.mk +++ b/buildroot/package/lua-sdl2/lua-sdl2.mk @@ -10,7 +10,15 @@ LUA_SDL2_LICENSE = ISC LUA_SDL2_LICENSE_FILES = LICENSE LUA_SDL2_DEPENDENCIES = luainterpreter sdl2 -LUA_SDL2_CONF_OPTS += -DWITH_LUAVER=user -DLUA_INCLUDE_DIR=$(STAGING_DIR)/usr/include +ifeq ($(BR2_PACKAGE_LUAJIT),y) +LUA_SDL2_LUAVER = JIT +else ifeq ($(BR2_PACKAGE_LUA_5_3),y) +LUA_SDL2_LUAVER = 53 +else +LUA_SDL2_LUAVER = 51 +endif + +LUA_SDL2_CONF_OPTS += -DWITH_LUAVER=$(LUA_SDL2_LUAVER) -DLUA_INCLUDE_DIR=$(STAGING_DIR)/usr/include ifeq ($(BR2_PACKAGE_SDL2_IMAGE),y) LUA_SDL2_DEPENDENCIES += sdl2_image diff --git a/buildroot/package/luasql-sqlite3/Config.in b/buildroot/package/luasql-sqlite3/Config.in index cc4d3d545..3a1fc6ba6 100644 --- a/buildroot/package/luasql-sqlite3/Config.in +++ b/buildroot/package/luasql-sqlite3/Config.in @@ -4,4 +4,4 @@ config BR2_PACKAGE_LUASQL_SQLITE3 help LuaSQL is a simple interface from Lua to a DBMS. - http://www.keplerproject.org/luasql + http://keplerproject.github.io/luasql/ diff --git a/buildroot/package/luksmeta/luksmeta.hash b/buildroot/package/luksmeta/luksmeta.hash index f5d756405..7e252294b 100644 --- a/buildroot/package/luksmeta/luksmeta.hash +++ b/buildroot/package/luksmeta/luksmeta.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 0154af98e7302a172060d83d24b6d87557a822c39ba3e911461bb1a6d3a22d51 luksmeta-8.tar.bz2 +sha256 2ca0c35b551b331ba1444fc9d36e8c48ff8cae53dd4e6155b028e8904edc202a luksmeta-9.tar.bz2 sha256 4b72eb6b5a336cd3ec837cc2d6347c23bf7574168db6b4802267700b93021abf COPYING diff --git a/buildroot/package/luksmeta/luksmeta.mk b/buildroot/package/luksmeta/luksmeta.mk index 33671e469..129713aec 100644 --- a/buildroot/package/luksmeta/luksmeta.mk +++ b/buildroot/package/luksmeta/luksmeta.mk @@ -4,12 +4,13 @@ # ################################################################################ -LUKSMETA_VERSION = 8 +LUKSMETA_VERSION = 9 LUKSMETA_SOURCE = luksmeta-$(LUKSMETA_VERSION).tar.bz2 LUKSMETA_SITE = https://github.com/latchset/luksmeta/releases/download/v$(LUKSMETA_VERSION) LUKSMETA_LICENSE = LGPL-2.1+ LUKSMETA_LICENSE_FILES = COPYING LUKSMETA_DEPENDENCIES = host-pkgconf cryptsetup +LUKSMETA_CONF_ENV = ac_cv_prog_A2X="" LUKSMETA_INSTALL_STAGING = YES $(eval $(autotools-package)) diff --git a/buildroot/package/lvm2/lvm2.mk b/buildroot/package/lvm2/lvm2.mk index 7fdb9a7e3..14575668a 100644 --- a/buildroot/package/lvm2/lvm2.mk +++ b/buildroot/package/lvm2/lvm2.mk @@ -28,13 +28,8 @@ LVM2_DEPENDENCIES += host-pkgconf libaio # take into account the toolchain passed at configure time. LVM2_MAKE_ENV = $(TARGET_CONFIGURE_OPTS) -ifeq ($(BR2_PACKAGE_READLINE),y) -LVM2_DEPENDENCIES += readline -else -# v2.02.44: disable readline usage, or binaries are linked against provider -# of "tgetent" (=> ncurses) even if it's not used.. +# package/readline is GPL-3.0+, so not license compatible LVM2_CONF_OPTS += --disable-readline -endif ifeq ($(BR2_PACKAGE_LIBSELINUX),y) LVM2_CONF_OPTS += --enable-selinux diff --git a/buildroot/package/lxc/0001-syscall_wrappers-rename-internal-memfd_create-to-mem.patch b/buildroot/package/lxc/0001-syscall_wrappers-rename-internal-memfd_create-to-mem.patch new file mode 100644 index 000000000..6210591c0 --- /dev/null +++ b/buildroot/package/lxc/0001-syscall_wrappers-rename-internal-memfd_create-to-mem.patch @@ -0,0 +1,43 @@ +From 2b23a1313f501423aecbe4ad4a988a9f6f832f1f Mon Sep 17 00:00:00 2001 +From: Patrick Havelange +Date: Tue, 22 Oct 2019 12:29:54 +0200 +Subject: [PATCH 1/1] syscall_wrappers: rename internal memfd_create to + memfd_create_lxc + +In case the internal memfd_create has to be used, make sure we don't +clash with the already existing memfd_create function from glibc. + +This can happen if this glibc function is a stub. In this case, at +./configure time, the test for this function will return false, however +the declaration of that function is still available. This leads to +compilation errors. + +Signed-off-by: Patrick Havelange +--- + src/lxc/syscall_wrappers.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/lxc/syscall_wrappers.h b/src/lxc/syscall_wrappers.h +index 42d94db..bddf01b 100644 +--- a/src/lxc/syscall_wrappers.h ++++ b/src/lxc/syscall_wrappers.h +@@ -59,7 +59,7 @@ static inline long __keyctl(int cmd, unsigned long arg2, unsigned long arg3, + #endif + + #ifndef HAVE_MEMFD_CREATE +-static inline int memfd_create(const char *name, unsigned int flags) { ++static inline int memfd_create_lxc(const char *name, unsigned int flags) { + #ifndef __NR_memfd_create + #if defined __i386__ + #define __NR_memfd_create 356 +@@ -98,6 +98,7 @@ static inline int memfd_create(const char *name, unsigned int flags) { + return -1; + #endif + } ++#define memfd_create memfd_create_lxc + #else + extern int memfd_create(const char *name, unsigned int flags); + #endif +-- +2.20.1 + diff --git a/buildroot/package/lzma/lzma.hash b/buildroot/package/lzma/lzma.hash index e73517ca5..6055d7d98 100644 --- a/buildroot/package/lzma/lzma.hash +++ b/buildroot/package/lzma/lzma.hash @@ -1,2 +1,5 @@ # Locally calculated sha256 02aa57f995d15b7acb7c2496d88a39fb0124ea00bf027cc61dd24eddb5942dff lzma-4.32.7.tar.xz +sha256 231f7edcc7352d7734a96eef0b8030f77982678c516876fcb81e25b32d68564c COPYING.GPLv2 +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING.GPLv3 +sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 COPYING.LGPLv2.1 diff --git a/buildroot/package/lzma/lzma.mk b/buildroot/package/lzma/lzma.mk index 1b4d7febb..095382d17 100644 --- a/buildroot/package/lzma/lzma.mk +++ b/buildroot/package/lzma/lzma.mk @@ -7,6 +7,8 @@ LZMA_VERSION = 4.32.7 LZMA_SOURCE = lzma-$(LZMA_VERSION).tar.xz LZMA_SITE = http://tukaani.org/lzma +LZMA_LICENSE = LGPL-2.1+ (lzmadec library, lzmainfo, LzmaDecode), GPL-2.0+ (lzma program, lzgrep and lzmore scripts), GPL-3.0+ (tests) +LZMA_LICENSE_FILES = COPYING.GPLv2 COPYING.GPLv3 COPYING.LGPLv2.1 $(eval $(host-autotools-package)) diff --git a/buildroot/package/mariadb/0001-add-extra-check-for-librt.patch b/buildroot/package/mariadb/0001-add-extra-check-for-librt.patch index 26bff7546..90aa626a0 100644 --- a/buildroot/package/mariadb/0001-add-extra-check-for-librt.patch +++ b/buildroot/package/mariadb/0001-add-extra-check-for-librt.patch @@ -3,6 +3,8 @@ From: Ryan Coe Date: Thu, 27 Oct 2016 20:33:21 -0700 Subject: [PATCH] add extra check for librt +https://jira.mariadb.org/browse/MDEV-10841 + Signed-off-by: Ryan Coe --- configure.cmake | 3 +++ diff --git a/buildroot/package/mariadb/0002-fix-build-error-with-newer-cmake.patch b/buildroot/package/mariadb/0002-fix-build-error-with-newer-cmake.patch new file mode 100644 index 000000000..5ffac688a --- /dev/null +++ b/buildroot/package/mariadb/0002-fix-build-error-with-newer-cmake.patch @@ -0,0 +1,44 @@ +From c90ae2ca3dff267b9e21595376d22de397f6f78f Mon Sep 17 00:00:00 2001 +From: Ryan Coe +Date: Tue, 20 Aug 2019 06:22:43 -0700 +Subject: [PATCH] Fix build error with newer cmake + +Fixes the following build error: + +CMake Error at cmake/os/Linux.cmake:29 (STRING): +STRING sub-command REPLACE requires at least four arguments. +Call Stack (most recent call first): +CMakeLists.txt:101 (INCLUDE) + +CMake Error at cmake/os/Linux.cmake:29 (STRING): +STRING sub-command REPLACE requires at least four arguments. +Call Stack (most recent call first): +CMakeLists.txt:101 (INCLUDE) + +https://jira.mariadb.org/browse/MDEV-20596 + +Signed-off-by: Ryan Coe +--- + cmake/os/Linux.cmake | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/cmake/os/Linux.cmake b/cmake/os/Linux.cmake +index 50a2b21c838d8d6ca4cacc0704a9be4da3a57a0a..b871586acc9cfaddc3836cc9afafd85969120420 100644 +--- a/cmake/os/Linux.cmake ++++ b/cmake/os/Linux.cmake +@@ -26,9 +26,9 @@ SET(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} -D_GNU_SOURCE=1) + + # Fix CMake (< 2.8) flags. -rdynamic exports too many symbols. + FOREACH(LANG C CXX) +- STRING(REPLACE "-rdynamic" "" +- CMAKE_SHARED_LIBRARY_LINK_${LANG}_FLAGS +- ${CMAKE_SHARED_LIBRARY_LINK_${LANG}_FLAGS} ++ STRING(REPLACE "-rdynamic" "" ++ "CMAKE_SHARED_LIBRARY_LINK_${LANG}_FLAGS" ++ "${CMAKE_SHARED_LIBRARY_LINK_${LANG}_FLAGS}" + ) + ENDFOREACH() + +-- +2.17.1 + diff --git a/buildroot/package/mariadb/mariadb.hash b/buildroot/package/mariadb/mariadb.hash index db24f7bb9..a6534d8d6 100644 --- a/buildroot/package/mariadb/mariadb.hash +++ b/buildroot/package/mariadb/mariadb.hash @@ -1,9 +1,9 @@ -# From https://downloads.mariadb.org/mariadb/10.3.13 -md5 603ce42e35b9a688f2cca05275acb5cb mariadb-10.3.13.tar.gz -sha1 08467885412184e99b835732913d445fd2c4b1b3 mariadb-10.3.13.tar.gz -sha256 b2aa857ef5b84f85a7ea60a1eac7b34c0ca5151c71a0d44ce2d7fb028d71459a mariadb-10.3.13.tar.gz -sha512 3cbd93291aa43b235e5b81d953ea69fb32df54fb518f922f69b5485952f01fae693c77b0efac37f414ed7ff132d3b58f899812bdb7be8a5b344c3640e2c3a0dd mariadb-10.3.13.tar.gz +# From https://downloads.mariadb.org/mariadb/10.3.17 +md5 6bcee042bcc393cfcffeccbddbf6fe0e mariadb-10.3.17.tar.gz +sha1 16edbd4762c8804118dda10de713cbddc675df5a mariadb-10.3.17.tar.gz +sha256 20a1ea4fc59aae89dcc82aff0d4907b036daf9bfbd252f08162399f055097097 mariadb-10.3.17.tar.gz +sha512 6fba995d8c284a12f19ee5635f5d69d8fa89fc314f512cd1764b2c4593933baf71a472ddce630463debd3bfbafa1cf5afee3f40d3c4062242f58cea16259561e mariadb-10.3.17.tar.gz # Hash for license files -sha256 43f4b5b13cecbbdb04a180cbf6c2bd64237819d1a32165b7d475c1b392e6a8d1 README.md -sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING +sha256 a4665c1189fe31e0bbc27e9b55439df7dad6e99805407fe58d78da7aabe678f8 README.md +sha256 240a15a1d0f34d3abca462cdb7e5fb89470967563f16b0e71169e51c1e74cf2b COPYING diff --git a/buildroot/package/mariadb/mariadb.mk b/buildroot/package/mariadb/mariadb.mk index 356dd29af..6d8441b25 100644 --- a/buildroot/package/mariadb/mariadb.mk +++ b/buildroot/package/mariadb/mariadb.mk @@ -4,7 +4,7 @@ # ################################################################################ -MARIADB_VERSION = 10.3.13 +MARIADB_VERSION = 10.3.17 MARIADB_SITE = https://downloads.mariadb.org/interstitial/mariadb-$(MARIADB_VERSION)/source MARIADB_LICENSE = GPL-2.0 (server), GPL-2.0 with FLOSS exception (GPL client library), LGPL-2.0 (LGPL client library) # Tarball no longer contains LGPL license text @@ -19,8 +19,10 @@ MARIADB_DEPENDENCIES = \ openssl \ zlib \ libaio \ - libxml2 \ - readline + libxml2 + +# use bundled GPL-2.0+ licensed readline as package/readline is GPL-3.0+ +MARIADB_CONF_OPTS += -DWITH_READLINE=ON # We won't need unit tests MARIADB_CONF_OPTS += -DWITH_UNIT_TESTS=0 @@ -86,7 +88,8 @@ MARIADB_CONF_OPTS += \ -DMYSQL_DATADIR=/var/lib/mysql \ -DMYSQL_UNIX_ADDR=$(MYSQL_SOCKET) -HOST_MARIADB_CONF_OPTS += -DWITH_SSL=OFF +HOST_MARIADB_DEPENDENCIES = host-openssl +HOST_MARIADB_CONF_OPTS += -DWITH_SSL=system # Some helpers must be compiled for host in order to crosscompile mariadb for # the target. They are then included by import_executables.cmake which is diff --git a/buildroot/package/matchbox-common/Config.in b/buildroot/package/matchbox-common/Config.in index 587a0694e..3717a551f 100644 --- a/buildroot/package/matchbox-common/Config.in +++ b/buildroot/package/matchbox-common/Config.in @@ -5,6 +5,8 @@ config BR2_PACKAGE_MATCHBOX_COMMON help Common desktop folders and matchbox-session script. + http://git.yoctoproject.org/cgit/cgit.cgi/matchbox-common/ + config BR2_PACKAGE_MATCHBOX_COMMON_PDA bool "PDA style app folder" depends on BR2_PACKAGE_MATCHBOX_COMMON diff --git a/buildroot/package/matchbox-desktop/Config.in b/buildroot/package/matchbox-desktop/Config.in index 22c568bc1..9d3e522a5 100644 --- a/buildroot/package/matchbox-desktop/Config.in +++ b/buildroot/package/matchbox-desktop/Config.in @@ -4,3 +4,5 @@ config BR2_PACKAGE_MATCHBOX_DESKTOP select BR2_PACKAGE_ZLIB help A PDA style application launcher or 'item browser'. + + http://git.yoctoproject.org/cgit/cgit.cgi/matchbox-desktop diff --git a/buildroot/package/matchbox-fakekey/Config.in b/buildroot/package/matchbox-fakekey/Config.in index 1a1f1341e..0a8f62818 100644 --- a/buildroot/package/matchbox-fakekey/Config.in +++ b/buildroot/package/matchbox-fakekey/Config.in @@ -4,3 +4,5 @@ config BR2_PACKAGE_MATCHBOX_FAKEKEY select BR2_PACKAGE_XLIB_LIBXTST help Library for simulating key press events under X11. + + http://git.yoctoproject.org/cgit/cgit.cgi/libfakekey/ diff --git a/buildroot/package/matchbox-keyboard/Config.in b/buildroot/package/matchbox-keyboard/Config.in index 8bd2a7972..b6753f3be 100644 --- a/buildroot/package/matchbox-keyboard/Config.in +++ b/buildroot/package/matchbox-keyboard/Config.in @@ -6,3 +6,5 @@ config BR2_PACKAGE_MATCHBOX_KEYBOARD select BR2_PACKAGE_MATCHBOX_LIB help Virtual Keyboard + + http://git.yoctoproject.org/cgit/cgit.cgi/matchbox-keyboard/ diff --git a/buildroot/package/matchbox-lib/Config.in b/buildroot/package/matchbox-lib/Config.in index d758ab35a..98cdae730 100644 --- a/buildroot/package/matchbox-lib/Config.in +++ b/buildroot/package/matchbox-lib/Config.in @@ -3,3 +3,5 @@ config BR2_PACKAGE_MATCHBOX_LIB select BR2_PACKAGE_XLIB_LIBXEXT help Matchbox common functionality library. + + http://git.yoctoproject.org/cgit/cgit.cgi/libmatchbox diff --git a/buildroot/package/matchbox-panel/Config.in b/buildroot/package/matchbox-panel/Config.in index 47bd10ad7..1fc38336a 100644 --- a/buildroot/package/matchbox-panel/Config.in +++ b/buildroot/package/matchbox-panel/Config.in @@ -4,3 +4,5 @@ config BR2_PACKAGE_MATCHBOX_PANEL help A flexible always present 'window bar' for holding application launchers. + + http://git.yoctoproject.org/cgit/cgit.cgi/matchbox-panel/ diff --git a/buildroot/package/matchbox-startup-monitor/Config.in b/buildroot/package/matchbox-startup-monitor/Config.in index 9dce60ea1..be2fab4c1 100644 --- a/buildroot/package/matchbox-startup-monitor/Config.in +++ b/buildroot/package/matchbox-startup-monitor/Config.in @@ -4,3 +4,5 @@ config BR2_PACKAGE_MATCHBOX_STARTUP_MONITOR select BR2_PACKAGE_STARTUP_NOTIFICATION help Matchbox Panel Startup Monitor Applet. + + http://git.yoctoproject.org/cgit.cgi/mb-applet-startup-monitor/ diff --git a/buildroot/package/mbedtls/mbedtls.hash b/buildroot/package/mbedtls/mbedtls.hash index 57a5aeffc..84fe820c5 100644 --- a/buildroot/package/mbedtls/mbedtls.hash +++ b/buildroot/package/mbedtls/mbedtls.hash @@ -1,5 +1,5 @@ -# From https://tls.mbed.org/tech-updates/releases/mbedtls-2.16.0-2.7.9-and-2.1.18-released -sha1 70dc65f3f6f6b2392b821163be7f1f634f0012c8 mbedtls-2.7.9-apache.tgz -sha256 18e57260b46579245744adb79c2924194dad36aac38c2d0be9e749b9181c706f mbedtls-2.7.9-apache.tgz +# From https://tls.mbed.org/tech-updates/releases/mbedtls-2.16.3-and-2.7.12-released +sha1 ce1af75d497cc03fe5c8e8e15fbf583d9dfbacd1 mbedtls-2.7.12-apache.tgz +sha256 d3a36dbc9f607747daa6875c1ab2e41f49eff5fc99d3436b4f3ac90c89f3c143 mbedtls-2.7.12-apache.tgz # Locally calculated sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 apache-2.0.txt diff --git a/buildroot/package/mbedtls/mbedtls.mk b/buildroot/package/mbedtls/mbedtls.mk index 4a5a731d4..427b2acb5 100644 --- a/buildroot/package/mbedtls/mbedtls.mk +++ b/buildroot/package/mbedtls/mbedtls.mk @@ -5,7 +5,7 @@ ################################################################################ MBEDTLS_SITE = https://tls.mbed.org/code/releases -MBEDTLS_VERSION = 2.7.9 +MBEDTLS_VERSION = 2.7.12 MBEDTLS_SOURCE = mbedtls-$(MBEDTLS_VERSION)-apache.tgz MBEDTLS_CONF_OPTS = \ -DENABLE_PROGRAMS=$(if $(BR2_PACKAGE_MBEDTLS_PROGRAMS),ON,OFF) \ diff --git a/buildroot/package/mdadm/Config.in b/buildroot/package/mdadm/Config.in index 61d631cda..8c6bb08ad 100644 --- a/buildroot/package/mdadm/Config.in +++ b/buildroot/package/mdadm/Config.in @@ -5,7 +5,7 @@ config BR2_PACKAGE_MDADM help Utility for managing Linux Software RAID arrays. - http://neil.brown.name/blog/mdadm + https://raid.wiki.kernel.org/index.php/A_guide_to_mdadm comment "mdadm needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS diff --git a/buildroot/package/mediastreamer/Config.in b/buildroot/package/mediastreamer/Config.in index afaed4a73..b18c83c5e 100644 --- a/buildroot/package/mediastreamer/Config.in +++ b/buildroot/package/mediastreamer/Config.in @@ -11,7 +11,7 @@ config BR2_PACKAGE_MEDIASTREAMER and sending of multimedia streams in linphone, including voice/video capture, encoding and decoding, and rendering. - http://www.linphone.org/eng/documentation/dev/mediastreamer2.html + http://www.linphone.org/technical-corner/mediastreamer2 comment "mediastreamer needs a toolchain w/ threads, C++" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/buildroot/package/mesa3d/Config.in b/buildroot/package/mesa3d/Config.in index fdd64b033..9fb46a72f 100644 --- a/buildroot/package/mesa3d/Config.in +++ b/buildroot/package/mesa3d/Config.in @@ -164,7 +164,7 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VC4 bool "Gallium vc4 driver" - depends on BR2_ARM_CPU_HAS_NEON || BR2_aarch64 + depends on BR2_arm || BR2_aarch64 select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER select BR2_PACKAGE_LIBDRM_VC4 select BR2_PACKAGE_MESA3D_NEEDS_XA diff --git a/buildroot/package/meson/meson.mk b/buildroot/package/meson/meson.mk index d76541cc9..71bdadf82 100644 --- a/buildroot/package/meson/meson.mk +++ b/buildroot/package/meson/meson.mk @@ -45,9 +45,9 @@ else HOST_MESON_TARGET_CPU_FAMILY = $(ARCH) endif -HOST_MESON_SED_CFLAGS = $(if $(TARGET_CFLAGS),`printf '"%s"$(comma) ' $(TARGET_CFLAGS)`) -HOST_MESON_SED_LDFLAGS = $(if $(TARGET_LDFLAGS),`printf '"%s"$(comma) ' $(TARGET_LDFLAGS)`) -HOST_MESON_SED_CXXFLAGS = $(if $(TARGET_CXXFLAGS),`printf '"%s"$(comma) ' $(TARGET_CXXFLAGS)`) +HOST_MESON_SED_CFLAGS = $(if $(strip $(TARGET_CFLAGS)),`printf '"%s"$(comma) ' $(TARGET_CFLAGS)`) +HOST_MESON_SED_LDFLAGS = $(if $(strip $(TARGET_LDFLAGS)),`printf '"%s"$(comma) ' $(TARGET_LDFLAGS)`) +HOST_MESON_SED_CXXFLAGS = $(if $(strip $(TARGET_CXXFLAGS)),`printf '"%s"$(comma) ' $(TARGET_CXXFLAGS)`) # Generate a Meson cross-compilation.conf suitable for use with the # SDK diff --git a/buildroot/package/metacity/Config.in b/buildroot/package/metacity/Config.in index 833a091e7..fc106a26b 100644 --- a/buildroot/package/metacity/Config.in +++ b/buildroot/package/metacity/Config.in @@ -14,3 +14,5 @@ config BR2_PACKAGE_METACITY select BR2_PACKAGE_XLIB_LIBXFT help Metacity is a window manager for the X Window System. + + https://wiki.gnome.org/Projects/Metacity diff --git a/buildroot/package/metacity/metacity.mk b/buildroot/package/metacity/metacity.mk index b93200ca5..f5a6d4afd 100644 --- a/buildroot/package/metacity/metacity.mk +++ b/buildroot/package/metacity/metacity.mk @@ -26,7 +26,10 @@ METACITY_DEPENDENCIES = libgtk2 \ xlib_libXcomposite \ xlib_libXfixes \ xlib_libXrender \ - xlib_libXdamage + xlib_libXdamage \ + $(TARGET_NLS_DEPENDENCIES) + +METACITY_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) ifeq ($(BR2_PACKAGE_XLIB_LIBXCURSOR),y) METACITY_DEPENDENCIES += xlib_libXcursor diff --git a/buildroot/package/mii-diag/Config.in b/buildroot/package/mii-diag/Config.in index ca48ba216..37f3647bb 100644 --- a/buildroot/package/mii-diag/Config.in +++ b/buildroot/package/mii-diag/Config.in @@ -3,3 +3,5 @@ config BR2_PACKAGE_MII_DIAG help mii-diag allows you to manipulate the MII registers of network cards. + + https://launchpad.net/ubuntu/+source/mii-diag diff --git a/buildroot/package/minicom/minicom.mk b/buildroot/package/minicom/minicom.mk index 000597f8a..4635d39ee 100644 --- a/buildroot/package/minicom/minicom.mk +++ b/buildroot/package/minicom/minicom.mk @@ -28,4 +28,8 @@ define MINICOM_MKDIR_M4 endef MINICOM_POST_PATCH_HOOKS += MINICOM_MKDIR_M4 +MINICOM_CONF_OPTS = \ + --enable-dfl-port=/dev/ttyS1 \ + --enable-lock-dir=/var/lock + $(eval $(autotools-package)) diff --git a/buildroot/package/minizip/Config.in b/buildroot/package/minizip/Config.in index 5a0c52b3b..e4d185d9d 100644 --- a/buildroot/package/minizip/Config.in +++ b/buildroot/package/minizip/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_MINIZIP bool "minizip" depends on BR2_USE_WCHAR + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE help Enables to extract files from a .zip archive file. It is compatible with PKZip 2.04g, WinZip, InfoZip, diff --git a/buildroot/package/mjpegtools/0001-PROGRAM_NOPIC-apparently-causes-problems-on-some-x86_64-systems.patch b/buildroot/package/mjpegtools/0001-PROGRAM_NOPIC-apparently-causes-problems-on-some-x86_64-systems.patch new file mode 100644 index 000000000..f5de8ee96 --- /dev/null +++ b/buildroot/package/mjpegtools/0001-PROGRAM_NOPIC-apparently-causes-problems-on-some-x86_64-systems.patch @@ -0,0 +1,73 @@ +From e69557bea18eb7c3069c9527cc30f7cd91be27b7 Mon Sep 17 00:00:00 2001 +From: sms00 +Date: Thu, 28 Nov 2013 22:39:41 +0000 +Subject: [PATCH] PROGRAM_NOPIC apparently causes problems on some x86_64 + systems, has little to no performance effect on x86_64 systems and even on + x86 systems most programs are I/O bound anyhow. So remove the 4 uses of the + flag + +git-svn-id: https://svn.code.sf.net/p/mjpeg/Code/trunk/mjpeg_play@3359 3be20b7b-d6de-45d7-9b51-1db703c412de + +[Retrieved (and backported by removing INSTALL updates) from: +https://github.com/jaystevens/mjpegtools/commit/e69557bea18eb7c3069c9527cc30f7cd91be27b7] +Signed-off-by: Fabrice Fontaine +--- + y4mdenoise/Makefile.am | 4 +- + y4munsharp/Makefile.am | 2 +- + y4mutils/Makefile.am | 2 +- + yuvscaler/Makefile.am | 2 +- + 5 files changed, 26 insertions(+), 94 deletions(-) + +diff --git a/y4mdenoise/Makefile.am b/y4mdenoise/Makefile.am +index dee9064f..d7fa76e2 100644 +--- a/y4mdenoise/Makefile.am ++++ b/y4mdenoise/Makefile.am +@@ -4,8 +4,8 @@ MAINTAINERCLEANFILES = Makefile.in + + EXTRA_DIST = implementation.html + +-AM_CFLAGS = -DNDEBUG -finline-functions @PROGRAM_NOPIC@ +-AM_CXXFLAGS = -DNDEBUG -finline-functions @PROGRAM_NOPIC@ ++AM_CFLAGS = -DNDEBUG -finline-functions ++AM_CXXFLAGS = -DNDEBUG -finline-functions + + INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/utils + +diff --git a/y4munsharp/Makefile.am b/y4munsharp/Makefile.am +index a7f98acc..f99ff5cf 100644 +--- a/y4munsharp/Makefile.am ++++ b/y4munsharp/Makefile.am +@@ -4,7 +4,7 @@ MAINTAINERCLEANFILES = Makefile.in + + INCLUDES = -I $(top_srcdir)/utils -I $(top_srcdir) + +-y4munharp_CFLAGS=@PROGRAM_NOPIC@ ++y4munharp_CFLAGS= + + bin_PROGRAMS = y4munsharp + +diff --git a/y4mutils/Makefile.am b/y4mutils/Makefile.am +index f3b0a671..7b8b1881 100644 +--- a/y4mutils/Makefile.am ++++ b/y4mutils/Makefile.am +@@ -2,7 +2,7 @@ + + MAINTAINERCLEANFILES = Makefile.in + +-AM_CFLAGS = @PROGRAM_NOPIC@ ++AM_CFLAGS = + AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/utils + + LIBMJPEGUTILS = $(top_builddir)/utils/libmjpegutils.la +diff --git a/yuvscaler/Makefile.am b/yuvscaler/Makefile.am +index 1fe4d757..6d2adaca 100644 +--- a/yuvscaler/Makefile.am ++++ b/yuvscaler/Makefile.am +@@ -18,6 +18,6 @@ noinst_HEADERS = \ + + EXTRA_DIST = yuvscaler_implementation.txt + +-yuvscaler_CFLAGS=@PROGRAM_NOPIC@ ++yuvscaler_CFLAGS= + yuvscaler_SOURCES = yuvscaler.c yuvscaler_resample.c yuvscaler_bicubic.c + yuvscaler_LDADD = $(LIBMJPEGUTILS) $(LIBM_LIBS) diff --git a/buildroot/package/mjpegtools/mjpegtools.mk b/buildroot/package/mjpegtools/mjpegtools.mk index 14713c868..f028afc82 100644 --- a/buildroot/package/mjpegtools/mjpegtools.mk +++ b/buildroot/package/mjpegtools/mjpegtools.mk @@ -9,6 +9,8 @@ MJPEGTOOLS_SITE = http://sourceforge.net/projects/mjpeg/files/mjpegtools/$(MJPEG MJPEGTOOLS_DEPENDENCIES = host-pkgconf jpeg MJPEGTOOLS_LICENSE = GPL-2.0+ MJPEGTOOLS_LICENSE_FILES = COPYING +# We're patching Makefile.am +MJPEGTOOLS_AUTORECONF = YES ifeq ($(BR2_PACKAGE_MJPEGTOOLS_SIMD_SUPPORT),y) MJPEGTOOLS_CONF_OPTS += --enable-simd-accel diff --git a/buildroot/package/mongodb/mongodb.hash b/buildroot/package/mongodb/mongodb.hash index 916323d7c..f08ffffe3 100644 --- a/buildroot/package/mongodb/mongodb.hash +++ b/buildroot/package/mongodb/mongodb.hash @@ -1,4 +1,4 @@ # Locally computed: -sha256 5db85f06b2a0b2ae393339a4aed1366928aaef2b46c7c32826fa87c3217dc6f7 mongodb-r4.0.6.tar.gz +sha256 b39c5b7bb77a547804ab6f43f9b5f09add47574356b31512fd1cc641a08b4ea5 mongodb-r4.0.12.tar.gz sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 APACHE-2.0.txt sha256 09d99ca61eb07873d5334077acba22c33e7f7d0a9fa08c92734e0ac8430d6e27 LICENSE-Community.txt diff --git a/buildroot/package/mongodb/mongodb.mk b/buildroot/package/mongodb/mongodb.mk index e420ecb41..d33670c14 100644 --- a/buildroot/package/mongodb/mongodb.mk +++ b/buildroot/package/mongodb/mongodb.mk @@ -4,7 +4,7 @@ # ################################################################################ -MONGODB_VERSION_BASE = 4.0.6 +MONGODB_VERSION_BASE = 4.0.12 MONGODB_VERSION = r$(MONGODB_VERSION_BASE) MONGODB_SITE = $(call github,mongodb,mongo,$(MONGODB_VERSION)) diff --git a/buildroot/package/mongoose/mongoose.hash b/buildroot/package/mongoose/mongoose.hash index 86ebe8efb..d38013163 100644 --- a/buildroot/package/mongoose/mongoose.hash +++ b/buildroot/package/mongoose/mongoose.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 ec7956b8f2845f6c22e19ab38a0c32c9b379087f0038c7db661b34812f225911 mongoose-6.13.tar.gz +sha256 1f20f2781862560ddf3203dfb0e6fcf248a68bf92aefbeafb9d2a629c4767c02 mongoose-6.16.tar.gz sha256 fdc34eeea97327d75c83492abd34f1a3200c53dec04422ecda8071dc60a36d10 LICENSE diff --git a/buildroot/package/mongoose/mongoose.mk b/buildroot/package/mongoose/mongoose.mk index 653c83c7d..bb40de261 100644 --- a/buildroot/package/mongoose/mongoose.mk +++ b/buildroot/package/mongoose/mongoose.mk @@ -4,7 +4,7 @@ # ################################################################################ -MONGOOSE_VERSION = 6.13 +MONGOOSE_VERSION = 6.16 MONGOOSE_SITE = $(call github,cesanta,mongoose,$(MONGOOSE_VERSION)) MONGOOSE_LICENSE = GPL-2.0 MONGOOSE_LICENSE_FILES = LICENSE diff --git a/buildroot/package/monit/monit.hash b/buildroot/package/monit/monit.hash index d1c09f137..3f528590d 100644 --- a/buildroot/package/monit/monit.hash +++ b/buildroot/package/monit/monit.hash @@ -1,4 +1,4 @@ -# From https://mmonit.com/monit/dist/monit-5.25.2.tar.gz.sha256: -sha256 aa0ce6361d1155e43e30a86dcff00b2003d434f221c360981ced830275abc64a monit-5.25.2.tar.gz +# From https://mmonit.com/monit/dist/monit-5.25.3.tar.gz.sha256: +sha256 c10258c8839d20864d30390e7cbf2ff5e0480a67a6fb80c02aa457d6e3390569 monit-5.25.3.tar.gz # Locally computed sha256 d5a4f52b1a5e1e7fe14e01a76aac8b08dc6bbea15466058f271456c97aac1ada COPYING diff --git a/buildroot/package/monit/monit.mk b/buildroot/package/monit/monit.mk index 906ed842d..980da13cb 100644 --- a/buildroot/package/monit/monit.mk +++ b/buildroot/package/monit/monit.mk @@ -4,7 +4,7 @@ # ################################################################################ -MONIT_VERSION = 5.25.2 +MONIT_VERSION = 5.25.3 MONIT_SITE = http://mmonit.com/monit/dist MONIT_LICENSE = AGPL-3.0 with OpenSSL exception MONIT_LICENSE_FILES = COPYING diff --git a/buildroot/package/mosquitto/Config.in b/buildroot/package/mosquitto/Config.in index 11b6d7891..c7373d9a8 100644 --- a/buildroot/package/mosquitto/Config.in +++ b/buildroot/package/mosquitto/Config.in @@ -21,7 +21,7 @@ config BR2_PACKAGE_MOSQUITTO_BROKER Build and install the mosquitto broker onto target. comment "mosquitto broker needs a system with MMU" - depends on BR2_PACKAGE_MOSQUTTO && !BR2_USE_MMU + depends on BR2_PACKAGE_MOSQUITTO && !BR2_USE_MMU comment "mosquitto needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS diff --git a/buildroot/package/mosquitto/mosquitto.hash b/buildroot/package/mosquitto/mosquitto.hash index 25b991013..83b521aa8 100644 --- a/buildroot/package/mosquitto/mosquitto.hash +++ b/buildroot/package/mosquitto/mosquitto.hash @@ -1,5 +1,5 @@ # Locally calculated after checking gpg signature -sha256 78d7e70c3794dc3a1d484b4f2f8d3addebe9c2da3f5a1cebe557f7d13beb0da4 mosquitto-1.5.8.tar.gz +sha256 d7b62aa0ca680b0d869d6883373903362f98326a6465fc6cd01a0b9e0e8f0333 mosquitto-1.5.9.tar.gz # License files sha256 cc77e25bafd40637b7084f04086d606f0a200051b61806f97c93405926670bc1 LICENSE.txt diff --git a/buildroot/package/mosquitto/mosquitto.mk b/buildroot/package/mosquitto/mosquitto.mk index 51c0abd0b..b6ee048cc 100644 --- a/buildroot/package/mosquitto/mosquitto.mk +++ b/buildroot/package/mosquitto/mosquitto.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOSQUITTO_VERSION = 1.5.8 +MOSQUITTO_VERSION = 1.5.9 MOSQUITTO_SITE = https://mosquitto.org/files/source MOSQUITTO_LICENSE = EPL-1.0 or EDLv1.0 MOSQUITTO_LICENSE_FILES = LICENSE.txt epl-v10 edl-v10 diff --git a/buildroot/package/mp4v2/Config.in b/buildroot/package/mp4v2/Config.in index 42315a227..490ebac9f 100644 --- a/buildroot/package/mp4v2/Config.in +++ b/buildroot/package/mp4v2/Config.in @@ -5,7 +5,7 @@ config BR2_PACKAGE_MP4V2 The MP4v2 library provides functions to read, create, and modify mp4 files. - https://code.google.com/p/mp4v2/ + https://code.google.com/archive/p/mp4v2/ if BR2_PACKAGE_MP4V2 diff --git a/buildroot/package/mpd/Config.in b/buildroot/package/mpd/Config.in index d3844391a..923f0c220 100644 --- a/buildroot/package/mpd/Config.in +++ b/buildroot/package/mpd/Config.in @@ -9,7 +9,6 @@ menuconfig BR2_PACKAGE_MPD depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr select BR2_PACKAGE_BOOST select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE - select BR2_PACKAGE_MPD_TREMOR if !(BR2_PACKAGE_MPD_MAD || BR2_PACKAGE_MPD_MPG123 || BR2_PACKAGE_MPD_VORBIS || BR2_PACKAGE_MPD_WAVPACK || BR2_PACKAGE_MPD_FLAC || BR2_PACKAGE_MPD_MUSEPACK || BR2_PACKAGE_MPD_FFMPEG) help MPD is a flexible, powerful, server-side application for playing music. Through plugins and libraries @@ -133,6 +132,7 @@ config BR2_PACKAGE_MPD_OPUS config BR2_PACKAGE_MPD_TREMOR bool "tremor" + depends on !BR2_PACKAGE_MPD_VORBIS select BR2_PACKAGE_LIBOGG select BR2_PACKAGE_TREMOR help diff --git a/buildroot/package/mpg123/mpg123.hash b/buildroot/package/mpg123/mpg123.hash index 22db5bca3..e5a549b57 100644 --- a/buildroot/package/mpg123/mpg123.hash +++ b/buildroot/package/mpg123/mpg123.hash @@ -1,7 +1,7 @@ -# From https://sourceforge.net/projects/mpg123/files/mpg123/1.25.10/ -sha1 604784ddbcfe282bffdc595d1d45c677c7cf381f mpg123-1.25.10.tar.bz2 -md5 ea32caa61d41d8be797f0b04a1b43ad9 mpg123-1.25.10.tar.bz2 +# From https://sourceforge.net/projects/mpg123/files/mpg123/1.25.12/ +sha1 4ece1ec124a6ca085e1d68f7ede6d5619fc587ff mpg123-1.25.12.tar.bz2 +md5 ddb38254966eb38c77f220d456a1839d mpg123-1.25.12.tar.bz2 # Locally calculated -sha256 6c1337aee2e4bf993299851c70b7db11faec785303cfca3a5c3eb5f329ba7023 mpg123-1.25.10.tar.bz2 +sha256 1ffec7c9683dfb86ea9040d6a53d6ea819ecdda215df347f79def08f1fe731d1 mpg123-1.25.12.tar.bz2 # License file sha256 f40e0dd86b27b52e429b693a87b3ca63ae0a98a4d142e77207aa6bdf1db7a295 COPYING diff --git a/buildroot/package/mpg123/mpg123.mk b/buildroot/package/mpg123/mpg123.mk index dd2d39d97..6247e54a0 100644 --- a/buildroot/package/mpg123/mpg123.mk +++ b/buildroot/package/mpg123/mpg123.mk @@ -4,7 +4,7 @@ # ################################################################################ -MPG123_VERSION = 1.25.10 +MPG123_VERSION = 1.25.12 MPG123_SOURCE = mpg123-$(MPG123_VERSION).tar.bz2 MPG123_SITE = http://downloads.sourceforge.net/project/mpg123/mpg123/$(MPG123_VERSION) MPG123_CONF_OPTS = --disable-lfs-alias diff --git a/buildroot/package/musl/0004-fix-x87-stack-imbalance-in-corner-cases-of-i386-math.patch b/buildroot/package/musl/0004-fix-x87-stack-imbalance-in-corner-cases-of-i386-math.patch new file mode 100644 index 000000000..8940c2865 --- /dev/null +++ b/buildroot/package/musl/0004-fix-x87-stack-imbalance-in-corner-cases-of-i386-math.patch @@ -0,0 +1,200 @@ +From f3ed8bfe8a82af1870ddc8696ed4cc1d5aa6b441 Mon Sep 17 00:00:00 2001 +From: Rich Felker +Date: Mon, 5 Aug 2019 18:41:47 -0400 +Subject: [PATCH] fix x87 stack imbalance in corner cases of i386 math asm + +commit 31c5fb80b9eae86f801be4f46025bc6532a554c5 introduced underflow +code paths for the i386 math asm, along with checks on the fpu status +word to skip the underflow-generation instructions if the underflow +flag was already raised. unfortunately, at least one such path, in +log1p, returned with 2 items on the x87 stack rather than just 1 item +for the return value. this is a violation of the ABI's calling +convention, and could cause subsequent floating point code to produce +NANs due to x87 stack overflow. if floating point results are used in +flow control, this can lead to runaway wrong code execution. + +rather than reviewing each "underflow already raised" code path for +correctness, remove them all. they're likely slower than just +performing the underflow code unconditionally, and significantly more +complex. + +all of this code should be ripped out and replaced by C source files +with inline asm. doing so would preclude this kind of error by having +the compiler perform all x87 stack register allocation and stack +manipulation, and would produce comparable or better code. however +such a change is a much larger project. + +Signed-off-by: Peter Korsgaard +--- + src/math/i386/asin.s | 10 ++-------- + src/math/i386/atan.s | 7 ++----- + src/math/i386/atan2.s | 5 +---- + src/math/i386/atan2f.s | 5 +---- + src/math/i386/atanf.s | 7 ++----- + src/math/i386/exp.s | 10 ++-------- + src/math/i386/log1p.s | 7 ++----- + src/math/i386/log1pf.s | 7 ++----- + 8 files changed, 14 insertions(+), 44 deletions(-) + +diff --git a/src/math/i386/asin.s b/src/math/i386/asin.s +index a9f691bf..920d967a 100644 +--- a/src/math/i386/asin.s ++++ b/src/math/i386/asin.s +@@ -7,13 +7,10 @@ asinf: + cmp $0x01000000,%eax + jae 1f + # subnormal x, return x with underflow +- fnstsw %ax +- and $16,%ax +- jnz 2f + fld %st(0) + fmul %st(1) + fstps 4(%esp) +-2: ret ++ ret + + .global asinl + .type asinl,@function +@@ -30,11 +27,8 @@ asin: + cmp $0x00200000,%eax + jae 1f + # subnormal x, return x with underflow +- fnstsw %ax +- and $16,%ax +- jnz 2f + fsts 4(%esp) +-2: ret ++ ret + 1: fld %st(0) + fld1 + fsub %st(0),%st(1) +diff --git a/src/math/i386/atan.s b/src/math/i386/atan.s +index d73137b2..a26feae1 100644 +--- a/src/math/i386/atan.s ++++ b/src/math/i386/atan.s +@@ -10,8 +10,5 @@ atan: + fpatan + ret + # subnormal x, return x with underflow +-1: fnstsw %ax +- and $16,%ax +- jnz 2f +- fsts 4(%esp) +-2: ret ++1: fsts 4(%esp) ++ ret +diff --git a/src/math/i386/atan2.s b/src/math/i386/atan2.s +index a7d2979b..1fa0524d 100644 +--- a/src/math/i386/atan2.s ++++ b/src/math/i386/atan2.s +@@ -10,8 +10,5 @@ atan2: + cmp $0x00200000,%eax + jae 1f + # subnormal x, return x with underflow +- fnstsw %ax +- and $16,%ax +- jnz 1f + fsts 4(%esp) +-1: ret ++ ret +diff --git a/src/math/i386/atan2f.s b/src/math/i386/atan2f.s +index 14b88ce5..0b264726 100644 +--- a/src/math/i386/atan2f.s ++++ b/src/math/i386/atan2f.s +@@ -10,10 +10,7 @@ atan2f: + cmp $0x01000000,%eax + jae 1f + # subnormal x, return x with underflow +- fnstsw %ax +- and $16,%ax +- jnz 1f + fld %st(0) + fmul %st(1) + fstps 4(%esp) +-1: ret ++ ret +diff --git a/src/math/i386/atanf.s b/src/math/i386/atanf.s +index 8caddefa..893beac5 100644 +--- a/src/math/i386/atanf.s ++++ b/src/math/i386/atanf.s +@@ -10,10 +10,7 @@ atanf: + fpatan + ret + # subnormal x, return x with underflow +-1: fnstsw %ax +- and $16,%ax +- jnz 2f +- fld %st(0) ++1: fld %st(0) + fmul %st(1) + fstps 4(%esp) +-2: ret ++ ret +diff --git a/src/math/i386/exp.s b/src/math/i386/exp.s +index c7aa5b6e..df87c497 100644 +--- a/src/math/i386/exp.s ++++ b/src/math/i386/exp.s +@@ -7,13 +7,10 @@ expm1f: + cmp $0x01000000,%eax + jae 1f + # subnormal x, return x with underflow +- fnstsw %ax +- and $16,%ax +- jnz 2f + fld %st(0) + fmul %st(1) + fstps 4(%esp) +-2: ret ++ ret + + .global expm1l + .type expm1l,@function +@@ -30,11 +27,8 @@ expm1: + cmp $0x00200000,%eax + jae 1f + # subnormal x, return x with underflow +- fnstsw %ax +- and $16,%ax +- jnz 2f + fsts 4(%esp) +-2: ret ++ ret + 1: fldl2e + fmulp + mov $0xc2820000,%eax +diff --git a/src/math/i386/log1p.s b/src/math/i386/log1p.s +index 6b6929c7..354f391a 100644 +--- a/src/math/i386/log1p.s ++++ b/src/math/i386/log1p.s +@@ -16,9 +16,6 @@ log1p: + fyl2x + ret + # subnormal x, return x with underflow +-2: fnstsw %ax +- and $16,%ax +- jnz 1f +- fsts 4(%esp) ++2: fsts 4(%esp) + fstp %st(1) +-1: ret ++ ret +diff --git a/src/math/i386/log1pf.s b/src/math/i386/log1pf.s +index c0bcd30f..4d3484cd 100644 +--- a/src/math/i386/log1pf.s ++++ b/src/math/i386/log1pf.s +@@ -16,10 +16,7 @@ log1pf: + fyl2x + ret + # subnormal x, return x with underflow +-2: fnstsw %ax +- and $16,%ax +- jnz 1f +- fxch ++2: fxch + fmul %st(1) + fstps 4(%esp) +-1: ret ++ ret +-- +2.11.0 + diff --git a/buildroot/package/musl/0005-fix-build-regression-in-i386-asm-for-atan2-atan2f.patch b/buildroot/package/musl/0005-fix-build-regression-in-i386-asm-for-atan2-atan2f.patch new file mode 100644 index 000000000..824933c6d --- /dev/null +++ b/buildroot/package/musl/0005-fix-build-regression-in-i386-asm-for-atan2-atan2f.patch @@ -0,0 +1,37 @@ +From 6818c31c9bc4bbad5357f1de14bedf781e5b349e Mon Sep 17 00:00:00 2001 +From: Rich Felker +Date: Mon, 5 Aug 2019 19:57:07 -0400 +Subject: [PATCH] fix build regression in i386 asm for atan2, atan2f + +commit f3ed8bfe8a82af1870ddc8696ed4cc1d5aa6b441 inadvertently removed +labels that were still needed. + +Signed-off-by: Peter Korsgaard +--- + src/math/i386/atan2.s | 2 +- + src/math/i386/atan2f.s | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/math/i386/atan2.s b/src/math/i386/atan2.s +index 1fa0524d..76b95f31 100644 +--- a/src/math/i386/atan2.s ++++ b/src/math/i386/atan2.s +@@ -11,4 +11,4 @@ atan2: + jae 1f + # subnormal x, return x with underflow + fsts 4(%esp) +- ret ++1: ret +diff --git a/src/math/i386/atan2f.s b/src/math/i386/atan2f.s +index 0b264726..c9408a90 100644 +--- a/src/math/i386/atan2f.s ++++ b/src/math/i386/atan2f.s +@@ -13,4 +13,4 @@ atan2f: + fld %st(0) + fmul %st(1) + fstps 4(%esp) +- ret ++1: ret +-- +2.11.0 + diff --git a/buildroot/package/musl/Config.in b/buildroot/package/musl/Config.in index 67e9e78a1..69da615b6 100644 --- a/buildroot/package/musl/Config.in +++ b/buildroot/package/musl/Config.in @@ -8,3 +8,5 @@ config BR2_PACKAGE_MUSL && !(BR2_i386 || BR2_powerpc) # Compatibility headers: cdefs.h, queue.h select BR2_PACKAGE_MUSL_COMPAT_HEADERS + help + https://www.musl-libc.org/ diff --git a/buildroot/package/mxsldr/Config.in.host b/buildroot/package/mxsldr/Config.in.host index a427e71cf..0a02877c8 100644 --- a/buildroot/package/mxsldr/Config.in.host +++ b/buildroot/package/mxsldr/Config.in.host @@ -6,4 +6,4 @@ config BR2_PACKAGE_HOST_MXSLDR Freescale i.MX23 and i.MX28 SoC's through the Serial Download Protocol. - git://git.denx.de/mxsldr.git + https://gitlab.denx.de/denx/mxsldr diff --git a/buildroot/package/mysql/Config.in b/buildroot/package/mysql/Config.in index 30a82cc91..ef4a9531a 100644 --- a/buildroot/package/mysql/Config.in +++ b/buildroot/package/mysql/Config.in @@ -22,7 +22,6 @@ config BR2_PACKAGE_MARIADB select BR2_PACKAGE_LIBXML2 select BR2_PACKAGE_NCURSES select BR2_PACKAGE_OPENSSL - select BR2_PACKAGE_READLINE select BR2_PACKAGE_HAS_MYSQL help MariaDB is one of the most popular database servers in the @@ -38,7 +37,6 @@ comment "mariadb needs a toolchain w/ dynamic library" config BR2_PACKAGE_ORACLE_MYSQL bool "oracle mysql" select BR2_PACKAGE_NCURSES - select BR2_PACKAGE_READLINE select BR2_PACKAGE_HAS_MYSQL help The MySQL Open Source Database System diff --git a/buildroot/package/ncurses/ncurses.hash b/buildroot/package/ncurses/ncurses.hash index 045625ae3..123256bf9 100644 --- a/buildroot/package/ncurses/ncurses.hash +++ b/buildroot/package/ncurses/ncurses.hash @@ -1,2 +1,4 @@ # Locally calculated after checking pgp signature sha256 aa057eeeb4a14d470101eff4597d5833dcef5965331be3528c08d99cebaa0d17 ncurses-6.1.tar.gz +# Locally computed +sha256 86106f0da1cf5ccfa0f0651665dd1b4515e8edad1c7972780155770548b317d9 COPYING diff --git a/buildroot/package/ncurses/ncurses.mk b/buildroot/package/ncurses/ncurses.mk index e27598bd4..12fb9812e 100644 --- a/buildroot/package/ncurses/ncurses.mk +++ b/buildroot/package/ncurses/ncurses.mk @@ -9,7 +9,7 @@ NCURSES_SITE = $(BR2_GNU_MIRROR)/ncurses NCURSES_INSTALL_STAGING = YES NCURSES_DEPENDENCIES = host-ncurses NCURSES_LICENSE = MIT with advertising clause -NCURSES_LICENSE_FILES = README +NCURSES_LICENSE_FILES = COPYING NCURSES_CONFIG_SCRIPTS = ncurses$(NCURSES_LIB_SUFFIX)6-config NCURSES_CONF_OPTS = \ diff --git a/buildroot/package/neardal/Config.in b/buildroot/package/neardal/Config.in index c72928338..5f33ae495 100644 --- a/buildroot/package/neardal/Config.in +++ b/buildroot/package/neardal/Config.in @@ -5,7 +5,7 @@ config BR2_PACKAGE_NEARDAL depends on BR2_USE_MMU # dbus select BR2_PACKAGE_DBUS select BR2_PACKAGE_DBUS_GLIB - select BR2_PACKAGE_READLINE if !BR2_PACKAGE_LIBEDIT + select BR2_PACKAGE_LIBEDIT help Provides a simple C API to exchange data with the neard NFC manager daemon. diff --git a/buildroot/package/neardal/neardal.mk b/buildroot/package/neardal/neardal.mk index 388301193..f511201b9 100644 --- a/buildroot/package/neardal/neardal.mk +++ b/buildroot/package/neardal/neardal.mk @@ -7,20 +7,12 @@ NEARDAL_VERSION = 33b54a55032b047fd885a5eb3592c169c0056c49 NEARDAL_SITE = $(call github,connectivity,neardal,$(NEARDAL_VERSION)) NEARDAL_INSTALL_STAGING = YES -NEARDAL_LICENSE = GPL-2.0 +NEARDAL_LICENSE = LGPL-2.0 NEARDAL_LICENSE_FILES = COPYING -NEARDAL_DEPENDENCIES = host-pkgconf dbus dbus-glib +NEARDAL_DEPENDENCIES = host-pkgconf dbus dbus-glib libedit NEARDAL_AUTORECONF = YES -# Either readline or libedit are needed, and the Config.in file -# guarantees at least one of them is enabled -ifeq ($(BR2_PACKAGE_READLINE),y) -NEARDAL_DEPENDENCIES += readline -else ifeq ($(BR2_PACKAGE_LIBEDIT),y) -NEARDAL_DEPENDENCIES += libedit -endif - define NEARDAL_INSTALL_NCL $(INSTALL) -m 0755 -D $(@D)/ncl/ncl $(TARGET_DIR)/usr/bin/ncl endef diff --git a/buildroot/package/netperf/Config.in b/buildroot/package/netperf/Config.in index 2f36b1b0d..a935fde50 100644 --- a/buildroot/package/netperf/Config.in +++ b/buildroot/package/netperf/Config.in @@ -3,4 +3,4 @@ config BR2_PACKAGE_NETPERF help Network performance benchmark tool - http://www.netperf.org/ + https://hewlettpackard.github.io/netperf/ diff --git a/buildroot/package/nfs-utils/Config.in b/buildroot/package/nfs-utils/Config.in index 055b711f0..4b0eb1510 100644 --- a/buildroot/package/nfs-utils/Config.in +++ b/buildroot/package/nfs-utils/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_NFS_UTILS bool "nfs-utils" depends on BR2_TOOLCHAIN_HAS_THREADS # libtirpc, rpcbind depends on BR2_USE_MMU # fork() - select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_PACKAGE_LIBTIRPC # IPv6 requires libtirpc select BR2_PACKAGE_RPCBIND # runtime help The NFS Linux kernel server. diff --git a/buildroot/package/nfs-utils/nfs-utils.mk b/buildroot/package/nfs-utils/nfs-utils.mk index 4bb62de1c..9ae02c003 100644 --- a/buildroot/package/nfs-utils/nfs-utils.mk +++ b/buildroot/package/nfs-utils/nfs-utils.mk @@ -10,7 +10,7 @@ NFS_UTILS_SITE = https://www.kernel.org/pub/linux/utils/nfs-utils/$(NFS_UTILS_VE NFS_UTILS_LICENSE = GPL-2.0+ NFS_UTILS_LICENSE_FILES = COPYING NFS_UTILS_AUTORECONF = YES -NFS_UTILS_DEPENDENCIES = host-pkgconf +NFS_UTILS_DEPENDENCIES = host-pkgconf libtirpc NFS_UTILS_CONF_ENV = knfsd_cv_bsd_signals=no @@ -19,7 +19,8 @@ NFS_UTILS_CONF_OPTS = \ --disable-nfsv41 \ --disable-gss \ --disable-uuid \ - --disable-ipv6 \ + --enable-tirpc \ + --enable-ipv6 \ --without-tcp-wrappers \ --with-statedir=/run/nfs \ --with-rpcgen=internal @@ -49,13 +50,6 @@ else NFS_UTILS_CONF_OPTS += --disable-caps endif -ifeq ($(BR2_PACKAGE_LIBTIRPC),y) -NFS_UTILS_CONF_OPTS += --enable-tirpc -NFS_UTILS_DEPENDENCIES += libtirpc -else -NFS_UTILS_CONF_OPTS += --disable-tirpc -endif - define NFS_UTILS_INSTALL_FIXUP cd $(TARGET_DIR) && rm -f $(NFS_UTILS_TARGETS_) touch $(TARGET_DIR)/etc/exports diff --git a/buildroot/package/nghttp2/nghttp2.hash b/buildroot/package/nghttp2/nghttp2.hash index d000fd56c..e0512e891 100644 --- a/buildroot/package/nghttp2/nghttp2.hash +++ b/buildroot/package/nghttp2/nghttp2.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 f75e8f228217f23aa5eabfbab140e061cda00b7c21e34c891ecfb248d663303f nghttp2-1.32.0.tar.gz +sha256 fc820a305e2f410fade1a3260f09229f15c0494fc089b0100312cd64a33a38c0 nghttp2-1.39.2.tar.gz sha256 6b94f3abc1aabd0c72a7c7d92a77f79dda7c8a0cb3df839a97890b4116a2de2a COPYING diff --git a/buildroot/package/nghttp2/nghttp2.mk b/buildroot/package/nghttp2/nghttp2.mk index 20bfee75a..6a5ec7284 100644 --- a/buildroot/package/nghttp2/nghttp2.mk +++ b/buildroot/package/nghttp2/nghttp2.mk @@ -4,7 +4,7 @@ # ################################################################################ -NGHTTP2_VERSION = 1.32.0 +NGHTTP2_VERSION = 1.39.2 NGHTTP2_SITE = https://github.com/nghttp2/nghttp2/releases/download/v$(NGHTTP2_VERSION) NGHTTP2_LICENSE = MIT NGHTTP2_LICENSE_FILES = COPYING diff --git a/buildroot/package/nginx/0005-auto-unix-make-sys_nerr-guessing-cross-friendly.patch b/buildroot/package/nginx/0005-auto-unix-make-sys_nerr-guessing-cross-friendly.patch index b4d8215b3..747a034ae 100644 --- a/buildroot/package/nginx/0005-auto-unix-make-sys_nerr-guessing-cross-friendly.patch +++ b/buildroot/package/nginx/0005-auto-unix-make-sys_nerr-guessing-cross-friendly.patch @@ -109,7 +109,7 @@ diff --git a/auto/unix b/auto/unix index 7dbf9d1..00a7370 100755 --- a/auto/unix +++ b/auto/unix -@@ -708,6 +708,10 @@ ngx_feature_incs='#include +@@ -736,6 +736,10 @@ ngx_feature_incs='#include #include ' ngx_feature_path= ngx_feature_libs= @@ -120,7 +120,7 @@ index 7dbf9d1..00a7370 100755 ngx_feature_test='printf("%d", sys_nerr);' . auto/feature -@@ -756,6 +760,12 @@ if [ $ngx_found = no ]; then +@@ -784,6 +788,12 @@ if [ $ngx_found = no ]; then . auto/feature fi diff --git a/buildroot/package/nginx/nginx.hash b/buildroot/package/nginx/nginx.hash index 40dba402e..4df7906ee 100644 --- a/buildroot/package/nginx/nginx.hash +++ b/buildroot/package/nginx/nginx.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -sha256 8f22ea2f6c0e0a221b6ddc02b6428a3ff708e2ad55f9361102b1c9f4142bdf93 nginx-1.15.7.tar.gz +sha256 f11c2a6dd1d3515736f0324857957db2de98be862461b5a542a3ac6188dbe32b nginx-1.16.1.tar.gz # License files, locally calculated -sha256 e18f05bcaad47528f8b21861d4a0fb9815ca1bbb4be946c51a51d36623758bcc LICENSE +sha256 28ad30e2f64bd89ac1287b4606906bb99ed04d9f4e13fb6564a0be9c8a23f509 LICENSE diff --git a/buildroot/package/nginx/nginx.mk b/buildroot/package/nginx/nginx.mk index 3bdd92b3f..08adcaec5 100644 --- a/buildroot/package/nginx/nginx.mk +++ b/buildroot/package/nginx/nginx.mk @@ -4,7 +4,7 @@ # ################################################################################ -NGINX_VERSION = 1.15.7 +NGINX_VERSION = 1.16.1 NGINX_SITE = http://nginx.org/download NGINX_LICENSE = BSD-2-Clause NGINX_LICENSE_FILES = LICENSE diff --git a/buildroot/package/nodejs/Config.in b/buildroot/package/nodejs/Config.in index d2846f8d5..e99544130 100644 --- a/buildroot/package/nodejs/Config.in +++ b/buildroot/package/nodejs/Config.in @@ -30,6 +30,7 @@ config BR2_PACKAGE_NODEJS select BR2_PACKAGE_LIBHTTPPARSER select BR2_PACKAGE_LIBUV select BR2_PACKAGE_ZLIB + select BR2_PACKAGE_NGHTTP2 help Event-driven I/O server-side JavaScript environment based on V8. diff --git a/buildroot/package/nodejs/nodejs.hash b/buildroot/package/nodejs/nodejs.hash index ad8ad4ad9..d1e2b39c3 100644 --- a/buildroot/package/nodejs/nodejs.hash +++ b/buildroot/package/nodejs/nodejs.hash @@ -1,5 +1,5 @@ -# From https://nodejs.org/dist/v8.15.1/SHASUMS256.txt -sha256 6b6486a3f452624941f6e11dd5f878c298d43e9c21b5f43ca1721dc7ce25add1 node-v8.15.1.tar.xz +# From https://nodejs.org/dist/v8.16.1/SHASUMS256.txt +sha256 d8c190acdf2d967faf49c22df883d31a8d4e249d67852dae3c2d8a0f756b0512 node-v8.16.1.tar.xz # Hash for license file sha256 b87be6c1479ed977481115869c2dd8b6d59e5ea55aa09939d6c898242121b2f5 LICENSE diff --git a/buildroot/package/nodejs/nodejs.mk b/buildroot/package/nodejs/nodejs.mk index 06d2eaad9..583b2276e 100644 --- a/buildroot/package/nodejs/nodejs.mk +++ b/buildroot/package/nodejs/nodejs.mk @@ -4,11 +4,11 @@ # ################################################################################ -NODEJS_VERSION = 8.15.1 +NODEJS_VERSION = 8.16.1 NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION) NODEJS_DEPENDENCIES = host-python host-nodejs c-ares \ - libhttpparser libuv zlib \ + libhttpparser libuv zlib nghttp2 \ $(call qstrip,$(BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL_DEPS)) HOST_NODEJS_DEPENDENCIES = host-libopenssl host-python host-zlib NODEJS_LICENSE = MIT (core code); MIT, Apache and BSD family licenses (Bundled components) @@ -20,6 +20,7 @@ NODEJS_CONF_OPTS = \ --shared-cares \ --shared-http-parser \ --shared-libuv \ + --shared-nghttp2 \ --without-dtrace \ --without-etw \ --dest-os=linux @@ -71,6 +72,7 @@ define HOST_NODEJS_BUILD_CMDS $(HOST_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python2 \ $(MAKE) -C $(@D) \ $(HOST_CONFIGURE_OPTS) \ + LDFLAGS.host="$(HOST_LDFLAGS)" \ NO_LOAD=cctest.target.mk \ PATH=$(@D)/bin:$(BR_PATH) endef @@ -79,6 +81,7 @@ define HOST_NODEJS_INSTALL_CMDS $(HOST_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python2 \ $(MAKE) -C $(@D) install \ $(HOST_CONFIGURE_OPTS) \ + LDFLAGS.host="$(HOST_LDFLAGS)" \ NO_LOAD=cctest.target.mk \ PATH=$(@D)/bin:$(BR_PATH) endef @@ -93,10 +96,23 @@ else ifeq ($(BR2_mipsel),y) NODEJS_CPU = mipsel else ifeq ($(BR2_arm),y) NODEJS_CPU = arm -else ifeq ($(BR2_aarch64),y) -NODEJS_CPU = arm64 # V8 needs to know what floating point ABI the target is using. NODEJS_ARM_FP = $(GCC_TARGET_FLOAT_ABI) +# it also wants to know which FPU to use, but only has support for +# vfp, vfpv3, vfpv3-d16 and neon. +ifeq ($(BR2_ARM_FPU_VFPV2),y) +NODEJS_ARM_FPU = vfp +# vfpv4 is a superset of vfpv3 +else ifeq ($(BR2_ARM_FPU_VFPV3)$(BR2_ARM_FPU_VFPV4),y) +NODEJS_ARM_FPU = vfpv3 +# vfpv4-d16 is a superset of vfpv3-d16 +else ifeq ($(BR2_ARM_FPU_VFPV3D16)$(BR2_ARM_FPU_VFPV4D16),y) +NODEJS_ARM_FPU = vfpv3-d16 +else ifeq ($(BR2_ARM_FPU_NEON),y) +NODEJS_ARM_FPU = neon +endif +else ifeq ($(BR2_aarch64),y) +NODEJS_CPU = arm64 endif # MIPS architecture specific options @@ -124,6 +140,7 @@ define NODEJS_CONFIGURE_CMDS --prefix=/usr \ --dest-cpu=$(NODEJS_CPU) \ $(if $(NODEJS_ARM_FP),--with-arm-float-abi=$(NODEJS_ARM_FP)) \ + $(if $(NODEJS_ARM_FPU),--with-arm-fpu=$(NODEJS_ARM_FPU)) \ $(if $(NODEJS_MIPS_ARCH_VARIANT),--with-mips-arch-variant=$(NODEJS_MIPS_ARCH_VARIANT)) \ $(if $(NODEJS_MIPS_FPU_MODE),--with-mips-fpu-mode=$(NODEJS_MIPS_FPU_MODE)) \ $(NODEJS_CONF_OPTS) \ diff --git a/buildroot/package/numactl/Config.in b/buildroot/package/numactl/Config.in index 95057d3c3..8ea07bb85 100644 --- a/buildroot/package/numactl/Config.in +++ b/buildroot/package/numactl/Config.in @@ -9,4 +9,4 @@ config BR2_PACKAGE_NUMACTL and memory nodes. It does this by supplying a NUMA memory policy to the operating system before running your program. - http://oss.sgi.com/projects/libnuma/ + https://github.com/numactl/numactl diff --git a/buildroot/package/openblas/Config.in b/buildroot/package/openblas/Config.in index 8e71a43f9..3f658c862 100644 --- a/buildroot/package/openblas/Config.in +++ b/buildroot/package/openblas/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_OPENBLAS_DEFAULT_TARGET default "PRESCOTT" if BR2_x86_prescott || BR2_x86_nocona default "BANIAS" if BR2_x86_pentium_m default "CORE2" if BR2_x86_core2 - default "NEHALEM" if BR2_x86_corei7 || BR2_x86_silvermont + default "NEHALEM" if BR2_x86_corei7 || BR2_x86_silvermont || BR2_x86_westmere default "SANDYBRIDGE" if BR2_x86_corei7_avx default "HASWELL" if BR2_x86_core_avx2 default "ATOM" if BR2_x86_atom @@ -14,7 +14,7 @@ config BR2_PACKAGE_OPENBLAS_DEFAULT_TARGET default "OPTERON" if BR2_x86_opteron default "OPTERON_SSE3" if BR2_x86_opteron_sse3 default "BARCELONA" if BR2_x86_barcelona - default "JAGUAR" if BR2_x86_jaguar + default "BOBCAT" if BR2_x86_jaguar default "STEAMROLLER" if BR2_x86_steamroller default "VIAC3" if BR2_x86_c3 || BR2_x86_c32 default "POWER4" if BR2_powerpc_power4 diff --git a/buildroot/package/opencv3/Config.in b/buildroot/package/opencv3/Config.in index 61405a7c6..c308cd4d8 100644 --- a/buildroot/package/opencv3/Config.in +++ b/buildroot/package/opencv3/Config.in @@ -157,11 +157,15 @@ config BR2_PACKAGE_OPENCV3_LIB_PYTHON bool "python" depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy select BR2_PACKAGE_PYTHON_NUMPY help Include opencv_python module into the OpenCV build. No python example is installed. +comment "python support needs glibc or musl" + depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) + config BR2_PACKAGE_OPENCV3_LIB_SHAPE bool "shape" # opencv_core dependency is already enabled diff --git a/buildroot/package/opencv3/opencv3.mk b/buildroot/package/opencv3/opencv3.mk index 3a2594b58..f72046454 100644 --- a/buildroot/package/opencv3/opencv3.mk +++ b/buildroot/package/opencv3/opencv3.mk @@ -30,7 +30,8 @@ OPENCV3_CONF_OPTS += \ -DBUILD_PERF_TESTS=$(if $(BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS),ON,OFF) \ -DBUILD_TESTS=$(if $(BR2_PACKAGE_OPENCV3_BUILD_TESTS),ON,OFF) \ -DBUILD_WITH_DEBUG_INFO=OFF \ - -DDOWNLOAD_EXTERNAL_TEST_DATA=OFF + -DDOWNLOAD_EXTERNAL_TEST_DATA=OFF \ + -DOPENCV_ENABLE_PKG_CONFIG=ON ifeq ($(BR2_PACKAGE_OPENCV3_BUILD_TESTS)$(BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS),) OPENCV3_CONF_OPTS += -DINSTALL_TEST=OFF @@ -221,7 +222,7 @@ OPENCV3_CONF_OPTS += \ -DWITH_WEBP=OFF \ -DWITH_XINE=OFF -OPENCV3_DEPENDENCIES += zlib +OPENCV3_DEPENDENCIES += host-pkgconf zlib ifeq ($(BR2_PACKAGE_OPENCV3_WITH_FFMPEG),y) OPENCV3_CONF_OPTS += -DWITH_FFMPEG=ON @@ -323,6 +324,7 @@ OPENCV3_CONF_OPTS += \ -DPYTHON2_PACKAGES_PATH=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages \ -DPYTHON2_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION) OPENCV3_DEPENDENCIES += python +OPENCV3_KEEP_PY_FILES += usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/cv2/config*.py else OPENCV3_CONF_OPTS += \ -DBUILD_opencv_python2=OFF \ @@ -334,6 +336,7 @@ OPENCV3_CONF_OPTS += \ -DPYTHON3_PACKAGES_PATH=/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages \ -DPYTHON3_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION) OPENCV3_DEPENDENCIES += python3 +OPENCV3_KEEP_PY_FILES += usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/cv2/config*.py endif OPENCV3_CONF_ENV += $(PKG_PYTHON_DISTUTILS_ENV) OPENCV3_DEPENDENCIES += python-numpy diff --git a/buildroot/package/openldap/0004-revert-ITS-3977-fix-libtool-static-behavior-to-match.patch b/buildroot/package/openldap/0004-revert-ITS-3977-fix-libtool-static-behavior-to-match.patch new file mode 100644 index 000000000..3a901c910 --- /dev/null +++ b/buildroot/package/openldap/0004-revert-ITS-3977-fix-libtool-static-behavior-to-match.patch @@ -0,0 +1,56 @@ +From 88a0442a0f01076914af80db40571fd52914ffa3 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Thu, 28 Mar 2019 23:52:38 +0100 +Subject: [PATCH] revert ITS#3977, fix libtool -static behavior to match docs + +Revert +https://github.com/openldap/openldap/commit/7b6a088a2590fdad10286d10050b769e48554e13 +as this patch does not work with our buildroot patches + +Fixes: + - http://autobuild.buildroot.org/results/ab4f85fd21cacfaef6b0b43a38da6a4a1d32ecb6 + +Signed-off-by: Fabrice Fontaine +[Upstream status: Not upstreamable] +--- + build/ltmain.sh | 9 ++------- + 1 file changed, 2 insertions(+), 7 deletions(-) + +diff --git a/build/ltmain.sh b/build/ltmain.sh +index 1d079b91e..996dc7dad 100755 +--- a/build/ltmain.sh ++++ b/build/ltmain.sh +@@ -1190,15 +1190,14 @@ EOF + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi +- prefer_static_libs=yes + else + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi +- prefer_static_libs=built + fi + build_libtool_libs=no + build_old_libs=yes ++ prefer_static_libs=yes + break + ;; + esac +@@ -2602,12 +2601,8 @@ EOF + fi + + link_static=no # Whether the deplib will be linked statically +- use_static_libs=$prefer_static_libs +- if test "$use_static_libs" = built && test "$installed" = yes ; then +- use_static_libs=no +- fi + if test -n "$library_names" && +- { test "$use_static_libs" = no || test -z "$old_library"; }; then ++ { test "$prefer_static_libs" = no || test -z "$old_library"; }; then + if test "$installed" = no; then + notinst_deplibs="$notinst_deplibs $lib" + need_relink=yes +-- +2.14.1 + diff --git a/buildroot/package/openldap/openldap.hash b/buildroot/package/openldap/openldap.hash index 37e2673c4..9ea1e7a55 100644 --- a/buildroot/package/openldap/openldap.hash +++ b/buildroot/package/openldap/openldap.hash @@ -1,7 +1,7 @@ -# From http://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.46.md5 -md5 829016c5a9f45c51adc50073ac6f9fd7 openldap-2.4.46.tgz -# From http://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.46.sha1 -sha1 a9ae2273eb9bdd70090dafe0d018a3132606bef6 openldap-2.4.46.tgz +# From http://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.48.md5 +md5 0729a0711fe096831dedc159e0bbe73f openldap-2.4.48.tgz +# From http://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.48.sha1 +sha1 c1984e80f6db038b317bf931866adb38e5537dcd openldap-2.4.48.tgz # Locally computed -sha256 9a90dcb86b99ae790ccab93b7585a31fbcbeec8c94bf0f7ab0ca0a87ea0c4b2d openldap-2.4.46.tgz +sha256 d9523ffcab5cd14b709fcf3cb4d04e8bc76bb8970113255f372bc74954c6074d openldap-2.4.48.tgz sha256 310fe25c858a9515fc8c8d7d1f24a67c9496f84a91e0a0e41ea9975b1371e569 LICENSE diff --git a/buildroot/package/openldap/openldap.mk b/buildroot/package/openldap/openldap.mk index 3f00f2b7d..4417bb659 100644 --- a/buildroot/package/openldap/openldap.mk +++ b/buildroot/package/openldap/openldap.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENLDAP_VERSION = 2.4.46 +OPENLDAP_VERSION = 2.4.48 OPENLDAP_SOURCE = openldap-$(OPENLDAP_VERSION).tgz OPENLDAP_SITE = http://www.openldap.org/software/download/OpenLDAP/openldap-release OPENLDAP_LICENSE = OpenLDAP Public License diff --git a/buildroot/package/opentyrian-data/Config.in b/buildroot/package/opentyrian-data/Config.in index dd3b0c132..c0698c297 100644 --- a/buildroot/package/opentyrian-data/Config.in +++ b/buildroot/package/opentyrian-data/Config.in @@ -6,4 +6,4 @@ config BR2_PACKAGE_OPENTYRIAN_DATA original Tyrian 2.1 data files, that have been released as Freeware in 2004, are compatible. - http://code.google.com/p/opentyrian/wiki/FAQ + https://bitbucket.org/opentyrian/opentyrian/wiki/Home diff --git a/buildroot/package/openvmtools/0003-Rename-poll-h-into-vm_poll-h-to-fix-build-failure-on-musl.patch b/buildroot/package/openvmtools/0003-Rename-poll-h-into-vm_poll-h-to-fix-build-failure-on-musl.patch new file mode 100644 index 000000000..e9495ce43 --- /dev/null +++ b/buildroot/package/openvmtools/0003-Rename-poll-h-into-vm_poll-h-to-fix-build-failure-on-musl.patch @@ -0,0 +1,798 @@ +From 9d13e32e362ad3ce5169f49b7f0fe1d9380e558c Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Mon, 30 Sep 2019 13:32:35 +0200 +Subject: [PATCH] Rename poll.h into vm_poll.h to fix build failure on musl +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +musl libc redirects include of sys/poll.h to poll.h. But since poll.h is +also a local header file, the musl libc header is never included. This +leads to the following build failure: + +In file included from asyncsocket.c:73:0: +.../host/i586-buildroot-linux-musl/sysroot/usr/include/sys/poll.h:1:2: warning: #warning redirecting incorrect #include to [-Wcpp] + #warning redirecting incorrect #include to +asyncsocket.c: In function ‘AsyncTCPSocketPollWork’: +asyncsocket.c:2537:13: error: invalid use of undefined type ‘struct pollfd’ + pfd[i].fd = asock[i]->fd; + ^ +asyncsocket.c:2537:13: error: dereferencing pointer to incomplete type ‘struct pollfd’ +asyncsocket.c:2538:13: error: invalid use of undefined type ‘struct pollfd’ + pfd[i].events = read ? POLLIN : POLLOUT; + ^ +asyncsocket.c:2538:33: error: ‘POLLIN’ undeclared (first use in this function); did you mean ‘POLL_IN’? + pfd[i].events = read ? POLLIN : POLLOUT; + +So rename poll.h into vm_poll.h as suggested by srowe in +https://github.com/vmware/open-vm-tools/issues/359#issuecomment-533529956 + +Fixes: + - http://autobuild.buildroot.org/results/4f575ef42bbc4387a07e396205052b2da081c64d + +Fix #359 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/vmware/open-vm-tools/pull/383] +--- + lib/asyncsocket/asyncsocket.c | 4 +- + lib/hgfsServer/hgfsServer.c | 2 +- + lib/include/asyncsocket.h | 2 +- + lib/include/poll.h | 330 -------------------- + lib/include/pollImpl.h | 2 +- + lib/include/vm_poll.h | 330 ++++++++++++++++++++ + lib/rpcIn/rpcin.c | 2 +- + 7 files changed, 336 insertions(+), 336 deletions(-) + delete mode 100644 open-vm-tools/lib/include/poll.h + create mode 100644 open-vm-tools/lib/include/vm_poll.h + +diff --git a/lib/asyncsocket/asyncsocket.c b/lib/asyncsocket/asyncsocket.c +index 102638cc..01181a95 100644 +--- a/lib/asyncsocket/asyncsocket.c ++++ b/lib/asyncsocket/asyncsocket.c +@@ -69,8 +69,8 @@ + #else + #include + #include ++#include + #include +-#include + #include + #include + #include +@@ -86,7 +86,7 @@ + #include "random.h" + #include "asyncsocket.h" + #include "asyncSocketBase.h" +-#include "poll.h" ++#include "vm_poll.h" + #include "log.h" + #include "err.h" + #include "hostinfo.h" +diff --git a/lib/hgfsServer/hgfsServer.c b/lib/hgfsServer/hgfsServer.c +index 46224551..fc691286 100644 +--- a/lib/hgfsServer/hgfsServer.c ++++ b/lib/hgfsServer/hgfsServer.c +@@ -48,7 +48,7 @@ + #include "hgfsServerOplock.h" + #include "hgfsDirNotify.h" + #include "userlock.h" +-#include "poll.h" ++#include "vm_poll.h" + #include "mutexRankLib.h" + #include "vm_basic_asm.h" + #include "unicodeOperations.h" +diff --git a/lib/include/asyncsocket.h b/lib/include/asyncsocket.h +index 95a5e464..a4b4e5aa 100644 +--- a/lib/include/asyncsocket.h ++++ b/lib/include/asyncsocket.h +@@ -164,7 +164,7 @@ typedef struct AsyncSocket AsyncSocket; + * Or the client can specify its favorite poll class and locking behavior. + * Use of IVmdbPoll is only supported for regular sockets and for Attach. + */ +-#include "poll.h" ++#include "vm_poll.h" + struct IVmdbPoll; + typedef struct AsyncSocketPollParams { + int flags; /* Default 0, only POLL_FLAG_NO_BULL is valid */ +diff --git a/lib/include/poll.h b/lib/include/poll.h +deleted file mode 100644 +index 6acd4f35..00000000 +--- a/lib/include/poll.h ++++ /dev/null +@@ -1,330 +0,0 @@ +-/********************************************************* +- * Copyright (C) 1998-2018 VMware, Inc. All rights reserved. +- * +- * This program is free software; you can redistribute it and/or modify it +- * under the terms of the GNU Lesser General Public License as published +- * by the Free Software Foundation version 2.1 and no later version. +- * +- * This program is distributed in the hope that it will be useful, but +- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +- * or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public +- * License for more details. +- * +- * You should have received a copy of the GNU Lesser General Public License +- * along with this program; if not, write to the Free Software Foundation, Inc., +- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +- * +- *********************************************************/ +- +-/********************************************************* +- * The contents of this file are subject to the terms of the Common +- * Development and Distribution License (the "License") version 1.0 +- * and no later version. You may not use this file except in +- * compliance with the License. +- * +- * You can obtain a copy of the License at +- * http://www.opensource.org/licenses/cddl1.php +- * +- * See the License for the specific language governing permissions +- * and limitations under the License. +- * +- *********************************************************/ +- +- +-#ifndef _POLL_H_ +-#define _POLL_H_ +- +-#define INCLUDE_ALLOW_USERLEVEL +-#define INCLUDE_ALLOW_VMCORE +-#include "includeCheck.h" +- +-#include "vm_basic_types.h" +-#include "vm_basic_defs.h" +-#include "vmware.h" +-#include "userlock.h" +- +-#if defined(__cplusplus) +-extern "C" { +-#endif +- +-#ifdef _WIN32 +-#define HZ 100 +-#elif defined linux +-#include +-#elif __APPLE__ +-#include +-/* +- * Old SDKs don't define TARGET_OS_IPHONE at all. +- * New ones define it to 0 on Mac OS X, 1 on iOS. +- */ +-#if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0 +-#include +-#endif +-#include +-#define HZ 100 +-#endif +-#ifdef __ANDROID__ +-/* +- * of android should be included, but its name is same +- * with this file. So its content is put here to avoid conflict. +- */ +-#include +-#define HZ 100 +-typedef unsigned int nfds_t; +-int poll(struct pollfd *, nfds_t, long); +-#endif +- +- +-/* +- * Poll event types: each type has a different reason for firing, +- * or condition that must be met before firing. +- */ +- +-typedef enum { +- /* +- * Actual Poll queue types against which you can register callbacks. +- */ +- POLL_VIRTUALREALTIME = -1, /* Negative because it doesn't have its own Q */ +- POLL_VTIME = 0, +- POLL_REALTIME, +- POLL_DEVICE, +- POLL_MAIN_LOOP, +- POLL_NUM_QUEUES +-} PollEventType; +- +- +-/* +- * Classes of events +- * +- * These are the predefined classes. More can be declared +- * with Poll_AllocClass(). +- */ +- +-typedef enum PollClass { +- POLL_CLASS_MAIN, +- POLL_CLASS_PAUSE, +- POLL_CLASS_IPC, +- POLL_CLASS_CPT, +- POLL_CLASS_MKS, +- POLL_FIXED_CLASSES, +- POLL_DEFAULT_FIXED_CLASSES, +- /* Size enum to maximum */ +- POLL_MAX_CLASSES = 31, +-} PollClass; +- +-/* +- * Do not use; Special pseudo private poll class supported by +- * PollDefault only +- */ +-#define POLL_DEFAULT_CLASS_NET POLL_FIXED_CLASSES +-#define POLL_DEFAULT_CS_NET PollClassSet_Singleton(POLL_DEFAULT_CLASS_NET) +- +-/* +- * Each callback is registered in a set of classes +- */ +- +-typedef struct PollClassSet { +- uintptr_t bits; +-} PollClassSet; +- +-/* An empty PollClassSet. */ +-static INLINE PollClassSet +-PollClassSet_Empty(void) +-{ +- PollClassSet set = { 0 }; +- return set; +-} +- +-/* A PollClassSet with the single member. */ +-static INLINE PollClassSet +-PollClassSet_Singleton(PollClass c) +-{ +- PollClassSet s = PollClassSet_Empty(); +- +- ASSERT_ON_COMPILE(POLL_MAX_CLASSES < sizeof s.bits * 8); +- ASSERT(c < POLL_MAX_CLASSES); +- +- s.bits = CONST3264U(1) << c; +- return s; +-} +- +-/* Combine two PollClassSets. */ +-static INLINE PollClassSet +-PollClassSet_Union(PollClassSet lhs, PollClassSet rhs) +-{ +- PollClassSet set; +- set.bits = lhs.bits | rhs.bits; +- return set; +-} +- +-/* Add single class to PollClassSet. */ +-static INLINE PollClassSet +-PollClassSet_Include(PollClassSet set, PollClass c) +-{ +- return PollClassSet_Union(set, PollClassSet_Singleton(c)); +-} +- +- +-#define POLL_CS_MAIN PollClassSet_Singleton(POLL_CLASS_MAIN) +-#define POLL_CS_PAUSE PollClassSet_Union(POLL_CS_MAIN, \ +- PollClassSet_Singleton(POLL_CLASS_PAUSE)) +-#define POLL_CS_CPT PollClassSet_Union(POLL_CS_PAUSE, \ +- PollClassSet_Singleton(POLL_CLASS_CPT)) +-#define POLL_CS_IPC PollClassSet_Union(POLL_CS_CPT, \ +- PollClassSet_Singleton(POLL_CLASS_IPC)) +-#define POLL_CS_VMDB POLL_CS_PAUSE /* POLL_CLASS_VMDB is retired */ +-#define POLL_CS_MKS PollClassSet_Singleton(POLL_CLASS_MKS) +-/* +- * DANGER. You don't need POLL_CS_ALWAYS. Really. So don't use it. +- */ +-#define POLL_CS_ALWAYS PollClassSet_Union(POLL_CS_CPT, POLL_CS_IPC) +- +-/* +- * Poll class-set taxonomy: +- * POLL_CS_MAIN +- * - Unless you NEED another class, use POLL_CS_MAIN. +- * POLL_CS_PAUSE +- * - For callbacks that must occur even if the guest is paused. +- * Most VMDB or Foundry commands are in this category. +- * POLL_CS_CPT +- * - Only for callbacks which can trigger intermediate Checkpoint +- * transitions. +- * The ONLY such callback is Migrate. +- * POLL_CS_IPC +- * - Only for callbacks which can contain Msg_(Post|Hint|Question) +- * responses, and for signal handlers (why)? +- * Vigor, VMDB, and Foundry can contain Msg_* responses. +- * POLL_CS_MKS +- * - Callback runs in MKS thread. +- * POLL_CS_ALWAYS +- * - Only for events that must be processed immediately. +- * The ONLY such callback is OvhdMemVmxSizeCheck. +- */ +- +- +-/* +- * Poll_Callback flags +- */ +- +-#define POLL_FLAG_PERIODIC 0x01 // keep after firing +-#define POLL_FLAG_REMOVE_AT_POWEROFF 0x02 // self-explanatory +-#define POLL_FLAG_READ 0x04 // device is ready for reading +-#define POLL_FLAG_WRITE 0x08 // device is ready for writing +-#define POLL_FLAG_SOCKET 0x10 // device is a Windows socket +-#define POLL_FLAG_NO_BULL 0x20 // callback does its own locking +-#define POLL_FLAG_WINSOCK 0x40 // Winsock style write events +-#define POLL_FLAG_FD 0x80 // device is a Windows file descriptor. +-#define POLL_FLAG_ACCEPT_INVALID_FDS 0x100 // For broken 3rd party libs, e.g. curl +-#define POLL_FLAG_THUNK_TO_WND 0x200 // thunk callback to window message loop +- +- +-typedef void (*PollerFunction)(void *clientData); +-typedef void (*PollerFireWrapper)(PollerFunction func, +- void *funcData, +- void *wrapperData); +-typedef Bool (*PollerErrorFn)(const char *errorStr); +- +-/* +- * Initialisers: +- * +- * For the sake of convenience, we declare the initialisers +- * for custom implmentations here, even though the actual +- * implementations are distinct from the core poll code. +- */ +- +-typedef struct PollOptions { +- Bool locked; // Use internal MXUser for locking +- Bool allowFullQueue; // Don't assert when device event queue is full. +- VThreadID windowsMsgThread; // thread that processes Windows messages +- PollerFireWrapper fireWrapperFn; // optional; may be useful for stats +- void *fireWrapperData; // optional +- PollerErrorFn errorFn; // optional; called upon unrecoverable error +-} PollOptions; +- +- +-void Poll_InitDefault(void); +-void Poll_InitDefaultEx(const PollOptions *opts); +-void Poll_InitGtk(void); // On top of glib for Linux +-void Poll_InitCF(void); // On top of CoreFoundation for OSX +- +- +-/* +- * Functions +- */ +-int Poll_SocketPair(Bool vmci, Bool stream, int fds[2]); +-void Poll_Loop(Bool loop, Bool *exit, PollClass c); +-void Poll_LoopTimeout(Bool loop, Bool *exit, PollClass c, int timeout); +-Bool Poll_LockingEnabled(void); +-void Poll_Exit(void); +- +- +-/* +- * Poll_Callback adds a callback regardless of whether an identical one exists. +- * The exception to this rule is POLL_DEVICE callbacks: there is a maximum of +- * one read and one write callback per fd. +- * +- * Poll_CallbackRemove removes one callback. If there are multiple identical +- * callbacks, which one is removed is an implementation detail. Note that in +- * the case of POLL_DEVICE and POLL_REALTIME callbacks, the fd/delay used to +- * create the callback is not specified when removing, so all callbacks +- * of those types with the same flags, function, and clientData are considered +- * "identical" even if their fd/delay differed. +- */ +- +-VMwareStatus Poll_Callback(PollClassSet classSet, +- int flags, +- PollerFunction f, +- void *clientData, +- PollEventType type, +- PollDevHandle info, // fd/microsec delay +- MXUserRecLock *lck); +-Bool Poll_CallbackRemove(PollClassSet classSet, +- int flags, +- PollerFunction f, +- void *clientData, +- PollEventType type); +-Bool Poll_CallbackRemoveOneByCB(PollClassSet classSet, +- int flags, +- PollerFunction f, +- PollEventType type, +- void **clientData); +- +-void Poll_NotifyChange(PollClassSet classSet); +- +-/* +- * Wrappers for Poll_Callback and Poll_CallbackRemove that present +- * simpler subsets of those interfaces. +- */ +- +-VMwareStatus Poll_CB_Device(PollerFunction f, +- void *clientData, +- PollDevHandle device, +- Bool periodic); +- +-Bool Poll_CB_DeviceRemove(PollerFunction f, +- void *clientData, +- Bool periodic); +- +- +-VMwareStatus Poll_CB_RTime(PollerFunction f, +- void *clientData, +- int64 delay, // microseconds +- Bool periodic, +- MXUserRecLock *lock); +- +-Bool Poll_CB_RTimeRemove(PollerFunction f, +- void *clientData, +- Bool periodic); +- +- +-#ifdef _WIN32 +-void Poll_SetPumpsWindowsMessages(Bool pumps); +-void Poll_SetWindowMessageRecipient(HWND hWnd, UINT msg, Bool alwaysThunk); +-Bool Poll_FireWndCallback(void *lparam); +-#endif +- +-#if defined(__cplusplus) +-} // extern "C" +-#endif +- +-#endif // _POLL_H_ +diff --git a/lib/include/pollImpl.h b/lib/include/pollImpl.h +index 46442e55..8bc66997 100644 +--- a/lib/include/pollImpl.h ++++ b/lib/include/pollImpl.h +@@ -44,7 +44,7 @@ + #define INCLUDE_ALLOW_USERLEVEL + #include "includeCheck.h" + +-#include "poll.h" ++#include "vm_poll.h" + #include "vm_basic_asm.h" + + #if defined(__cplusplus) +diff --git a/lib/include/vm_poll.h b/lib/include/vm_poll.h +new file mode 100644 +index 00000000..6acd4f35 +--- /dev/null ++++ b/lib/include/vm_poll.h +@@ -0,0 +1,330 @@ ++/********************************************************* ++ * Copyright (C) 1998-2018 VMware, Inc. All rights reserved. ++ * ++ * This program is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU Lesser General Public License as published ++ * by the Free Software Foundation version 2.1 and no later version. ++ * ++ * This program is distributed in the hope that it will be useful, but ++ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ++ * or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public ++ * License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public License ++ * along with this program; if not, write to the Free Software Foundation, Inc., ++ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ *********************************************************/ ++ ++/********************************************************* ++ * The contents of this file are subject to the terms of the Common ++ * Development and Distribution License (the "License") version 1.0 ++ * and no later version. You may not use this file except in ++ * compliance with the License. ++ * ++ * You can obtain a copy of the License at ++ * http://www.opensource.org/licenses/cddl1.php ++ * ++ * See the License for the specific language governing permissions ++ * and limitations under the License. ++ * ++ *********************************************************/ ++ ++ ++#ifndef _POLL_H_ ++#define _POLL_H_ ++ ++#define INCLUDE_ALLOW_USERLEVEL ++#define INCLUDE_ALLOW_VMCORE ++#include "includeCheck.h" ++ ++#include "vm_basic_types.h" ++#include "vm_basic_defs.h" ++#include "vmware.h" ++#include "userlock.h" ++ ++#if defined(__cplusplus) ++extern "C" { ++#endif ++ ++#ifdef _WIN32 ++#define HZ 100 ++#elif defined linux ++#include ++#elif __APPLE__ ++#include ++/* ++ * Old SDKs don't define TARGET_OS_IPHONE at all. ++ * New ones define it to 0 on Mac OS X, 1 on iOS. ++ */ ++#if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0 ++#include ++#endif ++#include ++#define HZ 100 ++#endif ++#ifdef __ANDROID__ ++/* ++ * of android should be included, but its name is same ++ * with this file. So its content is put here to avoid conflict. ++ */ ++#include ++#define HZ 100 ++typedef unsigned int nfds_t; ++int poll(struct pollfd *, nfds_t, long); ++#endif ++ ++ ++/* ++ * Poll event types: each type has a different reason for firing, ++ * or condition that must be met before firing. ++ */ ++ ++typedef enum { ++ /* ++ * Actual Poll queue types against which you can register callbacks. ++ */ ++ POLL_VIRTUALREALTIME = -1, /* Negative because it doesn't have its own Q */ ++ POLL_VTIME = 0, ++ POLL_REALTIME, ++ POLL_DEVICE, ++ POLL_MAIN_LOOP, ++ POLL_NUM_QUEUES ++} PollEventType; ++ ++ ++/* ++ * Classes of events ++ * ++ * These are the predefined classes. More can be declared ++ * with Poll_AllocClass(). ++ */ ++ ++typedef enum PollClass { ++ POLL_CLASS_MAIN, ++ POLL_CLASS_PAUSE, ++ POLL_CLASS_IPC, ++ POLL_CLASS_CPT, ++ POLL_CLASS_MKS, ++ POLL_FIXED_CLASSES, ++ POLL_DEFAULT_FIXED_CLASSES, ++ /* Size enum to maximum */ ++ POLL_MAX_CLASSES = 31, ++} PollClass; ++ ++/* ++ * Do not use; Special pseudo private poll class supported by ++ * PollDefault only ++ */ ++#define POLL_DEFAULT_CLASS_NET POLL_FIXED_CLASSES ++#define POLL_DEFAULT_CS_NET PollClassSet_Singleton(POLL_DEFAULT_CLASS_NET) ++ ++/* ++ * Each callback is registered in a set of classes ++ */ ++ ++typedef struct PollClassSet { ++ uintptr_t bits; ++} PollClassSet; ++ ++/* An empty PollClassSet. */ ++static INLINE PollClassSet ++PollClassSet_Empty(void) ++{ ++ PollClassSet set = { 0 }; ++ return set; ++} ++ ++/* A PollClassSet with the single member. */ ++static INLINE PollClassSet ++PollClassSet_Singleton(PollClass c) ++{ ++ PollClassSet s = PollClassSet_Empty(); ++ ++ ASSERT_ON_COMPILE(POLL_MAX_CLASSES < sizeof s.bits * 8); ++ ASSERT(c < POLL_MAX_CLASSES); ++ ++ s.bits = CONST3264U(1) << c; ++ return s; ++} ++ ++/* Combine two PollClassSets. */ ++static INLINE PollClassSet ++PollClassSet_Union(PollClassSet lhs, PollClassSet rhs) ++{ ++ PollClassSet set; ++ set.bits = lhs.bits | rhs.bits; ++ return set; ++} ++ ++/* Add single class to PollClassSet. */ ++static INLINE PollClassSet ++PollClassSet_Include(PollClassSet set, PollClass c) ++{ ++ return PollClassSet_Union(set, PollClassSet_Singleton(c)); ++} ++ ++ ++#define POLL_CS_MAIN PollClassSet_Singleton(POLL_CLASS_MAIN) ++#define POLL_CS_PAUSE PollClassSet_Union(POLL_CS_MAIN, \ ++ PollClassSet_Singleton(POLL_CLASS_PAUSE)) ++#define POLL_CS_CPT PollClassSet_Union(POLL_CS_PAUSE, \ ++ PollClassSet_Singleton(POLL_CLASS_CPT)) ++#define POLL_CS_IPC PollClassSet_Union(POLL_CS_CPT, \ ++ PollClassSet_Singleton(POLL_CLASS_IPC)) ++#define POLL_CS_VMDB POLL_CS_PAUSE /* POLL_CLASS_VMDB is retired */ ++#define POLL_CS_MKS PollClassSet_Singleton(POLL_CLASS_MKS) ++/* ++ * DANGER. You don't need POLL_CS_ALWAYS. Really. So don't use it. ++ */ ++#define POLL_CS_ALWAYS PollClassSet_Union(POLL_CS_CPT, POLL_CS_IPC) ++ ++/* ++ * Poll class-set taxonomy: ++ * POLL_CS_MAIN ++ * - Unless you NEED another class, use POLL_CS_MAIN. ++ * POLL_CS_PAUSE ++ * - For callbacks that must occur even if the guest is paused. ++ * Most VMDB or Foundry commands are in this category. ++ * POLL_CS_CPT ++ * - Only for callbacks which can trigger intermediate Checkpoint ++ * transitions. ++ * The ONLY such callback is Migrate. ++ * POLL_CS_IPC ++ * - Only for callbacks which can contain Msg_(Post|Hint|Question) ++ * responses, and for signal handlers (why)? ++ * Vigor, VMDB, and Foundry can contain Msg_* responses. ++ * POLL_CS_MKS ++ * - Callback runs in MKS thread. ++ * POLL_CS_ALWAYS ++ * - Only for events that must be processed immediately. ++ * The ONLY such callback is OvhdMemVmxSizeCheck. ++ */ ++ ++ ++/* ++ * Poll_Callback flags ++ */ ++ ++#define POLL_FLAG_PERIODIC 0x01 // keep after firing ++#define POLL_FLAG_REMOVE_AT_POWEROFF 0x02 // self-explanatory ++#define POLL_FLAG_READ 0x04 // device is ready for reading ++#define POLL_FLAG_WRITE 0x08 // device is ready for writing ++#define POLL_FLAG_SOCKET 0x10 // device is a Windows socket ++#define POLL_FLAG_NO_BULL 0x20 // callback does its own locking ++#define POLL_FLAG_WINSOCK 0x40 // Winsock style write events ++#define POLL_FLAG_FD 0x80 // device is a Windows file descriptor. ++#define POLL_FLAG_ACCEPT_INVALID_FDS 0x100 // For broken 3rd party libs, e.g. curl ++#define POLL_FLAG_THUNK_TO_WND 0x200 // thunk callback to window message loop ++ ++ ++typedef void (*PollerFunction)(void *clientData); ++typedef void (*PollerFireWrapper)(PollerFunction func, ++ void *funcData, ++ void *wrapperData); ++typedef Bool (*PollerErrorFn)(const char *errorStr); ++ ++/* ++ * Initialisers: ++ * ++ * For the sake of convenience, we declare the initialisers ++ * for custom implmentations here, even though the actual ++ * implementations are distinct from the core poll code. ++ */ ++ ++typedef struct PollOptions { ++ Bool locked; // Use internal MXUser for locking ++ Bool allowFullQueue; // Don't assert when device event queue is full. ++ VThreadID windowsMsgThread; // thread that processes Windows messages ++ PollerFireWrapper fireWrapperFn; // optional; may be useful for stats ++ void *fireWrapperData; // optional ++ PollerErrorFn errorFn; // optional; called upon unrecoverable error ++} PollOptions; ++ ++ ++void Poll_InitDefault(void); ++void Poll_InitDefaultEx(const PollOptions *opts); ++void Poll_InitGtk(void); // On top of glib for Linux ++void Poll_InitCF(void); // On top of CoreFoundation for OSX ++ ++ ++/* ++ * Functions ++ */ ++int Poll_SocketPair(Bool vmci, Bool stream, int fds[2]); ++void Poll_Loop(Bool loop, Bool *exit, PollClass c); ++void Poll_LoopTimeout(Bool loop, Bool *exit, PollClass c, int timeout); ++Bool Poll_LockingEnabled(void); ++void Poll_Exit(void); ++ ++ ++/* ++ * Poll_Callback adds a callback regardless of whether an identical one exists. ++ * The exception to this rule is POLL_DEVICE callbacks: there is a maximum of ++ * one read and one write callback per fd. ++ * ++ * Poll_CallbackRemove removes one callback. If there are multiple identical ++ * callbacks, which one is removed is an implementation detail. Note that in ++ * the case of POLL_DEVICE and POLL_REALTIME callbacks, the fd/delay used to ++ * create the callback is not specified when removing, so all callbacks ++ * of those types with the same flags, function, and clientData are considered ++ * "identical" even if their fd/delay differed. ++ */ ++ ++VMwareStatus Poll_Callback(PollClassSet classSet, ++ int flags, ++ PollerFunction f, ++ void *clientData, ++ PollEventType type, ++ PollDevHandle info, // fd/microsec delay ++ MXUserRecLock *lck); ++Bool Poll_CallbackRemove(PollClassSet classSet, ++ int flags, ++ PollerFunction f, ++ void *clientData, ++ PollEventType type); ++Bool Poll_CallbackRemoveOneByCB(PollClassSet classSet, ++ int flags, ++ PollerFunction f, ++ PollEventType type, ++ void **clientData); ++ ++void Poll_NotifyChange(PollClassSet classSet); ++ ++/* ++ * Wrappers for Poll_Callback and Poll_CallbackRemove that present ++ * simpler subsets of those interfaces. ++ */ ++ ++VMwareStatus Poll_CB_Device(PollerFunction f, ++ void *clientData, ++ PollDevHandle device, ++ Bool periodic); ++ ++Bool Poll_CB_DeviceRemove(PollerFunction f, ++ void *clientData, ++ Bool periodic); ++ ++ ++VMwareStatus Poll_CB_RTime(PollerFunction f, ++ void *clientData, ++ int64 delay, // microseconds ++ Bool periodic, ++ MXUserRecLock *lock); ++ ++Bool Poll_CB_RTimeRemove(PollerFunction f, ++ void *clientData, ++ Bool periodic); ++ ++ ++#ifdef _WIN32 ++void Poll_SetPumpsWindowsMessages(Bool pumps); ++void Poll_SetWindowMessageRecipient(HWND hWnd, UINT msg, Bool alwaysThunk); ++Bool Poll_FireWndCallback(void *lparam); ++#endif ++ ++#if defined(__cplusplus) ++} // extern "C" ++#endif ++ ++#endif // _POLL_H_ +diff --git a/lib/rpcIn/rpcin.c b/lib/rpcIn/rpcin.c +index 47a3380e..660382c6 100644 +--- a/lib/rpcIn/rpcin.c ++++ b/lib/rpcIn/rpcin.c +@@ -57,7 +57,7 @@ + + #if defined(VMTOOLS_USE_VSOCKET) + # include +-# include "poll.h" ++# include "vm_poll.h" + # include "asyncsocket.h" + # include "vmci_defs.h" + #include "dataMap.h" +-- +2.23.0 + diff --git a/buildroot/package/openvmtools/0004-Remove-assumptions-about-glibc-being-only-libc-imple.patch b/buildroot/package/openvmtools/0004-Remove-assumptions-about-glibc-being-only-libc-imple.patch new file mode 100644 index 000000000..5960006f2 --- /dev/null +++ b/buildroot/package/openvmtools/0004-Remove-assumptions-about-glibc-being-only-libc-imple.patch @@ -0,0 +1,27 @@ +From a0983d84185f04c4e40778fe951fde4439894882 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sun, 16 Jul 2017 07:37:03 -0700 +Subject: [PATCH] Remove assumptions about glibc being only libc + implementation on linux + +Signed-off-by: Khem Raj +[Retrieved (and updated to work on current version) from: +http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-Remove-assumptions-about-glibc-being-only-libc-imple.patch?h=sumo] +Signed-off-by: Fabrice Fontaine +--- + open-vm-tools/lib/file/fileIOPosix.c | 2 +- + 2 files changed, 3 insertions(+), 1 deletion(-) + +Index: open-vm-tools/lib/file/fileIOPosix.c +=================================================================== +--- open-vm-tools.orig/lib/file/fileIOPosix.c ++++ open-vm-tools/lib/file/fileIOPosix.c +@@ -205,7 +205,7 @@ static AlignedPool alignedPool; + * are not available in any header file. + */ + +-#if defined(__linux__) && !defined(__ANDROID__) ++#if defined(__linux__) && defined(__GLIBC__) + #if defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64) + /* + * We want preadv/pwritev. But due to FOB=64, the symbols are -64. diff --git a/buildroot/package/openvmtools/0005-Use-configure-test-for-struct-timespec.patch b/buildroot/package/openvmtools/0005-Use-configure-test-for-struct-timespec.patch new file mode 100644 index 000000000..3386faec1 --- /dev/null +++ b/buildroot/package/openvmtools/0005-Use-configure-test-for-struct-timespec.patch @@ -0,0 +1,48 @@ +From bf1eafb07297711baf9320b1edcca8a3376f117d Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 18 Nov 2015 09:03:00 +0000 +Subject: [PATCH] Use configure test for struct timespec + +Use the configure script to test for struct time spec instead of trying +to keep track of what platforms has it. + +Signed-off-by: Natanael Copa +[Retrieved from: +http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-test-for-struct-timespec.patch?h=sumo] +Signed-off-by: Fabrice Fontaine +--- + open-vm-tools/configure.ac | 1 + + open-vm-tools/lib/include/hgfsUtil.h | 8 +------- + 2 files changed, 2 insertions(+), 7 deletions(-) + +Index: open-vm-tools/configure.ac +=================================================================== +--- open-vm-tools.orig/configure.ac ++++ open-vm-tools/configure.ac +@@ -1127,6 +1127,7 @@ AC_TYPE_OFF_T + AC_TYPE_PID_T + AC_TYPE_SIZE_T + AC_CHECK_MEMBERS([struct stat.st_rdev]) ++AC_CHECK_MEMBERS([struct timespec.tv_sec],[],[],[[#include ]]) + AC_HEADER_TIME + AC_STRUCT_TM + AC_C_VOLATILE +Index: open-vm-tools/lib/include/hgfsUtil.h +=================================================================== +--- open-vm-tools.orig/lib/include/hgfsUtil.h ++++ open-vm-tools/lib/include/hgfsUtil.h +@@ -53,13 +53,7 @@ + # include + # endif + # include "vm_basic_types.h" +-# if !defined _STRUCT_TIMESPEC && \ +- !defined _TIMESPEC_DECLARED && \ +- !defined __timespec_defined && \ +- !defined sun && \ +- !defined __FreeBSD__ && \ +- !__APPLE__ && \ +- !defined _WIN32 ++# if !defined HAVE_STRUCT_TIMESPEC_TV_SEC + struct timespec { + time_t tv_sec; + long tv_nsec; diff --git a/buildroot/package/openvmtools/0006-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch b/buildroot/package/openvmtools/0006-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch new file mode 100644 index 000000000..371004c90 --- /dev/null +++ b/buildroot/package/openvmtools/0006-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch @@ -0,0 +1,61 @@ +From 31ae6f42458f90d4994a4ad8e2b7673691612c36 Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 18 Nov 2015 09:10:14 +0000 +Subject: [PATCH] Fix definition of ALLPERMS and ACCESSPERMS + +The ALLPERMS and ACCESSPERMS defines are not specified in POSIX so +assume it is not there instead of testing for specific implementations. + +This is needed for musl libc. + +Signed-off-by: Natanael Copa +[Retrieved from: +http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0006-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch?h=sumo] +Signed-off-by: Fabrice Fontaine +--- + open-vm-tools/lib/hgfsServer/hgfsServerLinux.c | 8 +++++--- + open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c | 3 +-- + 2 files changed, 6 insertions(+), 5 deletions(-) + +Index: open-vm-tools/lib/hgfsServer/hgfsServerLinux.c +=================================================================== +--- open-vm-tools.orig/lib/hgfsServer/hgfsServerLinux.c ++++ open-vm-tools/lib/hgfsServer/hgfsServerLinux.c +@@ -107,11 +107,13 @@ typedef struct DirectoryEntry { + #endif + + /* +- * ALLPERMS (mode 07777) and ACCESSPERMS (mode 0777) are not defined in the +- * Solaris version of . ++ * ALLPERMS (mode 07777) and ACCESSPERMS (mode 0777) are not specified in ++ * POSIX. + */ +-#ifdef sun ++#ifndef ACCESSPERMS + # define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) ++#endif ++#ifndef ALLPERMS + # define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) + #endif + +Index: open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c +=================================================================== +--- open-vm-tools.orig/services/plugins/dndcp/dnd/dndLinux.c ++++ open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c +@@ -51,7 +51,7 @@ + + #define DND_ROOTDIR_PERMS (S_IRWXU | S_IRWXG | S_IRWXO) + #define DND_STAGINGDIR_PERMS (S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH) +-#ifdef sun ++#ifndef ACCESSPERMS + #define ACCESSPERMS (S_IRWXU | S_IRWXG | S_IRWXO) + #endif + #ifdef __ANDROID__ +@@ -60,7 +60,6 @@ + */ + #define NO_SETMNTENT + #define NO_ENDMNTENT +-#define ACCESSPERMS (S_IRWXU | S_IRWXG | S_IRWXO) + #endif + + diff --git a/buildroot/package/openvmtools/0007-Use-configure-to-test-for-feature-instead-of-platfor.patch b/buildroot/package/openvmtools/0007-Use-configure-to-test-for-feature-instead-of-platfor.patch new file mode 100644 index 000000000..0d3948aa1 --- /dev/null +++ b/buildroot/package/openvmtools/0007-Use-configure-to-test-for-feature-instead-of-platfor.patch @@ -0,0 +1,150 @@ +From 6cc1c22cc30320f56da552a76bd956db8f255b6a Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 18 Nov 2015 10:05:07 +0000 +Subject: [PATCH] Use configure to test for feature instead of platform + +Test for various functions instead of trying to keep track of what +platform and what version of the given platform has support for what. + +This should make it easier to port to currently unknown platforms and +will solve the issue if a platform add support for a missing feature in +the future. + +The features we test for are: +- getifaddrs +- getauxval +- issetugid +- __secure_getenv + +This is needed for musl libc. + +Signed-off-by: Natanael Copa +[Retrieved (and slightly updated) from: +http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Use-configure-to-test-for-feature-instead-of-platfor.patch?h=sumo] +Signed-off-by: Fabrice Fontaine +--- + open-vm-tools/configure.ac | 4 ++++ + open-vm-tools/lib/misc/idLinux.c | 30 ++++++++++++++---------------- + open-vm-tools/lib/nicInfo/nicInfoPosix.c | 8 ++++++-- + 3 files changed, 24 insertions(+), 18 deletions(-) + +Index: open-vm-tools/configure.ac +=================================================================== +--- open-vm-tools.orig/configure.ac ++++ open-vm-tools/configure.ac +@@ -798,6 +798,7 @@ AC_CHECK_FUNCS( + + AC_CHECK_FUNCS([ecvt]) + AC_CHECK_FUNCS([fcvt]) ++AC_CHECK_FUNCS([getifaddrs getauxval issetugid __secure_getenv]) + + AC_CHECK_FUNC([mkdtemp], [have_mkdtemp=yes]) + +@@ -1063,10 +1064,13 @@ AC_PATH_PROG( + ### + + AC_CHECK_HEADERS([crypt.h]) ++AC_CHECK_HEADERS([ifaddrs.h]) + AC_CHECK_HEADERS([inttypes.h]) + AC_CHECK_HEADERS([stdint.h]) + AC_CHECK_HEADERS([stdlib.h]) + AC_CHECK_HEADERS([wchar.h]) ++AC_CHECK_HEADERS([net/if.h]) ++AC_CHECK_HEADERS([sys/auxv.h]) + AC_CHECK_HEADERS([sys/inttypes.h]) + AC_CHECK_HEADERS([sys/io.h]) + AC_CHECK_HEADERS([sys/param.h]) # Required to make the sys/user.h check work correctly on FreeBSD +Index: open-vm-tools/lib/misc/idLinux.c +=================================================================== +--- open-vm-tools.orig/lib/misc/idLinux.c ++++ open-vm-tools/lib/misc/idLinux.c +@@ -27,12 +27,9 @@ + #include + #include + #include +-#ifdef __linux__ +-#if defined(__GLIBC__) && \ +- (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16)) ++#ifdef HAVE_SYS_AUXV_H + #include + #endif +-#endif + #ifdef __APPLE__ + #include + #include +@@ -997,31 +994,32 @@ Id_EndSuperUser(uid_t uid) // IN: + static Bool + IdIsSetUGid(void) + { +-#if defined(__ANDROID__) +- /* Android does not have a secure_getenv, so be conservative. */ +- return TRUE; +-#else + /* + * We use __secure_getenv, which returns NULL if the binary is +- * setuid or setgid. Alternatives include, ++ * setuid or setgid, when issetugid or getauxval(AT_SECURE) is not ++ * available. Alternatives include, + * +- * a) getauxval(AT_SECURE); not available until glibc 2.16. +- * b) __libc_enable_secure; may not be exported. ++ * a) issetugid(); not (yet?) available in glibc. ++ * b) getauxval(AT_SECURE); not available until glibc 2.16. ++ * c) __libc_enable_secure; may not be exported. + * +- * Use (a) when we are based on glibc 2.16, or newer. ++ * Use (b) when we are based on glibc 2.16, or newer. + */ + +-#if defined(__GLIBC__) && \ +- (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16)) ++#if HAVE_ISSETUGID ++ return issetugid(); ++#elif HAVE_GETAUXVAL + return getauxval(AT_SECURE) != 0; +-#else ++#elif HAVE___SECURE_GETENV + static const char envName[] = "VMW_SETUGID_TEST"; + + if (setenv(envName, "1", TRUE) == -1) { + return TRUE; /* Conservative */ + } + return __secure_getenv(envName) == NULL; +-#endif ++#else ++ /* Android does not have a secure_getenv, so be conservative. */ ++ return TRUE; + #endif + } + #endif +Index: open-vm-tools/lib/nicInfo/nicInfoPosix.c +=================================================================== +--- open-vm-tools.orig/lib/nicInfo/nicInfoPosix.c ++++ open-vm-tools/lib/nicInfo/nicInfoPosix.c +@@ -34,9 +34,13 @@ + #include + #include + #include +-#if defined(__FreeBSD__) || defined(__APPLE__) ++#if HAVE_SYS_SYSCTL_H + # include ++#endif ++#if HAVE_IFADDRS_H + # include ++#endif ++#if HAVE_NET_IF_H + # include + #endif + #ifndef NO_DNET +@@ -348,10 +352,7 @@ GuestInfoGetNicInfo(NicInfoV3 *nicInfo) + * + ****************************************************************************** + */ +-#if defined(__FreeBSD__) || \ +- defined(__APPLE__) || \ +- defined(USERWORLD) || \ +- (defined(__linux__) && defined(NO_DNET)) ++#if defined(NO_DNET) && defined(HAVE_GETIFADDRS) + + char * + GuestInfoGetPrimaryIP(void) diff --git a/buildroot/package/openvmtools/0008-Use-configure-test-for-sys-stat.h-include.patch b/buildroot/package/openvmtools/0008-Use-configure-test-for-sys-stat.h-include.patch new file mode 100644 index 000000000..c058dfe6c --- /dev/null +++ b/buildroot/package/openvmtools/0008-Use-configure-test-for-sys-stat.h-include.patch @@ -0,0 +1,28 @@ +From 95c6184d9ff70a47c41768850923a96de9e544aa Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 18 Nov 2015 10:41:01 +0000 +Subject: [PATCH] Use configure test for sys/stat.h include + +This is needed for musl libc. + +Signed-off-by: Natanael Copa +[Retrieved from: +http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0011-Use-configure-test-for-sys-stat.h-include.patch?h=sumo] +Signed-off-by: Fabrice Fontaine +--- + open-vm-tools/services/plugins/vix/vixTools.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: open-vm-tools/services/plugins/vix/vixTools.c +=================================================================== +--- open-vm-tools.orig/services/plugins/vix/vixTools.c ++++ open-vm-tools/services/plugins/vix/vixTools.c +@@ -66,7 +66,7 @@ + #include + #endif + +-#if defined(sun) || defined(__FreeBSD__) || defined(__APPLE__) ++#ifdef HAVE_SYS_STAT_H + #include + #endif + diff --git a/buildroot/package/openvmtools/0009-Set-permissions-on-rules-file.patch b/buildroot/package/openvmtools/0009-Set-permissions-on-rules-file.patch new file mode 100644 index 000000000..6a37c1690 --- /dev/null +++ b/buildroot/package/openvmtools/0009-Set-permissions-on-rules-file.patch @@ -0,0 +1,23 @@ +From c3ef6a8285132871ad10f9300d8afff55d8d6de2 Mon Sep 17 00:00:00 2001 +From: puneetse <22071208+puneetse@users.noreply.github.com> +Date: Wed, 16 Oct 2019 10:09:38 -0700 +Subject: [PATCH] Set permissions on rules file + +udevs rules should not be executable otherwise udev will log a warning in the journal + +Signed-off-by: Pascal de Bruijn +--- + udev/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/udev/Makefile.am b/udev/Makefile.am +index 68fbc3e27..8b9a4d716 100644 +--- a/udev/Makefile.am ++++ b/udev/Makefile.am +@@ -17,5 +17,5 @@ + + install-data-local: + $(INSTALL) -d $(DESTDIR)$(UDEVRULESDIR) +- $(INSTALL) $(srcdir)/99-vmware-scsi-udev.rules $(DESTDIR)$(UDEVRULESDIR) ++ $(INSTALL) -m 0644 $(srcdir)/99-vmware-scsi-udev.rules $(DESTDIR)$(UDEVRULESDIR) + diff --git a/buildroot/package/openvmtools/0010-Change-DEVPATH-to-devpath.patch b/buildroot/package/openvmtools/0010-Change-DEVPATH-to-devpath.patch new file mode 100644 index 000000000..5af694d8f --- /dev/null +++ b/buildroot/package/openvmtools/0010-Change-DEVPATH-to-devpath.patch @@ -0,0 +1,25 @@ +From 22f5d198b3b2f7e4debed83948ba1baf70d4749a Mon Sep 17 00:00:00 2001 +From: puneetse <22071208+puneetse@users.noreply.github.com> +Date: Wed, 16 Oct 2019 10:04:41 -0700 +Subject: [PATCH] Change $DEVPATH to $devpath + +$DEVPATH throws a warning by udev. + +Signed-off-by: Pascal de Bruijn +--- + udev/99-vmware-scsi-udev.rules | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/udev/99-vmware-scsi-udev.rules b/udev/99-vmware-scsi-udev.rules +index 053b59706..a605d80ef 100644 +--- a/udev/99-vmware-scsi-udev.rules ++++ b/udev/99-vmware-scsi-udev.rules +@@ -2,6 +2,6 @@ + # + # This file is part of open-vm-tools + +-ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*", ATTRS{model}=="Virtual disk*", ENV{DEVTYPE}=="disk", RUN+="/bin/sh -c 'echo 180 >/sys$DEVPATH/device/timeout'" +-ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*", ATTRS{model}=="VMware Virtual S", ENV{DEVTYPE}=="disk", RUN+="/bin/sh -c 'echo 180 >/sys$DEVPATH/device/timeout'" ++ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*", ATTRS{model}=="Virtual disk*", ENV{DEVTYPE}=="disk", RUN+="/bin/sh -c 'echo 180 >/sys/$devpath/device/timeout'" ++ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*", ATTRS{model}=="VMware Virtual S", ENV{DEVTYPE}=="disk", RUN+="/bin/sh -c 'echo 180 >/sys/$devpath/device/timeout'" + diff --git a/buildroot/package/openvmtools/Config.in b/buildroot/package/openvmtools/Config.in index 72c0293de..49d718953 100644 --- a/buildroot/package/openvmtools/Config.in +++ b/buildroot/package/openvmtools/Config.in @@ -4,11 +4,11 @@ config BR2_PACKAGE_OPENVMTOOLS depends on BR2_USE_MMU # libglib2 depends on BR2_USE_WCHAR # libglib2 depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 - depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC depends on BR2_ENABLE_LOCALE depends on !BR2_TOOLCHAIN_USES_UCLIBC select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBDNET + select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC help Open Virtual Machine Tools for VMware guest OS @@ -47,9 +47,9 @@ comment "PAM support needs a glibc toolchain w/ dynamic library" endif -comment "openvmtools needs a glibc or musl toolchain w/ wchar, threads, RPC, locale" +comment "openvmtools needs a glibc or musl toolchain w/ wchar, threads, locale" depends on BR2_i386 || BR2_x86_64 depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ - !BR2_TOOLCHAIN_HAS_NATIVE_RPC || !BR2_ENABLE_LOCALE || \ + !BR2_ENABLE_LOCALE || \ BR2_TOOLCHAIN_USES_UCLIBC diff --git a/buildroot/package/openvmtools/S10vmtoolsd b/buildroot/package/openvmtools/S10vmtoolsd index 6afb9ca08..5fdb5682f 100644 --- a/buildroot/package/openvmtools/S10vmtoolsd +++ b/buildroot/package/openvmtools/S10vmtoolsd @@ -7,6 +7,8 @@ EXEC="/usr/bin/vmtoolsd" ARGS="-b" PID="/var/run/vmtoolsd.pid" +[ -r /etc/default/vmtoolsd ] && . /etc/default/vmtoolsd + case "$1" in start) printf "Starting vmtoolsd: " diff --git a/buildroot/package/openvmtools/openvmtools.mk b/buildroot/package/openvmtools/openvmtools.mk index 0dc2956d0..c5e306221 100644 --- a/buildroot/package/openvmtools/openvmtools.mk +++ b/buildroot/package/openvmtools/openvmtools.mk @@ -20,6 +20,10 @@ OPENVMTOOLS_CONF_OPTS = --with-dnet \ OPENVMTOOLS_CONF_ENV += CUSTOM_DNET_CPPFLAGS=" " OPENVMTOOLS_DEPENDENCIES = host-nfs-utils libglib2 libdnet +ifeq ($(BR2_PACKAGE_LIBTIRPC),y) +OPENVMTOOLS_DEPENDENCIES += libtirpc +endif + # When libfuse is available, openvmtools can build vmblock-fuse, so # make sure that libfuse gets built first ifeq ($(BR2_PACKAGE_LIBFUSE),y) diff --git a/buildroot/package/openvmtools/vmtoolsd.service b/buildroot/package/openvmtools/vmtoolsd.service index 1d2a3566c..cb97357ec 100644 --- a/buildroot/package/openvmtools/vmtoolsd.service +++ b/buildroot/package/openvmtools/vmtoolsd.service @@ -5,8 +5,8 @@ ConditionVirtualization=vmware [Service] Type=forking -PIDFile=/run/vmtoolsd.pid -ExecStart=/usr/bin/vmtoolsd -b /run/vmtoolsd.pid +PIDFile=/var/run/vmtoolsd.pid +ExecStart=/usr/bin/vmtoolsd -b /var/run/vmtoolsd.pid Restart=on-failure KillMode=process KillSignal=SIGKILL diff --git a/buildroot/package/opkg/Config.in b/buildroot/package/opkg/Config.in index 20f6fa2f5..1f6a39343 100644 --- a/buildroot/package/opkg/Config.in +++ b/buildroot/package/opkg/Config.in @@ -17,7 +17,7 @@ config BR2_PACKAGE_OPKG conforms to a subset of debian's policy manual regarding control files. - http://code.google.com/p/opkg/ + https://code.google.com/archive/p/opkg/ if BR2_PACKAGE_OPKG diff --git a/buildroot/package/oprofile/Config.in b/buildroot/package/oprofile/Config.in index d99a7e60c..cce2cfdab 100644 --- a/buildroot/package/oprofile/Config.in +++ b/buildroot/package/oprofile/Config.in @@ -39,6 +39,8 @@ config BR2_PACKAGE_OPROFILE interrupt handlers, kernel modules, the kernel, shared libraries, and applications. + https://sourceforge.net/projects/oprofile/ + comment "oprofile needs a toolchain w/ C++, wchar" depends on BR2_USE_MMU depends on BR2_PACKAGE_OPROFILE_ARCH_SUPPORTS diff --git a/buildroot/package/oracle-mysql/oracle-mysql.mk b/buildroot/package/oracle-mysql/oracle-mysql.mk index 0275a8428..326fbcc04 100644 --- a/buildroot/package/oracle-mysql/oracle-mysql.mk +++ b/buildroot/package/oracle-mysql/oracle-mysql.mk @@ -9,7 +9,7 @@ ORACLE_MYSQL_VERSION = $(ORACLE_MYSQL_VERSION_MAJOR).73 ORACLE_MYSQL_SOURCE = mysql-$(ORACLE_MYSQL_VERSION).tar.gz ORACLE_MYSQL_SITE = http://dev.mysql.com/get/Downloads/MySQL-$(ORACLE_MYSQL_VERSION_MAJOR) ORACLE_MYSQL_INSTALL_STAGING = YES -ORACLE_MYSQL_DEPENDENCIES = readline ncurses +ORACLE_MYSQL_DEPENDENCIES = ncurses ORACLE_MYSQL_AUTORECONF = YES ORACLE_MYSQL_LICENSE = GPL-2.0 ORACLE_MYSQL_LICENSE_FILES = README COPYING @@ -33,7 +33,7 @@ ORACLE_MYSQL_CONF_OPTS = \ --without-docs \ --without-man \ --without-libedit \ - --without-readline \ + --with-readline \ --with-low-memory \ --enable-thread-safe-client \ --with-unix-socket-path=$(MYSQL_SOCKET) \ diff --git a/buildroot/package/ortp/Config.in b/buildroot/package/ortp/Config.in index 788eaf4bb..052ff1d39 100644 --- a/buildroot/package/ortp/Config.in +++ b/buildroot/package/ortp/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_ORTP help oRTP, a Real-time Transport Protocol (RTP,RFC3550) library - http://www.linphone.org/eng/documentation/dev/ortp.html + https://www.linphone.org/technical-corner/ortp comment "ortp needs a toolchain w/ C++, threads" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/buildroot/package/pcmanfm/pcmanfm.mk b/buildroot/package/pcmanfm/pcmanfm.mk index 6dadfaeeb..5d8730984 100644 --- a/buildroot/package/pcmanfm/pcmanfm.mk +++ b/buildroot/package/pcmanfm/pcmanfm.mk @@ -7,9 +7,10 @@ PCMANFM_VERSION = 1.3.0 PCMANFM_SOURCE = pcmanfm-$(PCMANFM_VERSION).tar.xz PCMANFM_SITE = http://sourceforge.net/projects/pcmanfm/files -PCMANFM_DEPENDENCIES = libglib2 menu-cache libfm +PCMANFM_DEPENDENCIES = libglib2 menu-cache libfm $(TARGET_NLS_DEPENDENCIES) PCMANFM_LICENSE = GPL-2.0+ PCMANFM_LICENSE_FILES = COPYING +PCMANFM_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) PCMANFM_CONF_OPTS += --with-gtk=3 diff --git a/buildroot/package/perl-gdgraph/perl-gdgraph.hash b/buildroot/package/perl-gdgraph/perl-gdgraph.hash index ea994519d..c0b195eb2 100644 --- a/buildroot/package/perl-gdgraph/perl-gdgraph.hash +++ b/buildroot/package/perl-gdgraph/perl-gdgraph.hash @@ -2,5 +2,6 @@ md5 38c6a188519e6272e9b2b722b315c3d8 GDGraph-1.54.tar.gz sha256 b96f5c10b656c17d16ab65a1777c908297b028d3b6815f6d54b2337f006bfa4f GDGraph-1.54.tar.gz -# computed by scancpan +# Hash for license files sha256 710484e3a1196664bbe8a5ad5d53c528e01226eb20e2885a4e1131eb6c6565cd Dustismo.LICENSE +sha256 f44630ad9101e40a101d906a07908c975a9b0742273cfb0c00a51d73afb53e7d README diff --git a/buildroot/package/perl-gdgraph/perl-gdgraph.mk b/buildroot/package/perl-gdgraph/perl-gdgraph.mk index 284dc9dc2..286902a66 100644 --- a/buildroot/package/perl-gdgraph/perl-gdgraph.mk +++ b/buildroot/package/perl-gdgraph/perl-gdgraph.mk @@ -7,8 +7,8 @@ PERL_GDGRAPH_VERSION = 1.54 PERL_GDGRAPH_SOURCE = GDGraph-$(PERL_GDGRAPH_VERSION).tar.gz PERL_GDGRAPH_SITE = $(BR2_CPAN_MIRROR)/authors/id/R/RU/RUZ -PERL_GDGRAPH_LICENSE = Artistic or GPL-1.0+ -PERL_GDGRAPH_LICENSE_FILES = Dustismo.LICENSE +PERL_GDGRAPH_LICENSE = Artistic or GPL-1.0+ (perl module), GPL-2.0+ (font) +PERL_GDGRAPH_LICENSE_FILES = Dustismo.LICENSE README PERL_GDGRAPH_DISTNAME = GDGraph $(eval $(perl-package)) diff --git a/buildroot/package/perl-gdtextutil/perl-gdtextutil.hash b/buildroot/package/perl-gdtextutil/perl-gdtextutil.hash index f0e947f63..add0717f1 100644 --- a/buildroot/package/perl-gdtextutil/perl-gdtextutil.hash +++ b/buildroot/package/perl-gdtextutil/perl-gdtextutil.hash @@ -2,5 +2,6 @@ md5 941ad06eadc86b47f3a32da405665c41 GDTextUtil-0.86.tar.gz sha256 886ecbf85cfe94f4135ee5689c4847a9ae783ecb99e6759e12c734f2dd6116bc GDTextUtil-0.86.tar.gz -# computed by scancpan +# Hash for license files sha256 710484e3a1196664bbe8a5ad5d53c528e01226eb20e2885a4e1131eb6c6565cd Dustismo.LICENSE +sha256 93ca7dd7f372c79e8ec1f849f2a418a67d195e4027c1b3e3dd8444fb30f3e97c README diff --git a/buildroot/package/perl-gdtextutil/perl-gdtextutil.mk b/buildroot/package/perl-gdtextutil/perl-gdtextutil.mk index cd1617fbb..f91d9e9eb 100644 --- a/buildroot/package/perl-gdtextutil/perl-gdtextutil.mk +++ b/buildroot/package/perl-gdtextutil/perl-gdtextutil.mk @@ -7,7 +7,8 @@ PERL_GDTEXTUTIL_VERSION = 0.86 PERL_GDTEXTUTIL_SOURCE = GDTextUtil-$(PERL_GDTEXTUTIL_VERSION).tar.gz PERL_GDTEXTUTIL_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MV/MVERB -PERL_GDTEXTUTIL_LICENSE_FILES = Dustismo.LICENSE +PERL_GDTEXTUTIL_LICENSE = Artistic or GPL-1.0+ (perl module), GPL-2.0+ (font) +PERL_GDTEXTUTIL_LICENSE_FILES = Dustismo.LICENSE README PERL_GDTEXTUTIL_DISTNAME = GDTextUtil $(eval $(perl-package)) diff --git a/buildroot/package/php/php.hash b/buildroot/package/php/php.hash index d88433e8c..11ce10959 100644 --- a/buildroot/package/php/php.hash +++ b/buildroot/package/php/php.hash @@ -1,5 +1,5 @@ # From http://php.net/downloads.php -sha256 fefc8967daa30ebc375b2ab2857f97da94ca81921b722ddac86b29e15c54a164 php-7.3.6.tar.xz +sha256 aafe5e9861ad828860c6af8c88cdc1488314785962328eb1783607c1fdd855df php-7.3.12.tar.xz # License file sha256 f689b8fa63bea7950ce6a21bf52ed88ea0d77673ee76e6de12f51191174d91b8 LICENSE diff --git a/buildroot/package/php/php.mk b/buildroot/package/php/php.mk index 7132f9591..dae1fade2 100644 --- a/buildroot/package/php/php.mk +++ b/buildroot/package/php/php.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_VERSION = 7.3.6 +PHP_VERSION = 7.3.12 PHP_SITE = http://www.php.net/distributions PHP_SOURCE = php-$(PHP_VERSION).tar.xz PHP_INSTALL_STAGING = YES diff --git a/buildroot/package/pigpio/pigpio.mk b/buildroot/package/pigpio/pigpio.mk index 3071036db..461ca0440 100644 --- a/buildroot/package/pigpio/pigpio.mk +++ b/buildroot/package/pigpio/pigpio.mk @@ -8,6 +8,7 @@ PIGPIO_VERSION = V68 PIGPIO_SITE = $(call github,joan2937,pigpio,$(PIGPIO_VERSION)) PIGPIO_LICENSE = Unlicense PIGPIO_LICENSE_FILES = UNLICENCE +PIGPIO_INSTALL_STAGING = YES define PIGPIO_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) @@ -22,4 +23,13 @@ define PIGPIO_INSTALL_TARGET_CMDS $(INSTALL) -D -m 0755 $(@D)/libpigpiod_if2.so $(TARGET_DIR)/usr/lib/libpigpiod_if2.so endef +define PIGPIO_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 0755 $(@D)/libpigpio.so $(STAGING_DIR)/usr/lib/libpigpio.so + $(INSTALL) -D -m 0755 $(@D)/libpigpiod_if.so $(STAGING_DIR)/usr/lib/libpigpiod_if.so + $(INSTALL) -D -m 0755 $(@D)/libpigpiod_if2.so $(STAGING_DIR)/usr/lib/libpigpiod_if2.so + $(INSTALL) -D -m 0644 $(@D)/pigpio.h $(STAGING_DIR)/usr/include/pigpio.h + $(INSTALL) -D -m 0644 $(@D)/pigpiod_if.h $(STAGING_DIR)/usr/include/pigpiod_if.h + $(INSTALL) -D -m 0644 $(@D)/pigpiod_if2.h $(STAGING_DIR)/usr/include/pigpiod_if2.h +endef + $(eval $(generic-package)) diff --git a/buildroot/package/pkg-generic.mk b/buildroot/package/pkg-generic.mk index cbe885aaa..1ac7f7877 100644 --- a/buildroot/package/pkg-generic.mk +++ b/buildroot/package/pkg-generic.mk @@ -184,7 +184,7 @@ $(BUILD_DIR)/%/.stamp_rsynced: @mkdir -p $(@D) $(foreach hook,$($(PKG)_PRE_RSYNC_HOOKS),$(call $(hook))$(sep)) @test -d $(SRCDIR) || (echo "ERROR: $(SRCDIR) does not exist" ; exit 1) - rsync -au --chmod=u=rwX,go=rX $(RSYNC_VCS_EXCLUSIONS) $($(PKG)_OVERRIDE_SRCDIR_RSYNC_EXCLUSIONS) $(call qstrip,$(SRCDIR))/ $(@D) + rsync -au --chmod=u=rwX,go=rX $($(PKG)_OVERRIDE_SRCDIR_RSYNC_EXCLUSIONS) $(RSYNC_VCS_EXCLUSIONS) $(call qstrip,$(SRCDIR))/ $(@D) $(foreach hook,$($(PKG)_POST_RSYNC_HOOKS),$(call $(hook))$(sep)) @$(call step_end,rsync) $(Q)touch $@ @@ -521,7 +521,7 @@ $(2)_ALL_DOWNLOADS = \ $$(if $$($(2)_SOURCE),$$($(2)_SITE_METHOD)+$$($(2)_SITE)/$$($(2)_SOURCE)) \ $$(foreach p,$$($(2)_PATCH) $$($(2)_EXTRA_DOWNLOADS),\ $$(if $$(findstring ://,$$(p)),$$(p),\ - $$($(2)_SITE)/$$(p))) + $$($(2)_SITE_METHOD)+$$($(2)_SITE)/$$(p))) ifndef $(2)_SITE ifdef $(3)_SITE @@ -538,6 +538,12 @@ ifndef $(2)_SITE_METHOD endif endif +ifndef $(2)_DL_OPTS + ifdef $(3)_DL_OPTS + $(2)_DL_OPTS = $$($(3)_DL_OPTS) + endif +endif + ifneq ($$(filter bzr cvs hg svn,$$($(2)_SITE_METHOD)),) BR_NO_CHECK_HASH_FOR += $$($(2)_SOURCE) endif @@ -1037,6 +1043,7 @@ PACKAGES_USERS += $$($(2)_USERS)$$(sep) endif TARGET_FINALIZE_HOOKS += $$($(2)_TARGET_FINALIZE_HOOKS) ROOTFS_PRE_CMD_HOOKS += $$($(2)_ROOTFS_PRE_CMD_HOOKS) +KEEP_PYTHON_PY_FILES += $$($(2)_KEEP_PY_FILES) ifeq ($$($(2)_SITE_METHOD),svn) DL_TOOLS_DEPENDENCIES += svn diff --git a/buildroot/package/pkg-kconfig.mk b/buildroot/package/pkg-kconfig.mk index d62be0fd0..a79578135 100644 --- a/buildroot/package/pkg-kconfig.mk +++ b/buildroot/package/pkg-kconfig.mk @@ -159,7 +159,7 @@ $$($(2)_TARGET_CONFIGURE): $$($(2)_DIR)/.stamp_kconfig_fixup_done $(1)-clean-for-reconfigure: $(1)-clean-kconfig-for-reconfigure $(1)-clean-kconfig-for-reconfigure: - rm -f $$($(2)_DIR)/.stamp_kconfig_fixup_done + rm -f $$($(2)_DIR)/$$($(2)_KCONFIG_STAMP_DOTCONFIG) # Only enable the foo-*config targets when the package is actually enabled. # Note: the variable $(2)_KCONFIG_VAR is not related to the kconfig diff --git a/buildroot/package/postgresql/Config.in b/buildroot/package/postgresql/Config.in index e548d3cb2..2f677daf5 100644 --- a/buildroot/package/postgresql/Config.in +++ b/buildroot/package/postgresql/Config.in @@ -11,7 +11,7 @@ config BR2_PACKAGE_POSTGRESQL database system. Enable the readline package to gain readline support in - pgsql (the command line interpreter), which offers + psql (the command line interpreter), which offers command history and edit functions. Enable the zlib package to gain builtin compression for diff --git a/buildroot/package/postgresql/postgresql.hash b/buildroot/package/postgresql/postgresql.hash index ba6e02d4d..4c78ad68b 100644 --- a/buildroot/package/postgresql/postgresql.hash +++ b/buildroot/package/postgresql/postgresql.hash @@ -1,7 +1,7 @@ -# From https://ftp.postgresql.org/pub/source/v11.3/postgresql-11.3.tar.bz2.md5 -md5 c2a729b754b8de86a969c86ec25db076 postgresql-11.3.tar.bz2 -# From https://ftp.postgresql.org/pub/source/v11.3/postgresql-11.3.tar.bz2.sha256 -sha256 2a85e082fc225944821dfd23990e32dfcd2284c19060864b0ad4ca537d30522d postgresql-11.3.tar.bz2 +# From https://ftp.postgresql.org/pub/source/v11.6/postgresql-11.6.tar.bz2.md5 +md5 8e3462b342caf6f2265126674dde26da postgresql-11.6.tar.bz2 +# From https://ftp.postgresql.org/pub/source/v11.6/postgresql-11.6.tar.bz2.sha256 +sha256 49924f7ff92965fdb20c86e0696f2dc9f8553e1563124ead7beedf8910c13170 postgresql-11.6.tar.bz2 # License file, Locally calculated sha256 c4c86d683970b22b9fab53320ee1b3a30ef4e8223122b4fb6be53ea62ecee8b3 COPYRIGHT diff --git a/buildroot/package/postgresql/postgresql.mk b/buildroot/package/postgresql/postgresql.mk index e6e34f5c7..4209cde34 100644 --- a/buildroot/package/postgresql/postgresql.mk +++ b/buildroot/package/postgresql/postgresql.mk @@ -4,9 +4,9 @@ # ################################################################################ -POSTGRESQL_VERSION = 11.3 +POSTGRESQL_VERSION = 11.6 POSTGRESQL_SOURCE = postgresql-$(POSTGRESQL_VERSION).tar.bz2 -POSTGRESQL_SITE = http://ftp.postgresql.org/pub/source/v$(POSTGRESQL_VERSION) +POSTGRESQL_SITE = https://ftp.postgresql.org/pub/source/v$(POSTGRESQL_VERSION) POSTGRESQL_LICENSE = PostgreSQL POSTGRESQL_LICENSE_FILES = COPYRIGHT POSTGRESQL_INSTALL_STAGING = YES diff --git a/buildroot/package/prboom/0002-configure-remove-predefined-O2-optimization-flag.patch b/buildroot/package/prboom/0002-configure-remove-predefined-O2-optimization-flag.patch new file mode 100644 index 000000000..9260cb631 --- /dev/null +++ b/buildroot/package/prboom/0002-configure-remove-predefined-O2-optimization-flag.patch @@ -0,0 +1,21 @@ +configure: remove predefined -O2 optimization flag + +CFLAGS_OPT variable forces to use -O2 optimization flag denying the +possibility to use different optimization flag values. + +Remove -O2 flag from CFLAGS_OPT. + +Signed-off-by: Giulio Benetti +--- +diff -urpN prboom-2.5.0.orig/configure.ac prboom-2.5.0/configure.ac +--- prboom-2.5.0.orig/configure.ac 2019-06-20 14:07:45.058481879 +0200 ++++ prboom-2.5.0/configure.ac 2019-06-20 14:09:05.066238825 +0200 +@@ -48,7 +48,7 @@ else + fi + + dnl --- cph: work out flags to pass to compiler +-CFLAGS_OPT="-O2 -fomit-frame-pointer" ++CFLAGS_OPT="-fomit-frame-pointer" + AC_C_COMPILE_FLAGS(-Wall) + dnl --- Option to enable debugging + AC_ARG_ENABLE(debug,AC_HELP_STRING([--enable-debug],[turns on various debugging features, like range checking and internal heap diagnostics]),,enable_debug="no") diff --git a/buildroot/package/prboom/prboom.mk b/buildroot/package/prboom/prboom.mk index d370ae3fa..36692d29a 100644 --- a/buildroot/package/prboom/prboom.mk +++ b/buildroot/package/prboom/prboom.mk @@ -10,6 +10,15 @@ PRBOOM_CONF_ENV = ac_cv_type_uid_t=yes PRBOOM_DEPENDENCIES = sdl sdl_net sdl_mixer PRBOOM_LICENSE = GPL-2.0+ PRBOOM_LICENSE_FILES = COPYING +PRBOOM_AUTORECONF = YES + +PRBOOM_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y) +PRBOOM_CFLAGS += -O0 +endif + +PRBOOM_CONF_ENV += CFLAGS="$(PRBOOM_CFLAGS)" ifeq ($(BR2_PACKAGE_LIBPNG),y) PRBOOM_DEPENDENCIES += libpng diff --git a/buildroot/package/proftpd/0002-fix-CVE-2019-12815.patch b/buildroot/package/proftpd/0002-fix-CVE-2019-12815.patch new file mode 100644 index 000000000..8b56d0886 --- /dev/null +++ b/buildroot/package/proftpd/0002-fix-CVE-2019-12815.patch @@ -0,0 +1,382 @@ +From 71cd49ea82313f78d52a52d0c628a3770dc96608 Mon Sep 17 00:00:00 2001 +From: TJ Saunders +Date: Wed, 17 Jul 2019 09:25:31 -0700 +Subject: [PATCH] Bug #4372: Ensure that mod_copy checks for for its + SITE CPFR/CPTO commands. + +https://tbspace.de/cve201912815proftpd.html + +Downloaded from upstream commit +https://github.com/proftpd/proftpd/commit/d19dd64161936d70c0a1544bd2c8e90850f4b7ae + +Signed-off-by: Bernd Kuhls +--- + contrib/mod_copy.c | 36 ++- + tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm | 253 +++++++++++++++++- + 2 files changed, 285 insertions(+), 4 deletions(-) + +diff --git a/contrib/mod_copy.c b/contrib/mod_copy.c +index 26b72a91d..c8672c40d 100644 +--- a/contrib/mod_copy.c ++++ b/contrib/mod_copy.c +@@ -1,7 +1,7 @@ + /* + * ProFTPD: mod_copy -- a module supporting copying of files on the server + * without transferring the data to the client and back +- * Copyright (c) 2009-2016 TJ Saunders ++ * Copyright (c) 2009-2019 TJ Saunders + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by +@@ -657,7 +657,7 @@ MODRET copy_copy(cmd_rec *cmd) { + MODRET copy_cpfr(cmd_rec *cmd) { + register unsigned int i; + int res; +- char *path = ""; ++ char *cmd_name, *path = ""; + unsigned char *authenticated = NULL; + + if (copy_engine == FALSE) { +@@ -705,6 +705,21 @@ MODRET copy_cpfr(cmd_rec *cmd) { + path = pstrcat(cmd->tmp_pool, path, *path ? " " : "", decoded_path, NULL); + } + ++ cmd_name = cmd->argv[0]; ++ pr_cmd_set_name(cmd, "SITE_CPFR"); ++ if (!dir_check(cmd->tmp_pool, cmd, G_READ, path, NULL)) { ++ int xerrno = EPERM; ++ ++ pr_cmd_set_name(cmd, cmd_name); ++ pr_response_add_err(R_550, "%s: %s", (char *) cmd->argv[3], ++ strerror(xerrno)); ++ ++ pr_cmd_set_errno(cmd, xerrno); ++ errno = xerrno; ++ return PR_ERROR(cmd); ++ } ++ pr_cmd_set_name(cmd, cmd_name); ++ + res = pr_filter_allow_path(CURRENT_CONF, path); + switch (res) { + case 0: +@@ -758,6 +773,7 @@ MODRET copy_cpfr(cmd_rec *cmd) { + MODRET copy_cpto(cmd_rec *cmd) { + register unsigned int i; + const char *from, *to = ""; ++ char *cmd_name; + unsigned char *authenticated = NULL; + + if (copy_engine == FALSE) { +@@ -816,6 +832,20 @@ MODRET copy_cpto(cmd_rec *cmd) { + + to = dir_canonical_vpath(cmd->tmp_pool, to); + ++ cmd_name = cmd->argv[0]; ++ pr_cmd_set_name(cmd, "SITE_CPTO"); ++ if (!dir_check(cmd->tmp_pool, cmd, G_WRITE, to, NULL)) { ++ int xerrno = EPERM; ++ ++ pr_cmd_set_name(cmd, cmd_name); ++ pr_response_add_err(R_550, "%s: %s", to, strerror(xerrno)); ++ ++ pr_cmd_set_errno(cmd, xerrno); ++ errno = xerrno; ++ return PR_ERROR(cmd); ++ } ++ pr_cmd_set_name(cmd, cmd_name); ++ + if (copy_paths(cmd->tmp_pool, from, to) < 0) { + int xerrno = errno; + const char *err_code = R_550; +@@ -940,7 +970,7 @@ static conftable copy_conftab[] = { + + static cmdtable copy_cmdtab[] = { + { CMD, C_SITE, G_WRITE, copy_copy, FALSE, FALSE, CL_MISC }, +- { CMD, C_SITE, G_DIRS, copy_cpfr, FALSE, FALSE, CL_MISC }, ++ { CMD, C_SITE, G_READ, copy_cpfr, FALSE, FALSE, CL_MISC }, + { CMD, C_SITE, G_WRITE, copy_cpto, FALSE, FALSE, CL_MISC }, + { POST_CMD, C_PASS, G_NONE, copy_post_pass, FALSE, FALSE }, + { LOG_CMD, C_SITE, G_NONE, copy_log_site, FALSE, FALSE }, +diff --git a/tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm b/tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm +index 778bff839..2018e71bc 100644 +--- a/tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm ++++ b/tests/t/lib/ProFTPD/Tests/Modules/mod_copy.pm +@@ -121,6 +121,15 @@ my $TESTS = { + test_class => [qw(bug forking)], + }, + ++ copy_cpfr_config_limit_read_bug4372 => { ++ order => ++$order, ++ test_class => [qw(bug forking)], ++ }, ++ ++ copy_cpto_config_limit_write_bug4372 => { ++ order => ++$order, ++ test_class => [qw(bug forking)], ++ }, + }; + + sub new { +@@ -3248,6 +3257,12 @@ sub copy_config_limit_bug3399 { + + my ($port, $config_user, $config_group) = config_write($config_file, $config); + ++ my $config_subdir = $sub_dir; ++ if ($^O eq 'darwin') { ++ # MacOSX hack ++ $config_subdir = '/private' . $sub_dir; ++ } ++ + if (open(my $fh, ">> $config_file")) { + print $fh < +@@ -3256,7 +3271,7 @@ sub copy_config_limit_bug3399 { + + + +- ++ + + AllowAll + +@@ -3652,4 +3667,240 @@ sub copy_cpto_timeout_bug4263 { + test_cleanup($setup->{log_file}, $ex); + } + ++sub copy_cpfr_config_limit_read_bug4372 { ++ my $self = shift; ++ my $tmpdir = $self->{tmpdir}; ++ my $setup = test_setup($tmpdir, 'copy'); ++ ++ my $src_file = File::Spec->rel2abs("$tmpdir/foo.dat"); ++ if (open(my $fh, "> $src_file")) { ++ unless (close($fh)) { ++ die("Can't write $src_file: $!"); ++ } ++ ++ } else { ++ die("Can't open $src_file: $!"); ++ } ++ ++ my $config = { ++ PidFile => $setup->{pid_file}, ++ ScoreboardFile => $setup->{scoreboard_file}, ++ SystemLog => $setup->{log_file}, ++ TraceLog => $setup->{log_file}, ++ Trace => 'copy:20 timer:20', ++ ++ AuthUserFile => $setup->{auth_user_file}, ++ AuthGroupFile => $setup->{auth_group_file}, ++ TimeoutIdle => 3, ++ ++ IfModules => { ++ 'mod_delay.c' => { ++ DelayEngine => 'off', ++ }, ++ }, ++ }; ++ ++ my ($port, $config_user, $config_group) = config_write($setup->{config_file}, ++ $config); ++ ++ if (open(my $fh, ">> $setup->{config_file}")) { ++ print $fh < ++ ++ DenyAll ++ ++ ++EOC ++ unless (close($fh)) { ++ die("Can't write $setup->{config_file}: $!"); ++ } ++ ++ } else { ++ die("Can't open $setup->{config_file}: $!"); ++ } ++ ++ # Open pipes, for use between the parent and child processes. Specifically, ++ # the child will indicate when it's done with its test by writing a message ++ # to the parent. ++ my ($rfh, $wfh); ++ unless (pipe($rfh, $wfh)) { ++ die("Can't open pipe: $!"); ++ } ++ ++ my $ex; ++ ++ # Fork child ++ $self->handle_sigchld(); ++ defined(my $pid = fork()) or die("Can't fork: $!"); ++ if ($pid) { ++ eval { ++ my $client = ProFTPD::TestSuite::FTP->new('127.0.0.1', $port, 0, 1); ++ $client->login($setup->{user}, $setup->{passwd}); ++ ++ eval { $client->site('CPFR', 'foo.dat') }; ++ unless ($@) { ++ die("SITE CPFR succeeded unexpectedly"); ++ } ++ ++ my $resp_code = $client->response_code(); ++ my $resp_msg = $client->response_msg(); ++ ++ my $expected = 550; ++ $self->assert($expected == $resp_code, ++ test_msg("Expected response code $expected, got $resp_code")); ++ ++ $expected = 'Operation not permitted'; ++ $self->assert(qr/$expected/, $resp_msg, ++ test_msg("Expected response message '$expected', got '$resp_msg'")); ++ ++ $client->quit(); ++ }; ++ if ($@) { ++ $ex = $@; ++ } ++ ++ $wfh->print("done\n"); ++ $wfh->flush(); ++ ++ } else { ++ eval { server_wait($setup->{config_file}, $rfh, 30) }; ++ if ($@) { ++ warn($@); ++ exit 1; ++ } ++ ++ exit 0; ++ } ++ ++ # Stop server ++ server_stop($setup->{pid_file}); ++ $self->assert_child_ok($pid); ++ ++ test_cleanup($setup->{log_file}, $ex); ++} ++ ++sub copy_cpto_config_limit_write_bug4372 { ++ my $self = shift; ++ my $tmpdir = $self->{tmpdir}; ++ my $setup = test_setup($tmpdir, 'copy'); ++ ++ my $src_file = File::Spec->rel2abs("$tmpdir/foo.dat"); ++ if (open(my $fh, "> $src_file")) { ++ unless (close($fh)) { ++ die("Can't write $src_file: $!"); ++ } ++ ++ } else { ++ die("Can't open $src_file: $!"); ++ } ++ ++ my $dst_file = File::Spec->rel2abs("$tmpdir/bar.dat"); ++ ++ my $config = { ++ PidFile => $setup->{pid_file}, ++ ScoreboardFile => $setup->{scoreboard_file}, ++ SystemLog => $setup->{log_file}, ++ TraceLog => $setup->{log_file}, ++ Trace => 'copy:20 timer:20', ++ ++ AuthUserFile => $setup->{auth_user_file}, ++ AuthGroupFile => $setup->{auth_group_file}, ++ TimeoutIdle => 3, ++ ++ IfModules => { ++ 'mod_delay.c' => { ++ DelayEngine => 'off', ++ }, ++ }, ++ }; ++ ++ my ($port, $config_user, $config_group) = config_write($setup->{config_file}, ++ $config); ++ ++ if (open(my $fh, ">> $setup->{config_file}")) { ++ print $fh < ++ ++ DenyAll ++ ++ ++EOC ++ unless (close($fh)) { ++ die("Can't write $setup->{config_file}: $!"); ++ } ++ ++ } else { ++ die("Can't open $setup->{config_file}: $!"); ++ } ++ ++ # Open pipes, for use between the parent and child processes. Specifically, ++ # the child will indicate when it's done with its test by writing a message ++ # to the parent. ++ my ($rfh, $wfh); ++ unless (pipe($rfh, $wfh)) { ++ die("Can't open pipe: $!"); ++ } ++ ++ my $ex; ++ ++ # Fork child ++ $self->handle_sigchld(); ++ defined(my $pid = fork()) or die("Can't fork: $!"); ++ if ($pid) { ++ eval { ++ my $client = ProFTPD::TestSuite::FTP->new('127.0.0.1', $port, 0, 1); ++ $client->login($setup->{user}, $setup->{passwd}); ++ ++ my ($resp_code, $resp_msg) = $client->site('CPFR', 'foo.dat'); ++ ++ my $expected = 350; ++ $self->assert($expected == $resp_code, ++ test_msg("Expected response code $expected, got $resp_code")); ++ ++ $expected = 'File or directory exists, ready for destination name'; ++ $self->assert($expected eq $resp_msg, ++ test_msg("Expected response message '$expected', got '$resp_msg'")); ++ ++ eval { $client->site('CPTO', 'bar.dat') }; ++ unless ($@) { ++ die('SITE CPTO succeeded unexpectedly'); ++ } ++ ++ my $resp_code = $client->response_code(); ++ my $resp_msg = $client->response_msg(); ++ ++ my $expected = 550; ++ $self->assert($expected == $resp_code, ++ test_msg("Expected response code $expected, got $resp_code")); ++ ++ $expected = 'Operation not permitted'; ++ $self->assert(qr/$expected/, $resp_msg, ++ test_msg("Expected response message '$expected', got '$resp_msg'")); ++ ++ $client->quit(); ++ }; ++ if ($@) { ++ $ex = $@; ++ } ++ ++ $wfh->print("done\n"); ++ $wfh->flush(); ++ ++ } else { ++ eval { server_wait($setup->{config_file}, $rfh, 30) }; ++ if ($@) { ++ warn($@); ++ exit 1; ++ } ++ ++ exit 0; ++ } ++ ++ # Stop server ++ server_stop($setup->{pid_file}); ++ $self->assert_child_ok($pid); ++ ++ test_cleanup($setup->{log_file}, $ex); ++} ++ + 1; diff --git a/buildroot/package/proftpd/proftpd.hash b/buildroot/package/proftpd/proftpd.hash index 537222f01..47bc8fe81 100644 --- a/buildroot/package/proftpd/proftpd.hash +++ b/buildroot/package/proftpd/proftpd.hash @@ -2,3 +2,4 @@ md5 13270911c42aac842435f18205546a1b proftpd-1.3.6.tar.gz # Locally calculated sha256 91ef74b143495d5ff97c4d4770c6804072a8c8eb1ad1ecc8cc541b40e152ecaf proftpd-1.3.6.tar.gz +sha256 391a473d755c29b5326fb726326ff3c37e42512f53a8f5789fc310232150bf80 COPYING diff --git a/buildroot/package/proj/proj.mk b/buildroot/package/proj/proj.mk index 0b239b2bb..2969eb57a 100644 --- a/buildroot/package/proj/proj.mk +++ b/buildroot/package/proj/proj.mk @@ -10,4 +10,12 @@ PROJ_LICENSE = MIT PROJ_LICENSE_FILES = COPYING PROJ_INSTALL_STAGING = YES +PROJ_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_68485),y) +PROJ_CFLAGS += -O0 +endif + +PROJ_CONF_ENV = CFLAGS="$(PROJ_CFLAGS)" + $(eval $(autotools-package)) diff --git a/buildroot/package/prosody/prosody.hash b/buildroot/package/prosody/prosody.hash index f3f9aa477..d7d1d06ed 100644 --- a/buildroot/package/prosody/prosody.hash +++ b/buildroot/package/prosody/prosody.hash @@ -1,8 +1,8 @@ # Locally computed: -md5 b4529e0cf8e0ee82a2f677e404c3df35 prosody-0.11.2.tar.gz -sha1 0508cfc1c3c74a7eb8fdac2ed50435e190930f6a prosody-0.11.2.tar.gz -sha256 8911f6dc29b9e0c4edf9e61dc23fa22d77bc42c4caf28b809ab843b2f08e4831 prosody-0.11.2.tar.gz -sha512 22e55a551a40c92f38a1ed1de5fdcad574d699d58c2e27f93c3d465b55487b8e923c2ba088daf93c7140cbafb0d429687e0b662c8bb1c1aba4b79ac1ea271cd1 prosody-0.11.2.tar.gz +md5 2cf85cd8f7fc061916d97a169e850a0e prosody-0.11.3.tar.gz +sha1 87ec8039bf297ba9bc4da44b2ba42f4b035e73ca prosody-0.11.3.tar.gz +sha256 cfdabd6f42a9fc5db300221967c518c26bd4b6e62def721c1626894d6325bf87 prosody-0.11.3.tar.gz +sha512 07239433c7c65184ca24d665c92b787ff9e4a5ee190ab90dede802ffd2cbd97855356d818858871e62284e9923f485b3468ab1baed5d3fb13aac0551a38967eb prosody-0.11.3.tar.gz # Hash for license file: sha256 bbbdc1c5426e5944cf869fc0faeaf19d88a220cd2b39ea98b7b8e86b0e88a2ef COPYING diff --git a/buildroot/package/prosody/prosody.mk b/buildroot/package/prosody/prosody.mk index c2111f6b8..05ea3d2e4 100644 --- a/buildroot/package/prosody/prosody.mk +++ b/buildroot/package/prosody/prosody.mk @@ -4,7 +4,7 @@ # ################################################################################ -PROSODY_VERSION = 0.11.2 +PROSODY_VERSION = 0.11.3 PROSODY_SITE = https://prosody.im/downloads/source PROSODY_LICENSE = MIT PROSODY_LICENSE_FILES = COPYING diff --git a/buildroot/package/protobuf/protobuf.mk b/buildroot/package/protobuf/protobuf.mk index 9caf87ed9..919aae5b7 100644 --- a/buildroot/package/protobuf/protobuf.mk +++ b/buildroot/package/protobuf/protobuf.mk @@ -17,6 +17,14 @@ PROTOBUF_LICENSE_FILES = LICENSE PROTOBUF_DEPENDENCIES = host-protobuf PROTOBUF_CONF_OPTS = --with-protoc=$(HOST_DIR)/bin/protoc +PROTOBUF_CXXFLAGS = $(TARGET_CXXFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y) +PROTOBUF_CXXFLAGS += -O0 +endif + +PROTOBUF_CONF_ENV = CXXFLAGS="$(PROTOBUF_CXXFLAGS)" + ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) PROTOBUF_CONF_ENV += LIBS=-latomic endif diff --git a/buildroot/package/psplash/psplash.hash b/buildroot/package/psplash/psplash.hash index 68c6ffa8a..c8865697c 100644 --- a/buildroot/package/psplash/psplash.hash +++ b/buildroot/package/psplash/psplash.hash @@ -1,2 +1,3 @@ # Locally computed sha256 aaddb20ef892dfb03d4e046cc634159bbcdfe555f7291652dde2b7d4cf491289 psplash-5b3c1cc28f5abdc2c33830150b48b278cc4f7bca.tar.gz +sha256 f9c375a1be4a41f7b70301dd83c91cb89e41567478859b77eef375a52d782505 COPYING diff --git a/buildroot/package/psplash/psplash.mk b/buildroot/package/psplash/psplash.mk index fe009785b..4a2e0de5c 100644 --- a/buildroot/package/psplash/psplash.mk +++ b/buildroot/package/psplash/psplash.mk @@ -7,6 +7,7 @@ PSPLASH_VERSION = 5b3c1cc28f5abdc2c33830150b48b278cc4f7bca PSPLASH_SITE = git://git.yoctoproject.org/psplash PSPLASH_LICENSE = GPL-2.0+ +PSPLASH_LICENSE_FILES = COPYING PSPLASH_AUTORECONF = YES define PSPLASH_INSTALL_INIT_SYSTEMD diff --git a/buildroot/package/putty/0001-Fix-compilation-with-NO_GSSAPI.patch b/buildroot/package/putty/0001-Fix-compilation-with-NO_GSSAPI.patch deleted file mode 100644 index 56a29e19d..000000000 --- a/buildroot/package/putty/0001-Fix-compilation-with-NO_GSSAPI.patch +++ /dev/null @@ -1,266 +0,0 @@ -From 7ad08649a223a4cd61e67d8334a147f55c79399d Mon Sep 17 00:00:00 2001 -From: Jacob Nevins -Date: Mon, 25 Mar 2019 23:46:59 +0000 -Subject: [PATCH] Fix compilation with NO_GSSAPI. - -This is a fairly shallow patch, which removes the UI and interactions -with external libraries. Some other machinery (which is dead code in -this configuration) is left in place. - -Adapted by me from a patch by Jeroen Roovers. - -Signed-off-by: Baruch Siach ---- -Upstream status: commit 7ad08649a22 - - config.c | 4 ++++ - settings.c | 12 ++++++++++-- - ssh.c | 16 +++++++++++++++- - ssh2transport.c | 3 +-- - ssh2userauth.c | 8 ++++++-- - sshserver.c | 13 ++++++++++++- - 6 files changed, 48 insertions(+), 8 deletions(-) - -diff --git a/config.c b/config.c -index 9c299feecc21..6528a9696584 100644 ---- a/config.c -+++ b/config.c -@@ -2442,10 +2442,12 @@ void setup_config_box(struct controlbox *b, bool midsession, - HELPCTX(ssh_kexlist), - kexlist_handler, P(NULL)); - c->listbox.height = KEX_MAX; -+#ifndef NO_GSSAPI - ctrl_checkbox(s, "Attempt GSSAPI key exchange", - 'k', HELPCTX(ssh_gssapi), - conf_checkbox_handler, - I(CONF_try_gssapi_kex)); -+#endif - - s = ctrl_getset(b, "Connection/SSH/Kex", "repeat", - "Options controlling key re-exchange"); -@@ -2455,11 +2457,13 @@ void setup_config_box(struct controlbox *b, bool midsession, - conf_editbox_handler, - I(CONF_ssh_rekey_time), - I(-1)); -+#ifndef NO_GSSAPI - ctrl_editbox(s, "Minutes between GSS checks (0 for never)", NO_SHORTCUT, 20, - HELPCTX(ssh_kex_repeat), - conf_editbox_handler, - I(CONF_gssapirekey), - I(-1)); -+#endif - ctrl_editbox(s, "Max data before rekey (0 for no limit)", 'x', 20, - HELPCTX(ssh_kex_repeat), - conf_editbox_handler, -diff --git a/settings.c b/settings.c -index 8d56302677d9..54f5ab7b2919 100644 ---- a/settings.c -+++ b/settings.c -@@ -592,21 +592,25 @@ void save_open_settings(settings_w *sesskey, Conf *conf) - write_setting_b(sesskey, "Compression", conf_get_bool(conf, CONF_compression)); - write_setting_b(sesskey, "TryAgent", conf_get_bool(conf, CONF_tryagent)); - write_setting_b(sesskey, "AgentFwd", conf_get_bool(conf, CONF_agentfwd)); -+#ifndef NO_GSSAPI - write_setting_b(sesskey, "GssapiFwd", conf_get_bool(conf, CONF_gssapifwd)); -+#endif - write_setting_b(sesskey, "ChangeUsername", conf_get_bool(conf, CONF_change_username)); - wprefs(sesskey, "Cipher", ciphernames, CIPHER_MAX, conf, CONF_ssh_cipherlist); - wprefs(sesskey, "KEX", kexnames, KEX_MAX, conf, CONF_ssh_kexlist); - wprefs(sesskey, "HostKey", hknames, HK_MAX, conf, CONF_ssh_hklist); - write_setting_i(sesskey, "RekeyTime", conf_get_int(conf, CONF_ssh_rekey_time)); -+#ifndef NO_GSSAPI - write_setting_i(sesskey, "GssapiRekey", conf_get_int(conf, CONF_gssapirekey)); -+#endif - write_setting_s(sesskey, "RekeyBytes", conf_get_str(conf, CONF_ssh_rekey_data)); - write_setting_b(sesskey, "SshNoAuth", conf_get_bool(conf, CONF_ssh_no_userauth)); - write_setting_b(sesskey, "SshBanner", conf_get_bool(conf, CONF_ssh_show_banner)); - write_setting_b(sesskey, "AuthTIS", conf_get_bool(conf, CONF_try_tis_auth)); - write_setting_b(sesskey, "AuthKI", conf_get_bool(conf, CONF_try_ki_auth)); -+#ifndef NO_GSSAPI - write_setting_b(sesskey, "AuthGSSAPI", conf_get_bool(conf, CONF_try_gssapi_auth)); - write_setting_b(sesskey, "AuthGSSAPIKEX", conf_get_bool(conf, CONF_try_gssapi_kex)); --#ifndef NO_GSSAPI - wprefs(sesskey, "GSSLibs", gsslibkeywords, ngsslibs, conf, CONF_ssh_gsslist); - write_setting_filename(sesskey, "GSSCustom", conf_get_filename(conf, CONF_ssh_gss_custom)); - #endif -@@ -937,7 +941,9 @@ void load_open_settings(settings_r *sesskey, Conf *conf) - gppb(sesskey, "TryAgent", true, conf, CONF_tryagent); - gppb(sesskey, "AgentFwd", false, conf, CONF_agentfwd); - gppb(sesskey, "ChangeUsername", false, conf, CONF_change_username); -+#ifndef NO_GSSAPI - gppb(sesskey, "GssapiFwd", false, conf, CONF_gssapifwd); -+#endif - gprefs(sesskey, "Cipher", "\0", - ciphernames, CIPHER_MAX, conf, CONF_ssh_cipherlist); - { -@@ -990,7 +996,9 @@ void load_open_settings(settings_r *sesskey, Conf *conf) - gprefs(sesskey, "HostKey", "ed25519,ecdsa,rsa,dsa,WARN", - hknames, HK_MAX, conf, CONF_ssh_hklist); - gppi(sesskey, "RekeyTime", 60, conf, CONF_ssh_rekey_time); -+#ifndef NO_GSSAPI - gppi(sesskey, "GssapiRekey", GSS_DEF_REKEY_MINS, conf, CONF_gssapirekey); -+#endif - gpps(sesskey, "RekeyBytes", "1G", conf, CONF_ssh_rekey_data); - { - /* SSH-2 only by default */ -@@ -1007,9 +1015,9 @@ void load_open_settings(settings_r *sesskey, Conf *conf) - gppb(sesskey, "SshBanner", true, conf, CONF_ssh_show_banner); - gppb(sesskey, "AuthTIS", false, conf, CONF_try_tis_auth); - gppb(sesskey, "AuthKI", true, conf, CONF_try_ki_auth); -+#ifndef NO_GSSAPI - gppb(sesskey, "AuthGSSAPI", true, conf, CONF_try_gssapi_auth); - gppb(sesskey, "AuthGSSAPIKEX", true, conf, CONF_try_gssapi_kex); --#ifndef NO_GSSAPI - gprefs(sesskey, "GSSLibs", "\0", - gsslibkeywords, ngsslibs, conf, CONF_ssh_gsslist); - gppfile(sesskey, "GSSCustom", conf, CONF_ssh_gss_custom); -diff --git a/ssh.c b/ssh.c -index e35ebc64e2b5..e8ad61b8085d 100644 ---- a/ssh.c -+++ b/ssh.c -@@ -50,7 +50,9 @@ struct Ssh { - ssh_sharing_state *connshare; - bool attempting_connshare; - -+#ifndef NO_GSSAPI - struct ssh_connection_shared_gss_state gss_state; -+#endif - - char *savedhost; - int savedport; -@@ -252,10 +254,18 @@ static void ssh_got_ssh_version(struct ssh_version_receiver *rcv, - conf_get_bool(ssh->conf, CONF_tryagent), username, - conf_get_bool(ssh->conf, CONF_change_username), - conf_get_bool(ssh->conf, CONF_try_ki_auth), -+#ifndef NO_GSSAPI - conf_get_bool(ssh->conf, CONF_try_gssapi_auth), - conf_get_bool(ssh->conf, CONF_try_gssapi_kex), - conf_get_bool(ssh->conf, CONF_gssapifwd), -- &ssh->gss_state); -+ &ssh->gss_state -+#else -+ false, -+ false, -+ false, -+ NULL -+#endif -+ ); - ssh_connect_ppl(ssh, userauth_layer); - transport_child_layer = userauth_layer; - -@@ -267,7 +277,11 @@ static void ssh_got_ssh_version(struct ssh_version_receiver *rcv, - ssh->fullhostname, - ssh_verstring_get_local(old_bpp), - ssh_verstring_get_remote(old_bpp), -+#ifndef NO_GSSAPI - &ssh->gss_state, -+#else -+ NULL, -+#endif - &ssh->stats, transport_child_layer, false); - ssh_connect_ppl(ssh, ssh->base_layer); - -diff --git a/ssh2transport.c b/ssh2transport.c -index 8640d89d4be4..5e8955a0275f 100644 ---- a/ssh2transport.c -+++ b/ssh2transport.c -@@ -1781,6 +1781,7 @@ static void ssh2_transport_gss_update(struct ssh2_transport_state *s, - if (mins > 0 && s->gss_ctxt_lifetime <= mins * 60) - s->gss_status |= GSS_CTXT_EXPIRES; - } -+#endif /* NO_GSSAPI */ - - ptrlen ssh2_transport_get_session_id(PacketProtocolLayer *ppl) - { -@@ -1805,8 +1806,6 @@ void ssh2_transport_notify_auth_done(PacketProtocolLayer *ppl) - queue_idempotent_callback(&s->ppl.ic_process_queue); - } - --#endif /* NO_GSSAPI */ -- - static bool ssh2_transport_get_specials( - PacketProtocolLayer *ppl, add_special_fn_t add_special, void *ctx) - { -diff --git a/ssh2userauth.c b/ssh2userauth.c -index fc4139230557..7f5a129295ab 100644 ---- a/ssh2userauth.c -+++ b/ssh2userauth.c -@@ -613,8 +613,10 @@ static void ssh2_userauth_process_queue(PacketProtocolLayer *ppl) - * Scan it for method identifiers we know about. - */ - bool srv_pubkey = false, srv_passwd = false; -- bool srv_keyb_inter = false, srv_gssapi = false; -- bool srv_gssapi_keyex_auth = false; -+ bool srv_keyb_inter = false; -+#ifndef NO_GSSAPI -+ bool srv_gssapi = false, srv_gssapi_keyex_auth = false; -+#endif - - for (ptrlen method; get_commasep_word(&methods, &method) ;) { - if (ptrlen_eq_string(method, "publickey")) -@@ -623,10 +625,12 @@ static void ssh2_userauth_process_queue(PacketProtocolLayer *ppl) - srv_passwd = true; - else if (ptrlen_eq_string(method, "keyboard-interactive")) - srv_keyb_inter = true; -+#ifndef NO_GSSAPI - else if (ptrlen_eq_string(method, "gssapi-with-mic")) - srv_gssapi = true; - else if (ptrlen_eq_string(method, "gssapi-keyex")) - srv_gssapi_keyex_auth = true; -+#endif - } - - /* -diff --git a/sshserver.c b/sshserver.c -index 5f6e7ddeeaec..5c34bb356757 100644 ---- a/sshserver.c -+++ b/sshserver.c -@@ -50,7 +50,9 @@ struct server { - PacketProtocolLayer *base_layer; - ConnectionLayer *cl; - -+#ifndef NO_GSSAPI - struct ssh_connection_shared_gss_state gss_state; -+#endif - }; - - static void ssh_server_free_callback(void *vsrv); -@@ -245,9 +247,11 @@ Plug *ssh_server_plug( - bufchain_init(&srv->out_raw); - bufchain_init(&srv->dummy_user_input); - -+#ifndef NO_GSSAPI - /* FIXME: replace with sensible */ - srv->gss_state.libs = snew(struct ssh_gss_liblist); - srv->gss_state.libs->nlibraries = 0; -+#endif - - return &srv->plug; - } -@@ -297,7 +301,9 @@ static void ssh_server_free_callback(void *vsrv) - conf_free(srv->conf); - log_free(srv->logctx); - -+#ifndef NO_GSSAPI - sfree(srv->gss_state.libs); /* FIXME: replace with sensible */ -+#endif - - sfree(srv); - -@@ -442,7 +448,12 @@ static void server_got_ssh_version(struct ssh_version_receiver *rcv, - srv->conf, NULL, 0, NULL, - ssh_verstring_get_remote(old_bpp), - ssh_verstring_get_local(old_bpp), -- &srv->gss_state, &srv->stats, transport_child_layer, true); -+#ifndef NO_GSSAPI -+ &srv->gss_state, -+#else -+ NULL, -+#endif -+ &srv->stats, transport_child_layer, true); - ssh2_transport_provide_hostkeys( - srv->base_layer, srv->hostkeys, srv->nhostkeys); - if (userauth_layer) --- -2.20.1 - diff --git a/buildroot/package/putty/0002-unix-uxpoll-need-_XOPEN_SOURCE.patch b/buildroot/package/putty/0002-unix-uxpoll-need-_XOPEN_SOURCE.patch deleted file mode 100644 index fb4b6c26e..000000000 --- a/buildroot/package/putty/0002-unix-uxpoll-need-_XOPEN_SOURCE.patch +++ /dev/null @@ -1,39 +0,0 @@ -From c1b9d07d39e33e40d2ad04be176367cf48271cfd Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Tue, 26 Mar 2019 20:00:45 +0200 -Subject: [PATCH] unix/uxpoll: need _XOPEN_SOURCE -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The code needs _XOPEN_SOURCE for some poll() flags. - -Fix this build failure with uClibc: - -./../unix/uxpoll.c: In function ‘pollwrap_add_fd_rwx’: -./../unix/uxpoll.c:75:32: error: ‘POLLRDNORM’ undeclared (first use in this function); did you mean ‘POLLNVAL’? - #define SELECT_R_IN (POLLIN | POLLRDNORM | POLLRDBAND) - ^ -./../unix/uxpoll.c:87:19: note: in expansion of macro ‘SELECT_R_IN’ - events |= SELECT_R_IN; - ^~~~~~~~~~~ - -Signed-off-by: Baruch Siach ---- -Upstream status: issue reported to upstream developers - - unix/uxpoll.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/unix/uxpoll.c b/unix/uxpoll.c -index bbc5490d125d..6fe6ac7ba0c1 100644 ---- a/unix/uxpoll.c -+++ b/unix/uxpoll.c -@@ -1,3 +1,4 @@ -+#define _XOPEN_SOURCE - #include - - #include "putty.h" --- -2.20.1 - diff --git a/buildroot/package/putty/0003-Fix-uClibc-build-issues.patch b/buildroot/package/putty/0003-Fix-uClibc-build-issues.patch deleted file mode 100644 index ceefded97..000000000 --- a/buildroot/package/putty/0003-Fix-uClibc-build-issues.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 0554cfbb926a2ba26efda08865b270af8536e0bb Mon Sep 17 00:00:00 2001 -From: Simon Tatham -Date: Tue, 26 Mar 2019 20:03:09 +0200 -Subject: [PATCH] Fix uClibc build issues -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fix two uClibc build failures. - -Missing sys/auxv.h header: - -./../unix/uxutils.c:5:10: fatal error: sys/auxv.h: No such file or directory - #include - ^~~~~~~~~~~~ - -Missing futimes() implementation: - -./../unix/uxsftpserver.c: In function ‘uss_fsetstat’: -./../unix/uxsftpserver.c:441:25: warning: implicit declaration of function ‘futimes’; did you mean ‘lutimes’? [-Wimplicit-function-declaration] - #define FD_PREFIX(func) f ## func - ^ -./../unix/uxsftpserver.c:435:17: note: in expansion of macro ‘FD_PREFIX’ - if (api_prefix(utimes)(api_arg, tv) < 0) \ - ^~~~~~~~~~ -./../unix/uxsftpserver.c:470:5: note: in expansion of macro ‘SETSTAT_GUTS’ - SETSTAT_GUTS(FD_PREFIX, fd, attrs, success); - ^~~~~~~~~~~~ - -unix/uxsftpserver.o: In function `uss_fsetstat': -uxsftpserver.c:(.text+0x1058): undefined reference to `futimes' - -Signed-off-by: Baruch Siach ---- -Upstream status: patch suggested by upstream developer Simon Tatham - - configure.ac | 3 ++- - unix/uxsftpserver.c | 10 ++++++++++ - unix/uxutils.c | 3 ++- - 3 files changed, 14 insertions(+), 2 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 35552ed24dbe..1949ef62f219 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -173,8 +173,9 @@ AC_CHECK_LIB(X11, XOpenDisplay, - [GTK_LIBS="-lX11 $GTK_LIBS" - AC_DEFINE([HAVE_LIBX11],[],[Define if libX11.a is available])]) - --AC_CHECK_FUNCS([getaddrinfo posix_openpt ptsname setresuid strsignal updwtmpx fstatat dirfd]) -+AC_CHECK_FUNCS([getaddrinfo posix_openpt ptsname setresuid strsignal updwtmpx fstatat dirfd futimes]) - AC_CHECK_DECLS([CLOCK_MONOTONIC], [], [], [[#include ]]) -+AC_CHECK_HEADERS([sys/auxv.h asm/hwcap.h]) - AC_SEARCH_LIBS([clock_gettime], [rt], [AC_DEFINE([HAVE_CLOCK_GETTIME],[],[Define if clock_gettime() is available])]) - - AC_CACHE_CHECK([for SO_PEERCRED and dependencies], [x_cv_linux_so_peercred], [ -diff --git a/unix/uxsftpserver.c b/unix/uxsftpserver.c -index 6fab0ba090d6..a90344e04219 100644 ---- a/unix/uxsftpserver.c -+++ b/unix/uxsftpserver.c -@@ -412,6 +412,16 @@ static void uss_fstat(SftpServer *srv, SftpReplyBuilder *reply, - } - } - -+#if !HAVE_FUTIMES -+static inline int futimes(int fd, const struct timeval tv[2]) -+{ -+ /* If the OS doesn't support futimes(3) then we have to pretend it -+ * always returns failure */ -+ errno = EINVAL; -+ return -1; -+} -+#endif -+ - /* - * The guts of setstat and fsetstat, macroised so that they can call - * fchown(fd,...) or chown(path,...) depending on parameters. -diff --git a/unix/uxutils.c b/unix/uxutils.c -index fcbcc4d422c1..f01bc2c14a2d 100644 ---- a/unix/uxutils.c -+++ b/unix/uxutils.c -@@ -1,6 +1,7 @@ - #include "ssh.h" - --#if defined __linux__ && (defined __arm__ || defined __aarch64__) -+#if defined __linux__ && (defined __arm__ || defined __aarch64__) && \ -+ HAVE_SYS_AUXV_H && HAVE_ASM_HWCAP_H - - #include - #include --- -2.20.1 - diff --git a/buildroot/package/putty/putty.hash b/buildroot/package/putty/putty.hash index 30f51848f..8600281ef 100644 --- a/buildroot/package/putty/putty.hash +++ b/buildroot/package/putty/putty.hash @@ -1,6 +1,7 @@ -# Hashes from: http://the.earth.li/~sgtatham/putty/0.71/{sha256,sha512}sums -sha256 2f931ce2f89780cc8ca7bbed90fcd22c44515d2773f5fa954069e209b48ec6b8 putty-0.71.tar.gz -sha512 f8791210bd5925b26d51b13f0558eea15dbac40808051165b236d6436226f5c2b0aa7d69288ed9e2bddc1066455678cfd0af73ef6b715a136c42f3b6f754ac07 putty-0.71.tar.gz +# Hashes from: http://the.earth.li/~sgtatham/putty/0.73/{sha1,sha256,sha512}sums +sha1 17daebb82e476adfd578f6934c28f4d2c209b7d8 putty-0.73.tar.gz +sha256 3db0b5403fb41aecd3aa506611366650d927650b6eb3d839ad4dcc782519df1c putty-0.73.tar.gz +sha512 4ada4b8c6d68be44afede2676bc661fedfd1ea0b574b8232ad9aaa6f3a48baa9f4f0ded2955b3f2677a14db85a508f53c965cb00fcd7538a1ed9844031f0c5e5 putty-0.73.tar.gz # Locally calculated sha256 b517b4a9504ba0f651d5e590245197b88d9a81d073905cc798cc9464c5ca7ba8 LICENCE diff --git a/buildroot/package/putty/putty.mk b/buildroot/package/putty/putty.mk index 68622a574..5313a4f8b 100644 --- a/buildroot/package/putty/putty.mk +++ b/buildroot/package/putty/putty.mk @@ -4,14 +4,12 @@ # ################################################################################ -PUTTY_VERSION = 0.71 +PUTTY_VERSION = 0.73 PUTTY_SITE = http://the.earth.li/~sgtatham/putty/$(PUTTY_VERSION) PUTTY_LICENSE = MIT PUTTY_LICENSE_FILES = LICENCE PUTTY_CONF_OPTS = --disable-gtktest PUTTY_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -Wno-error" -# Patching configure.ac -PUTTY_AUTORECONF = YES ifeq ($(BR2_PACKAGE_LIBGTK2),y) PUTTY_CONF_OPTS += --with-gtk=2 diff --git a/buildroot/package/python-django/python-django.hash b/buildroot/package/python-django/python-django.hash index c32511677..213c525f7 100644 --- a/buildroot/package/python-django/python-django.hash +++ b/buildroot/package/python-django/python-django.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/django/json -md5 909c2e7761893a922dcf721521d9239e Django-2.1.9.tar.gz -sha256 5052def4ff0a84bdf669827fdbd7b7cc1ac058f10232be6b21f37c6824f578da Django-2.1.9.tar.gz +md5 a9d02735cb5722608c08fb2d79350523 Django-2.1.15.tar.gz +sha256 a794f7a2f4b7c928eecfbc4ebad03712ff27fb545abe269bf01aa8500781eb1c Django-2.1.15.tar.gz # Locally computed sha256 checksums sha256 b846415d1b514e9c1dff14a22deb906d794bc546ca6129f950a18cd091e2a669 LICENSE diff --git a/buildroot/package/python-django/python-django.mk b/buildroot/package/python-django/python-django.mk index 041822ea1..c3e60f875 100644 --- a/buildroot/package/python-django/python-django.mk +++ b/buildroot/package/python-django/python-django.mk @@ -4,10 +4,10 @@ # ################################################################################ -PYTHON_DJANGO_VERSION = 2.1.9 +PYTHON_DJANGO_VERSION = 2.1.15 PYTHON_DJANGO_SOURCE = Django-$(PYTHON_DJANGO_VERSION).tar.gz # The official Django site has an unpractical URL -PYTHON_DJANGO_SITE = https://files.pythonhosted.org/packages/c1/b3/3cdc60dc2e3c11236539f9470e42c5075a2e9c9f4885f5b4b912e9f19992 +PYTHON_DJANGO_SITE = https://files.pythonhosted.org/packages/a5/ea/a3424e68851acb44a1f8f823dc32ee3eb10b7fda474b03d527f7e666b443 PYTHON_DJANGO_LICENSE = BSD-3-Clause PYTHON_DJANGO_LICENSE_FILES = LICENSE PYTHON_DJANGO_SETUP_TYPE = setuptools diff --git a/buildroot/package/python-idna/Config.in b/buildroot/package/python-idna/Config.in index 1fd56ceaf..e3e548d49 100644 --- a/buildroot/package/python-idna/Config.in +++ b/buildroot/package/python-idna/Config.in @@ -1,5 +1,7 @@ config BR2_PACKAGE_PYTHON_IDNA bool "python-idna" + select BR2_PACKAGE_PYTHON_UNICODEDATA if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON3_UNICODEDATA if BR2_PACKAGE_PYTHON3 help A library to support the Internationalised Domain Names in Applications (IDNA) protocol as specified in RFC 5891. This diff --git a/buildroot/package/python-numpy/python-numpy.mk b/buildroot/package/python-numpy/python-numpy.mk index 26a10c377..b20de6a75 100644 --- a/buildroot/package/python-numpy/python-numpy.mk +++ b/buildroot/package/python-numpy/python-numpy.mk @@ -13,7 +13,6 @@ PYTHON_NUMPY_SETUP_TYPE = setuptools ifeq ($(BR2_PACKAGE_CLAPACK),y) PYTHON_NUMPY_DEPENDENCIES += clapack -PYTHON_NUMPY_SITE_CFG_LIBS += blas lapack else PYTHON_NUMPY_ENV += BLAS=None LAPACK=None endif @@ -25,7 +24,6 @@ define PYTHON_NUMPY_CONFIGURE_CMDS echo "[DEFAULT]" >> $(@D)/site.cfg echo "library_dirs = $(STAGING_DIR)/usr/lib" >> $(@D)/site.cfg echo "include_dirs = $(STAGING_DIR)/usr/include" >> $(@D)/site.cfg - echo "libraries =" $(subst $(space),$(comma),$(PYTHON_NUMPY_SITE_CFG_LIBS)) >> $(@D)/site.cfg endef # Some package may include few headers from NumPy, so let's install it diff --git a/buildroot/package/python-pysnmp-apps/python-pysnmp-apps.mk b/buildroot/package/python-pysnmp-apps/python-pysnmp-apps.mk index 79c436fa7..ac43fda19 100644 --- a/buildroot/package/python-pysnmp-apps/python-pysnmp-apps.mk +++ b/buildroot/package/python-pysnmp-apps/python-pysnmp-apps.mk @@ -8,7 +8,7 @@ PYTHON_PYSNMP_APPS_VERSION = 0.4.1 PYTHON_PYSNMP_APPS_SOURCE = pysnmp-apps-$(PYTHON_PYSNMP_APPS_VERSION).tar.gz PYTHON_PYSNMP_APPS_SITE = https://pypi.python.org/packages/source/p/pysnmp-apps PYTHON_PYSNMP_APPS_SETUP_TYPE = setuptools -PYTHON_PYSNMP_APPS_LICENSE = BSD-3-Clause +PYTHON_PYSNMP_APPS_LICENSE = BSD-2-Clause PYTHON_PYSNMP_APPS_LICENSE_FILES = LICENSE.txt PYTHON_PYSNMP_APPS_DEPENDENCIES = python-pysnmp diff --git a/buildroot/package/python-urllib3/python-urllib3.hash b/buildroot/package/python-urllib3/python-urllib3.hash index ec075cb4f..b3f903891 100644 --- a/buildroot/package/python-urllib3/python-urllib3.hash +++ b/buildroot/package/python-urllib3/python-urllib3.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/urllib3/json -md5 20bb5a170a534bd0acd98bfc007fcc22 urllib3-1.24.2.tar.gz -sha256 9a247273df709c4fedb38c711e44292304f73f39ab01beda9f6b9fc375669ac3 urllib3-1.24.2.tar.gz +md5 1efcddca675b80f3ac110439921fc66b urllib3-1.24.3.tar.gz +sha256 2393a695cd12afedd0dcb26fe5d50d0cf248e5a66f75dbd89a3d4eb333a61af4 urllib3-1.24.3.tar.gz # Locally computed sha256 checksums sha256 11db569430ca5ad793f1399297b8df5041a22137abaf90642ea71da21d59121c LICENSE.txt diff --git a/buildroot/package/python-urllib3/python-urllib3.mk b/buildroot/package/python-urllib3/python-urllib3.mk index 893d32d97..309e18f10 100644 --- a/buildroot/package/python-urllib3/python-urllib3.mk +++ b/buildroot/package/python-urllib3/python-urllib3.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_URLLIB3_VERSION = 1.24.2 +PYTHON_URLLIB3_VERSION = 1.24.3 PYTHON_URLLIB3_SOURCE = urllib3-$(PYTHON_URLLIB3_VERSION).tar.gz -PYTHON_URLLIB3_SITE = https://files.pythonhosted.org/packages/fd/fa/b21f4f03176463a6cccdb612a5ff71b927e5224e83483012747c12fc5d62 +PYTHON_URLLIB3_SITE = https://files.pythonhosted.org/packages/8a/3c/1bb7ef6c435dea026f06ed9f3ba16aa93f9f4f5d3857a51a35dfa00882f1 PYTHON_URLLIB3_LICENSE = MIT PYTHON_URLLIB3_LICENSE_FILES = LICENSE.txt PYTHON_URLLIB3_SETUP_TYPE = setuptools diff --git a/buildroot/package/python/0002-Fix-get_python_inc-for-cross-compilation.patch b/buildroot/package/python/0002-Fix-get_python_inc-for-cross-compilation.patch index b28ef2440..1fa4e9278 100644 --- a/buildroot/package/python/0002-Fix-get_python_inc-for-cross-compilation.patch +++ b/buildroot/package/python/0002-Fix-get_python_inc-for-cross-compilation.patch @@ -24,23 +24,25 @@ This patch allows to fix the incorrectly added to the header paths. Signed-off-by: Thomas Petazzoni +[Asaf: update for 2.7.17] +Signed-off-by: Asaf Kahlon --- Lib/distutils/sysconfig.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py -index de7da1d..d72b6e5 100644 +index 1a4b792644..14c7d81c48 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py -@@ -79,7 +79,7 @@ def get_python_inc(plat_specific=0, prefix=None): - +@@ -85,7 +85,7 @@ def get_python_inc(plat_specific=0, prefix=None): if os.name == "posix": if python_build: -- buildir = os.path.dirname(sys.executable) -+ buildir = project_base - if plat_specific: - # python.h is located in the buildir - inc_dir = buildir + if sys.executable: +- buildir = os.path.dirname(sys.executable) ++ buildir = project_base + else: + # sys.executable can be empty if argv[0] has been changed + # and Python is unable to retrieve the real program name -- -2.7.4 +2.20.1 diff --git a/buildroot/package/python/python.hash b/buildroot/package/python/python.hash index 52b9984b0..aa809b9a6 100644 --- a/buildroot/package/python/python.hash +++ b/buildroot/package/python/python.hash @@ -1,5 +1,5 @@ -# From https://www.python.org/downloads/release/python-2716/ -md5 30157d85a2c0479c09ea2cbe61f2aaf5 Python-2.7.16.tar.xz +# From https://www.python.org/downloads/release/python-2717/ +md5 b3b6d2c92f42a60667814358ab9f0cfd Python-2.7.17.tar.xz # Locally calculated -sha256 f222ef602647eecb6853681156d32de4450a2c39f4de93bd5b20235f2e660ed7 Python-2.7.16.tar.xz +sha256 4d43f033cdbd0aa7b7023c81b0e986fd11e653b5248dac9144d508f11812ba41 Python-2.7.17.tar.xz sha256 a77d71d6be6f9032e6b6e5d2cf6da68f9eeab9036edfbc043633c8979cd5e82c LICENSE diff --git a/buildroot/package/python/python.mk b/buildroot/package/python/python.mk index d1e70a015..29b9e363b 100644 --- a/buildroot/package/python/python.mk +++ b/buildroot/package/python/python.mk @@ -5,7 +5,7 @@ ################################################################################ PYTHON_VERSION_MAJOR = 2.7 -PYTHON_VERSION = $(PYTHON_VERSION_MAJOR).16 +PYTHON_VERSION = $(PYTHON_VERSION_MAJOR).17 PYTHON_SOURCE = Python-$(PYTHON_VERSION).tar.xz PYTHON_SITE = https://python.org/ftp/python/$(PYTHON_VERSION) PYTHON_LICENSE = Python-2.0, others @@ -262,7 +262,9 @@ endif ifeq ($(BR2_PACKAGE_PYTHON_PYC_ONLY),y) define PYTHON_REMOVE_PY_FILES - find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.py' -print0 | \ + find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.py' \ + $(if $(strip $(KEEP_PYTHON_PY_FILES)),-not \( $(call finddirclauses,$(TARGET_DIR),$(KEEP_PYTHON_PY_FILES)) \) ) \ + -print0 | \ xargs -0 --no-run-if-empty rm -f endef PYTHON_TARGET_FINALIZE_HOOKS += PYTHON_REMOVE_PY_FILES diff --git a/buildroot/package/python3/0001-Make-the-build-of-pyc-files-conditional.patch b/buildroot/package/python3/0001-Make-the-build-of-pyc-files-conditional.patch index f6fa3d755..84bb881aa 100644 --- a/buildroot/package/python3/0001-Make-the-build-of-pyc-files-conditional.patch +++ b/buildroot/package/python3/0001-Make-the-build-of-pyc-files-conditional.patch @@ -18,7 +18,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index 82e830727e..b38bd79121 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1393,6 +1393,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c +@@ -1395,6 +1395,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \ $(DESTDIR)$(LIBDEST)/distutils/tests ; \ fi @@ -26,7 +26,7 @@ index 82e830727e..b38bd79121 100644 -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ -d $(LIBDEST) -f \ -@@ -1420,6 +1421,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c +@@ -1422,6 +1423,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c $(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \ -d $(LIBDEST)/site-packages -f \ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages diff --git a/buildroot/package/python3/0003-Add-infrastructure-to-disable-the-build-of-certain-e.patch b/buildroot/package/python3/0003-Add-infrastructure-to-disable-the-build-of-certain-e.patch index 647f3251d..506886210 100644 --- a/buildroot/package/python3/0003-Add-infrastructure-to-disable-the-build-of-certain-e.patch +++ b/buildroot/package/python3/0003-Add-infrastructure-to-disable-the-build-of-certain-e.patch @@ -47,7 +47,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index b38bd79121..4ce917ab8d 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -204,6 +204,8 @@ FILEMODE= 644 +@@ -206,6 +206,8 @@ FILEMODE= 644 # configure script arguments CONFIG_ARGS= @CONFIG_ARGS@ @@ -56,7 +56,7 @@ index b38bd79121..4ce917ab8d 100644 # Subdirectories with code SRCDIRS= @SRCDIRS@ -@@ -617,6 +619,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o +@@ -619,6 +621,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o esac; \ echo "$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \ @@ -64,7 +64,7 @@ index b38bd79121..4ce917ab8d 100644 $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build"; \ $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \ -@@ -1526,7 +1529,8 @@ libainstall: @DEF_MAKE_RULE@ python-config +@@ -1528,7 +1531,8 @@ libainstall: @DEF_MAKE_RULE@ python-config # Install the dynamically loadable modules # This goes into $(exec_prefix) sharedinstall: sharedmods diff --git a/buildroot/package/python3/0005-Don-t-look-in-usr-lib-termcap-for-libraries.patch b/buildroot/package/python3/0005-Don-t-look-in-usr-lib-termcap-for-libraries.patch index d8c5b0faf..8dd54f8b3 100644 --- a/buildroot/package/python3/0005-Don-t-look-in-usr-lib-termcap-for-libraries.patch +++ b/buildroot/package/python3/0005-Don-t-look-in-usr-lib-termcap-for-libraries.patch @@ -12,7 +12,7 @@ diff --git a/setup.py b/setup.py index 86643ae8bf..cd00fbdbda 100644 --- a/setup.py +++ b/setup.py -@@ -855,12 +855,9 @@ class PyBuildExt(build_ext): +@@ -894,12 +894,9 @@ class PyBuildExt(build_ext): pass # Issue 7384: Already linked against curses or tinfo. elif curses_library: readline_libs.append(curses_library) diff --git a/buildroot/package/python3/0006-Don-t-add-multiarch-paths.patch b/buildroot/package/python3/0006-Don-t-add-multiarch-paths.patch index e55640d41..a6ba6a857 100644 --- a/buildroot/package/python3/0006-Don-t-add-multiarch-paths.patch +++ b/buildroot/package/python3/0006-Don-t-add-multiarch-paths.patch @@ -20,7 +20,7 @@ diff --git a/setup.py b/setup.py index cd00fbdbda..c956fa08d1 100644 --- a/setup.py +++ b/setup.py -@@ -552,10 +552,10 @@ class PyBuildExt(build_ext): +@@ -591,10 +591,10 @@ class PyBuildExt(build_ext): if not cross_compiling: add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') diff --git a/buildroot/package/python3/0007-Abort-on-failed-module-build.patch b/buildroot/package/python3/0007-Abort-on-failed-module-build.patch index a7071e199..e8de7a541 100644 --- a/buildroot/package/python3/0007-Abort-on-failed-module-build.patch +++ b/buildroot/package/python3/0007-Abort-on-failed-module-build.patch @@ -17,7 +17,7 @@ diff --git a/setup.py b/setup.py index c956fa08d1..b3add2be76 100644 --- a/setup.py +++ b/setup.py -@@ -363,6 +363,7 @@ class PyBuildExt(build_ext): +@@ -402,6 +402,7 @@ class PyBuildExt(build_ext): print("Failed to build these modules:") print_three_column(failed) print() diff --git a/buildroot/package/python3/0010-Misc-python-config.sh.in-ensure-sed-invocations-only.patch b/buildroot/package/python3/0010-Misc-python-config.sh.in-ensure-sed-invocations-only.patch index 68cba3497..31f237e22 100644 --- a/buildroot/package/python3/0010-Misc-python-config.sh.in-ensure-sed-invocations-only.patch +++ b/buildroot/package/python3/0010-Misc-python-config.sh.in-ensure-sed-invocations-only.patch @@ -53,7 +53,7 @@ index d1d3275..9e259c0 100644 VERSION="@VERSION@" LIBM="@LIBM@" LIBC="@LIBC@" -@@ -49,7 +50,7 @@ OPT="@OPT@" +@@ -48,7 +49,7 @@ OPT="@OPT@" PY_ENABLE_SHARED="@PY_ENABLE_SHARED@" LDVERSION="@LDVERSION@" LIBDEST=${prefix_real}/lib/python${VERSION} diff --git a/buildroot/package/python3/0011-Override-system-locale-and-set-to-default-when-addin.patch b/buildroot/package/python3/0011-Override-system-locale-and-set-to-default-when-addin.patch index 5c645201e..2444c4da3 100644 --- a/buildroot/package/python3/0011-Override-system-locale-and-set-to-default-when-addin.patch +++ b/buildroot/package/python3/0011-Override-system-locale-and-set-to-default-when-addin.patch @@ -23,7 +23,7 @@ diff --git a/setup.py b/setup.py index b3add2be76..29bfd174d2 100644 --- a/setup.py +++ b/setup.py -@@ -519,7 +519,7 @@ class PyBuildExt(build_ext): +@@ -558,7 +558,7 @@ class PyBuildExt(build_ext): tmpfile = os.path.join(self.build_temp, 'gccpaths') if not os.path.exists(self.build_temp): os.makedirs(self.build_temp) diff --git a/buildroot/package/python3/0013-Add-an-option-to-disable-installation-of-test-module.patch b/buildroot/package/python3/0013-Add-an-option-to-disable-installation-of-test-module.patch index 8180880e1..355e62f50 100644 --- a/buildroot/package/python3/0013-Add-an-option-to-disable-installation-of-test-module.patch +++ b/buildroot/package/python3/0013-Add-an-option-to-disable-installation-of-test-module.patch @@ -19,7 +19,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index 4ce917ab8d..4110fff4ac 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1259,8 +1259,28 @@ maninstall: altmaninstall +@@ -1261,8 +1261,28 @@ maninstall: altmaninstall # Install the library XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax @@ -54,7 +54,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index 1ff2362..194dbfc 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1334,26 +1334,24 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ +@@ -1336,26 +1336,24 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ test/test_importlib/source \ test/test_importlib/zipdata01 \ test/test_importlib/zipdata02 \ diff --git a/buildroot/package/python3/0014-Add-an-option-to-disable-pydoc.patch b/buildroot/package/python3/0014-Add-an-option-to-disable-pydoc.patch index 6f6e265c7..bccd9facf 100644 --- a/buildroot/package/python3/0014-Add-an-option-to-disable-pydoc.patch +++ b/buildroot/package/python3/0014-Add-an-option-to-disable-pydoc.patch @@ -20,7 +20,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index 4110fff4ac..badb2af35d 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1229,7 +1229,9 @@ bininstall: altbininstall +@@ -1231,7 +1231,9 @@ bininstall: altbininstall -rm -f $(DESTDIR)$(BINDIR)/idle3 (cd $(DESTDIR)$(BINDIR); $(LN) -s idle$(VERSION) idle3) -rm -f $(DESTDIR)$(BINDIR)/pydoc3 @@ -30,7 +30,7 @@ index 4110fff4ac..badb2af35d 100644 -rm -f $(DESTDIR)$(BINDIR)/2to3 (cd $(DESTDIR)$(BINDIR); $(LN) -s 2to3-$(VERSION) 2to3) -rm -f $(DESTDIR)$(BINDIR)/pyvenv -@@ -1277,7 +1279,7 @@ LIBSUBDIRS= tkinter site-packages \ +@@ -1279,7 +1281,7 @@ LIBSUBDIRS= tkinter site-packages \ multiprocessing multiprocessing/dummy \ unittest \ venv venv/scripts venv/scripts/common venv/scripts/posix \ @@ -39,7 +39,7 @@ index 4110fff4ac..badb2af35d 100644 TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ tkinter/test/test_ttk test \ -@@ -1352,6 +1354,10 @@ ifeq (@TEST_MODULES@,yes) +@@ -1354,6 +1356,10 @@ ifeq (@TEST_MODULES@,yes) LIBSUBDIRS += $(TESTSUBDIRS) endif @@ -71,7 +71,7 @@ diff --git a/setup.py b/setup.py index 29bfd174d2..94dd337fef 100644 --- a/setup.py +++ b/setup.py -@@ -2337,6 +2337,12 @@ def main(): +@@ -2376,6 +2376,12 @@ def main(): # turn off warnings when deprecated modules are imported import warnings warnings.filterwarnings("ignore",category=DeprecationWarning) @@ -84,7 +84,7 @@ index 29bfd174d2..94dd337fef 100644 setup(# PyPI Metadata (PEP 301) name = "Python", version = sys.version.split()[0], -@@ -2361,8 +2367,7 @@ def main(): +@@ -2400,8 +2406,7 @@ def main(): # If you change the scripts installed here, you also need to # check the PyBuildScripts command above, and change the links # created by the bininstall target in Makefile.pre.in diff --git a/buildroot/package/python3/0015-Add-an-option-to-disable-lib2to3.patch b/buildroot/package/python3/0015-Add-an-option-to-disable-lib2to3.patch index d2ce91775..fade361fa 100644 --- a/buildroot/package/python3/0015-Add-an-option-to-disable-lib2to3.patch +++ b/buildroot/package/python3/0015-Add-an-option-to-disable-lib2to3.patch @@ -20,7 +20,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index badb2af35d..931cc3ed07 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1233,7 +1233,9 @@ ifeq (@PYDOC@,yes) +@@ -1235,7 +1235,9 @@ ifeq (@PYDOC@,yes) (cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3) endif -rm -f $(DESTDIR)$(BINDIR)/2to3 @@ -30,7 +30,7 @@ index badb2af35d..931cc3ed07 100644 -rm -f $(DESTDIR)$(BINDIR)/pyvenv (cd $(DESTDIR)$(BINDIR); $(LN) -s pyvenv-$(VERSION) pyvenv) if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \ -@@ -1270,7 +1272,6 @@ LIBSUBDIRS= tkinter site-packages \ +@@ -1272,7 +1274,6 @@ LIBSUBDIRS= tkinter site-packages \ html json http dbm xmlrpc \ sqlite3 \ logging csv wsgiref urllib \ @@ -38,7 +38,7 @@ index badb2af35d..931cc3ed07 100644 ctypes ctypes/macholib \ idlelib idlelib/Icons \ distutils distutils/command $(XMLLIBSUBDIRS) \ -@@ -1340,9 +1341,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ +@@ -1342,9 +1343,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ test/test_email test/test_email/data \ test/test_json \ sqlite3/test \ @@ -48,7 +48,7 @@ index badb2af35d..931cc3ed07 100644 ctypes/test \ idlelib/idle_test \ distutils/tests \ -@@ -1350,6 +1348,14 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ +@@ -1352,6 +1350,14 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ test/test_tools test/test_warnings test/test_warnings/data \ unittest/test unittest/test/testmock @@ -63,7 +63,7 @@ index badb2af35d..931cc3ed07 100644 ifeq (@TEST_MODULES@,yes) LIBSUBDIRS += $(TESTSUBDIRS) endif -@@ -1449,10 +1455,12 @@ ifeq (@PYC_BUILD@,yes) +@@ -1451,10 +1457,12 @@ ifeq (@PYC_BUILD@,yes) -d $(LIBDEST)/site-packages -f \ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages endif @@ -97,7 +97,7 @@ diff --git a/setup.py b/setup.py index 94dd337fef..76429e1326 100644 --- a/setup.py +++ b/setup.py -@@ -2338,10 +2338,11 @@ def main(): +@@ -2377,10 +2377,11 @@ def main(): import warnings warnings.filterwarnings("ignore",category=DeprecationWarning) diff --git a/buildroot/package/python3/0016-Add-option-to-disable-the-sqlite3-module.patch b/buildroot/package/python3/0016-Add-option-to-disable-the-sqlite3-module.patch index 134a7ef8b..ed5e4cb29 100644 --- a/buildroot/package/python3/0016-Add-option-to-disable-the-sqlite3-module.patch +++ b/buildroot/package/python3/0016-Add-option-to-disable-the-sqlite3-module.patch @@ -16,7 +16,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index 931cc3ed07..a1ce0712cd 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1270,7 +1270,6 @@ LIBSUBDIRS= tkinter site-packages \ +@@ -1272,7 +1272,6 @@ LIBSUBDIRS= tkinter site-packages \ email email/mime \ ensurepip ensurepip/_bundled \ html json http dbm xmlrpc \ @@ -24,7 +24,7 @@ index 931cc3ed07..a1ce0712cd 100644 logging csv wsgiref urllib \ ctypes ctypes/macholib \ idlelib idlelib/Icons \ -@@ -1340,7 +1339,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ +@@ -1342,7 +1341,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ test/test_asyncio \ test/test_email test/test_email/data \ test/test_json \ @@ -32,7 +32,7 @@ index 931cc3ed07..a1ce0712cd 100644 ctypes/test \ idlelib/idle_test \ distutils/tests \ -@@ -1356,6 +1354,11 @@ TESTSUBDIRS += lib2to3/tests \ +@@ -1358,6 +1356,11 @@ TESTSUBDIRS += lib2to3/tests \ lib2to3/tests/data/fixers/myfixes endif diff --git a/buildroot/package/python3/0017-Add-an-option-to-disable-the-tk-module.patch b/buildroot/package/python3/0017-Add-an-option-to-disable-the-tk-module.patch index 57d45a22f..347057e09 100644 --- a/buildroot/package/python3/0017-Add-an-option-to-disable-the-tk-module.patch +++ b/buildroot/package/python3/0017-Add-an-option-to-disable-the-tk-module.patch @@ -16,7 +16,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index a1ce0712cd..dc1e917cc3 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1264,7 +1264,7 @@ maninstall: altmaninstall +@@ -1266,7 +1266,7 @@ maninstall: altmaninstall # Install the library XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax @@ -25,7 +25,7 @@ index a1ce0712cd..dc1e917cc3 100644 asyncio \ collections concurrent concurrent/futures encodings \ email email/mime \ -@@ -1281,8 +1281,7 @@ LIBSUBDIRS= tkinter site-packages \ +@@ -1283,8 +1283,7 @@ LIBSUBDIRS= tkinter site-packages \ venv venv/scripts venv/scripts/common venv/scripts/posix \ curses @@ -35,7 +35,7 @@ index a1ce0712cd..dc1e917cc3 100644 test/audiodata \ test/capath test/data \ test/cjkencodings test/decimaltestdata test/xmltestdata \ -@@ -1346,6 +1345,12 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ +@@ -1348,6 +1347,12 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \ test/test_tools test/test_warnings test/test_warnings/data \ unittest/test unittest/test/testmock diff --git a/buildroot/package/python3/0018-Add-an-option-to-disable-the-curses-module.patch b/buildroot/package/python3/0018-Add-an-option-to-disable-the-curses-module.patch index 767ded5a7..847f55826 100644 --- a/buildroot/package/python3/0018-Add-an-option-to-disable-the-curses-module.patch +++ b/buildroot/package/python3/0018-Add-an-option-to-disable-the-curses-module.patch @@ -16,7 +16,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index dc1e917cc3..6a6bc082cd 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1278,8 +1278,7 @@ LIBSUBDIRS= site-packages \ +@@ -1280,8 +1280,7 @@ LIBSUBDIRS= site-packages \ turtledemo \ multiprocessing multiprocessing/dummy \ unittest \ @@ -26,7 +26,7 @@ index dc1e917cc3..6a6bc082cd 100644 TESTSUBDIRS= test \ test/audiodata \ -@@ -1351,6 +1350,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \ +@@ -1353,6 +1352,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \ tkinter/test/test_ttk endif diff --git a/buildroot/package/python3/0019-Add-an-option-to-disable-expat.patch b/buildroot/package/python3/0019-Add-an-option-to-disable-expat.patch index 6667eaf61..8855858ec 100644 --- a/buildroot/package/python3/0019-Add-an-option-to-disable-expat.patch +++ b/buildroot/package/python3/0019-Add-an-option-to-disable-expat.patch @@ -23,7 +23,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index 6a6bc082cd..dc4b92b6fe 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1273,7 +1273,7 @@ LIBSUBDIRS= site-packages \ +@@ -1275,7 +1275,7 @@ LIBSUBDIRS= site-packages \ logging csv wsgiref urllib \ ctypes ctypes/macholib \ idlelib idlelib/Icons \ @@ -32,7 +32,7 @@ index 6a6bc082cd..dc4b92b6fe 100644 importlib \ turtledemo \ multiprocessing multiprocessing/dummy \ -@@ -1354,6 +1354,10 @@ ifeq (@CURSES@,yes) +@@ -1356,6 +1356,10 @@ ifeq (@CURSES@,yes) LIBSUBDIRS += curses endif @@ -78,7 +78,7 @@ diff --git a/setup.py b/setup.py index 76429e1326..38aa5e605e 100644 --- a/setup.py +++ b/setup.py -@@ -1490,7 +1490,7 @@ class PyBuildExt(build_ext): +@@ -1529,7 +1529,7 @@ class PyBuildExt(build_ext): # # More information on Expat can be found at www.libexpat.org. # diff --git a/buildroot/package/python3/0023-Add-an-option-to-disable-IDLE.patch b/buildroot/package/python3/0023-Add-an-option-to-disable-IDLE.patch index 98607c5e1..4cec31406 100644 --- a/buildroot/package/python3/0023-Add-an-option-to-disable-IDLE.patch +++ b/buildroot/package/python3/0023-Add-an-option-to-disable-IDLE.patch @@ -19,7 +19,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in index dc4b92b6fe..3e43066d90 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1227,7 +1227,9 @@ bininstall: altbininstall +@@ -1229,7 +1229,9 @@ bininstall: altbininstall -rm -f $(DESTDIR)$(LIBPC)/python3.pc (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION).pc python3.pc) -rm -f $(DESTDIR)$(BINDIR)/idle3 @@ -29,7 +29,7 @@ index dc4b92b6fe..3e43066d90 100644 -rm -f $(DESTDIR)$(BINDIR)/pydoc3 ifeq (@PYDOC@,yes) (cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3) -@@ -1272,7 +1274,6 @@ LIBSUBDIRS= site-packages \ +@@ -1274,7 +1276,6 @@ LIBSUBDIRS= site-packages \ html json http dbm xmlrpc \ logging csv wsgiref urllib \ ctypes ctypes/macholib \ @@ -37,7 +37,7 @@ index dc4b92b6fe..3e43066d90 100644 distutils distutils/command \ importlib \ turtledemo \ -@@ -1358,6 +1359,10 @@ ifeq (@EXPAT@,yes) +@@ -1360,6 +1361,10 @@ ifeq (@EXPAT@,yes) LIBSUBDIRS += $(XMLLIBSUBDIRS) endif @@ -69,7 +69,7 @@ diff --git a/setup.py b/setup.py index 38aa5e605e..d642825c1e 100644 --- a/setup.py +++ b/setup.py -@@ -2338,11 +2338,13 @@ def main(): +@@ -2377,11 +2377,13 @@ def main(): import warnings warnings.filterwarnings("ignore",category=DeprecationWarning) diff --git a/buildroot/package/python3/0024-Add-an-option-to-disable-decimal.patch b/buildroot/package/python3/0024-Add-an-option-to-disable-decimal.patch index 31ffbc6b3..5e02f0e21 100644 --- a/buildroot/package/python3/0024-Add-an-option-to-disable-decimal.patch +++ b/buildroot/package/python3/0024-Add-an-option-to-disable-decimal.patch @@ -50,7 +50,7 @@ diff --git a/setup.py b/setup.py index d642825c1e..5b98255857 100644 --- a/setup.py +++ b/setup.py -@@ -2015,7 +2015,7 @@ class PyBuildExt(build_ext): +@@ -2054,7 +2054,7 @@ class PyBuildExt(build_ext): def _decimal_ext(self): extra_compile_args = [] undef_macros = [] diff --git a/buildroot/package/python3/0029-python-config.sh-don-t-reassign-prefix.patch b/buildroot/package/python3/0029-python-config.sh-don-t-reassign-prefix.patch index 2e45bee15..0edaebdb6 100644 --- a/buildroot/package/python3/0029-python-config.sh-don-t-reassign-prefix.patch +++ b/buildroot/package/python3/0029-python-config.sh-don-t-reassign-prefix.patch @@ -39,7 +39,7 @@ index 9e259c0..8b249d9 100644 exec_prefix=$(echo "$exec_prefix_build" | sed "s#^$exec_prefix_build#$prefix_real#") exec_prefix_real=${prefix_real} includedir=$(echo "@includedir@" | sed "s#^$prefix_build#$prefix_real#") -@@ -49,7 +49,7 @@ LINKFORSHARED="@LINKFORSHARED@" +@@ -48,7 +48,7 @@ LINKFORSHARED="@LINKFORSHARED@" OPT="@OPT@" PY_ENABLE_SHARED="@PY_ENABLE_SHARED@" LDVERSION="@LDVERSION@" diff --git a/buildroot/package/python3/0030-Fix-cross-compiling-the-uuid-module.patch b/buildroot/package/python3/0030-Fix-cross-compiling-the-uuid-module.patch index 8b4dca912..a2dcdb1b0 100644 --- a/buildroot/package/python3/0030-Fix-cross-compiling-the-uuid-module.patch +++ b/buildroot/package/python3/0030-Fix-cross-compiling-the-uuid-module.patch @@ -23,7 +23,7 @@ diff --git a/setup.py b/setup.py index 1a7085c5c4..f33d0b57b8 100644 --- a/setup.py +++ b/setup.py -@@ -1632,7 +1632,8 @@ class PyBuildExt(build_ext): +@@ -1671,7 +1671,8 @@ class PyBuildExt(build_ext): missing.append('_tkinter') # Build the _uuid module if possible diff --git a/buildroot/package/python3/0033-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch b/buildroot/package/python3/0033-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch new file mode 100644 index 000000000..19a0f23e7 --- /dev/null +++ b/buildroot/package/python3/0033-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch @@ -0,0 +1,48 @@ +From e1a2c27bcb9091f851ef7a9c7d59822a125a0b8e Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Fri, 2 Aug 2019 15:53:16 +0200 +Subject: [PATCH] configure.ac: fixup $CC --print-multiarch output for + musl/uclibc GCC 8+ toolchains + +GCC commit 6834b83784dcf0364eb820e8 (multiarch support for non-glibc linux +systems), which is part of GCC 8+, changed the multiarch logic to use +$arch-linux-musl / $arch-linux-uclibc rather than $arch-linux-gnu. + +This then causes the python3 configure script to error out: + +checking for the platform triplet based on compiler characteristics... powerpc-linux-gnu +configure: error: internal configure error for the platform triplet, please file a bug report + +http://autobuild.buildroot.net/results/cb4/cb49c539501342e45cbe5ade82e588fcdf51f05b + +As it requires that the --print-multiarch output (if not empty) matches the +deduced triplet (which always uses -linux-gnu). + +It isn't quite clear why --print-multiarch returns something for a +non-multiarch toolchain on some architectures (E.G. PowerPC), but as a +workaround, rewrite the --print-multiarch output to match older GCC versions +to keep the configure script happy. + +Signed-off-by: Peter Korsgaard +--- + configure.ac | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index e5fb7e7b0b..9c64f960d6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -724,7 +724,9 @@ then + fi + + +-MULTIARCH=$($CC --print-multiarch 2>/dev/null) ++# GCC 8+ returns $arch-linux-{musl,uclibc} for musl/uClibc based ++# toolchains confusing python. Fix that up ++MULTIARCH=$($CC --print-multiarch 2>/dev/null | sed -E 's/-linux-(musl|uclibc)*$/-linux-gnu/') + AC_SUBST(MULTIARCH) + + AC_MSG_CHECKING([for the platform triplet based on compiler characteristics]) +-- +2.11.0 + diff --git a/buildroot/package/python3/python3.hash b/buildroot/package/python3/python3.hash index d5209c23c..a138724ff 100644 --- a/buildroot/package/python3/python3.hash +++ b/buildroot/package/python3/python3.hash @@ -1,5 +1,5 @@ -# From https://www.python.org/downloads/release/python-373/ -md5 93df27aec0cd18d6d42173e601ffbbfd Python-3.7.3.tar.xz +# From https://www.python.org/downloads/release/python-375/ +md5 08ed8030b1183107c48f2092e79a87e2 Python-3.7.5.tar.xz # Locally computed -sha256 da60b54064d4cfcd9c26576f6df2690e62085123826cff2e667e72a91952d318 Python-3.7.3.tar.xz +sha256 e85a76ea9f3d6c485ec1780fca4e500725a4a7bbc63c78ebc44170de9b619d94 Python-3.7.5.tar.xz sha256 a77d71d6be6f9032e6b6e5d2cf6da68f9eeab9036edfbc043633c8979cd5e82c LICENSE diff --git a/buildroot/package/python3/python3.mk b/buildroot/package/python3/python3.mk index 2211cfed8..625c05913 100644 --- a/buildroot/package/python3/python3.mk +++ b/buildroot/package/python3/python3.mk @@ -5,7 +5,7 @@ ################################################################################ PYTHON3_VERSION_MAJOR = 3.7 -PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).3 +PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).5 PYTHON3_SOURCE = Python-$(PYTHON3_VERSION).tar.xz PYTHON3_SITE = https://python.org/ftp/python/$(PYTHON3_VERSION) PYTHON3_LICENSE = Python-2.0, others @@ -70,10 +70,6 @@ else PYTHON3_CONF_OPTS += --with-expat=none endif -ifeq ($(BR2_PACKAGE_PYTHON3_PYC_ONLY),y) -PYTHON3_CONF_OPTS += --enable-old-stdlib-cache -endif - ifeq ($(BR2_PACKAGE_PYTHON3_SQLITE),y) PYTHON3_DEPENDENCIES += sqlite else @@ -207,8 +203,8 @@ define PYTHON3_REMOVE_USELESS_FILES rm -f $(TARGET_DIR)/usr/bin/python$(PYTHON3_VERSION_MAJOR)m-config rm -f $(TARGET_DIR)/usr/bin/python3-config rm -f $(TARGET_DIR)/usr/bin/smtpd.py.3 - for i in `find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/config-$(PYTHON3_VERSION_MAJOR)m/ \ - -type f -not -name pyconfig.h -a -not -name Makefile` ; do \ + for i in `find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/config-$(PYTHON3_VERSION_MAJOR)m-*/ \ + -type f -not -name Makefile` ; do \ rm -f $$i ; \ done rm -rf $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/__pycache__/ @@ -284,7 +280,9 @@ endif ifeq ($(BR2_PACKAGE_PYTHON3_PYC_ONLY),y) define PYTHON3_REMOVE_PY_FILES - find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.py' -print0 | \ + find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.py' \ + $(if $(strip $(KEEP_PYTHON_PY_FILES)),-not \( $(call finddirclauses,$(TARGET_DIR),$(KEEP_PYTHON_PY_FILES)) \) ) \ + -print0 | \ xargs -0 --no-run-if-empty rm -f endef PYTHON3_TARGET_FINALIZE_HOOKS += PYTHON3_REMOVE_PY_FILES diff --git a/buildroot/package/qemu/0002-configure-improve-usbfs-check.patch b/buildroot/package/qemu/0002-configure-improve-usbfs-check.patch deleted file mode 100644 index d693b5d7e..000000000 --- a/buildroot/package/qemu/0002-configure-improve-usbfs-check.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 9672cccd64c446369b5649fe23d575917638be46 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Tue, 5 Feb 2019 15:07:43 +0100 -Subject: [PATCH] configure: improve usbfs check - -The current check to test if usbfs support should be compiled or not -solely relies on the presence of , without -actually checking that all definition used by Qemu are provided by -this header file. - -With sufficiently old kernel headers, may be -present, but some of the definitions needed by Qemu may not be -available. - -This commit improves the check by building a small program that -actually tests whether the necessary definitions are available. - -In addition, it fixes a bug where have_usbfs was set to "yes" -regardless of the result of the test. - -Signed-off-by: Thomas Petazzoni ---- - configure | 19 +++++++++++++++++-- - 1 file changed, 17 insertions(+), 2 deletions(-) - -diff --git a/configure b/configure -index 3d89870d99..799c8e3b08 100755 ---- a/configure -+++ b/configure -@@ -4266,10 +4266,25 @@ fi - # check for usbfs - have_usbfs=no - if test "$linux_user" = "yes"; then -- if check_include linux/usbdevice_fs.h; then -+ cat > $TMPC << EOF -+#include -+ -+#ifndef USBDEVFS_GET_CAPABILITIES -+#error "USBDEVFS_GET_CAPABILITIES undefined" -+#endif -+ -+#ifndef USBDEVFS_DISCONNECT_CLAIM -+#error "USBDEVFS_DISCONNECT_CLAIM undefined" -+#endif -+ -+int main(void) -+{ -+ return 0; -+} -+EOF -+ if compile_prog "" ""; then - have_usbfs=yes - fi -- have_usbfs=yes - fi - - # check for fallocate --- -2.20.1 - diff --git a/buildroot/package/qemu/0001-user-exec-fix-usage-of-mcontext-structure-on-ARM-uCl.patch b/buildroot/package/qemu/3.1.1.1/0001-user-exec-fix-usage-of-mcontext-structure-on-ARM-uCl.patch similarity index 100% rename from buildroot/package/qemu/0001-user-exec-fix-usage-of-mcontext-structure-on-ARM-uCl.patch rename to buildroot/package/qemu/3.1.1.1/0001-user-exec-fix-usage-of-mcontext-structure-on-ARM-uCl.patch diff --git a/buildroot/package/qemu/3.1.1.1/0002-linux-user-fix-to-handle-variably-sized-SIOCGSTAMP-with-new-kernels.patch b/buildroot/package/qemu/3.1.1.1/0002-linux-user-fix-to-handle-variably-sized-SIOCGSTAMP-with-new-kernels.patch new file mode 100644 index 000000000..a757d1f1a --- /dev/null +++ b/buildroot/package/qemu/3.1.1.1/0002-linux-user-fix-to-handle-variably-sized-SIOCGSTAMP-with-new-kernels.patch @@ -0,0 +1,337 @@ +From 6d5d5dde9adb5acb32e6b8e3dfbf47fff0f308d2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= +Date: Thu, 18 Jul 2019 15:06:41 +0200 +Subject: [PATCH] linux-user: fix to handle variably sized SIOCGSTAMP with new + kernels +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The SIOCGSTAMP symbol was previously defined in the +asm-generic/sockios.h header file. QEMU sees that header +indirectly via sys/socket.h + +In linux kernel commit 0768e17073dc527ccd18ed5f96ce85f9985e9115 +the asm-generic/sockios.h header no longer defines SIOCGSTAMP. +Instead it provides only SIOCGSTAMP_OLD, which only uses a +32-bit time_t on 32-bit architectures. + +The linux/sockios.h header then defines SIOCGSTAMP using +either SIOCGSTAMP_OLD or SIOCGSTAMP_NEW as appropriate. If +SIOCGSTAMP_NEW is used, then the tv_sec field is 64-bit even +on 32-bit architectures + +To cope with this we must now convert the old and new type from +the target to the host one. + +Signed-off-by: Daniel P. Berrangé +Signed-off-by: Laurent Vivier +Reviewed-by: Arnd Bergmann +Message-Id: <20190718130641.15294-1-laurent@vivier.eu> +Signed-off-by: Laurent Vivier + +[Retrieved (and backported to 3.1.0) from: +https://github.com/qemu/qemu/commit/6d5d5dde9adb5acb32e6b8e3dfbf47fff0f308d2] +Signed-off-by: Fabrice Fontaine +--- + linux-user/ioctls.h | 21 +++++- + linux-user/syscall.c | 140 +++++++++++++++++++++++++++++-------- + linux-user/syscall_defs.h | 30 +++++++- + linux-user/syscall_types.h | 6 -- + 4 files changed, 159 insertions(+), 38 deletions(-) + +diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h +index 5e84dc7c3a7..3281c97ca26 100644 +--- a/linux-user/ioctls.h ++++ b/linux-user/ioctls.h +@@ -222,8 +222,25 @@ + IOCTL(SIOCGIWNAME, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_char_ifreq))) + IOCTL(SIOCSPGRP, IOC_W, MK_PTR(TYPE_INT)) /* pid_t */ + IOCTL(SIOCGPGRP, IOC_R, MK_PTR(TYPE_INT)) /* pid_t */ +- IOCTL(SIOCGSTAMP, IOC_R, MK_PTR(MK_STRUCT(STRUCT_timeval))) +- IOCTL(SIOCGSTAMPNS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_timespec))) ++ ++ /* ++ * We can't use IOCTL_SPECIAL() because it will set ++ * host_cmd to XXX_OLD and XXX_NEW and these macros ++ * are not defined with kernel prior to 5.2. ++ * We must set host_cmd to the same value as in target_cmd ++ * otherwise the consistency check in syscall_init() ++ * will trigger an error. ++ * host_cmd is ignored by the do_ioctl_XXX() helpers. ++ * FIXME: create a macro to define this kind of entry ++ */ ++ { TARGET_SIOCGSTAMP_OLD, TARGET_SIOCGSTAMP_OLD, ++ "SIOCGSTAMP_OLD", IOC_R, do_ioctl_SIOCGSTAMP }, ++ { TARGET_SIOCGSTAMPNS_OLD, TARGET_SIOCGSTAMPNS_OLD, ++ "SIOCGSTAMPNS_OLD", IOC_R, do_ioctl_SIOCGSTAMPNS }, ++ { TARGET_SIOCGSTAMP_NEW, TARGET_SIOCGSTAMP_NEW, ++ "SIOCGSTAMP_NEW", IOC_R, do_ioctl_SIOCGSTAMP }, ++ { TARGET_SIOCGSTAMPNS_NEW, TARGET_SIOCGSTAMPNS_NEW, ++ "SIOCGSTAMPNS_NEW", IOC_R, do_ioctl_SIOCGSTAMPNS }, + + IOCTL(RNDGETENTCNT, IOC_R, MK_PTR(TYPE_INT)) + IOCTL(RNDADDTOENTCNT, IOC_W, MK_PTR(TYPE_INT)) +diff --git a/linux-user/syscall.c b/linux-user/syscall.c +index 39a37496fed..8367cb138df 100644 +--- a/linux-user/syscall.c ++++ b/linux-user/syscall.c +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -1126,8 +1127,9 @@ static inline abi_long copy_from_user_timeval(struct timeval *tv, + { + struct target_timeval *target_tv; + +- if (!lock_user_struct(VERIFY_READ, target_tv, target_tv_addr, 1)) ++ if (!lock_user_struct(VERIFY_READ, target_tv, target_tv_addr, 1)) { + return -TARGET_EFAULT; ++ } + + __get_user(tv->tv_sec, &target_tv->tv_sec); + __get_user(tv->tv_usec, &target_tv->tv_usec); +@@ -1142,8 +1144,26 @@ static inline abi_long copy_to_user_timeval(abi_ulong target_tv_addr, + { + struct target_timeval *target_tv; + +- if (!lock_user_struct(VERIFY_WRITE, target_tv, target_tv_addr, 0)) ++ if (!lock_user_struct(VERIFY_WRITE, target_tv, target_tv_addr, 0)) { ++ return -TARGET_EFAULT; ++ } ++ ++ __put_user(tv->tv_sec, &target_tv->tv_sec); ++ __put_user(tv->tv_usec, &target_tv->tv_usec); ++ ++ unlock_user_struct(target_tv, target_tv_addr, 1); ++ ++ return 0; ++} ++ ++static inline abi_long copy_to_user_timeval64(abi_ulong target_tv_addr, ++ const struct timeval *tv) ++{ ++ struct target__kernel_sock_timeval *target_tv; ++ ++ if (!lock_user_struct(VERIFY_WRITE, target_tv, target_tv_addr, 0)) { + return -TARGET_EFAULT; ++ } + + __put_user(tv->tv_sec, &target_tv->tv_sec); + __put_user(tv->tv_usec, &target_tv->tv_usec); +@@ -1153,6 +1173,48 @@ static inline abi_long copy_to_user_timeval(abi_ulong target_tv_addr, + return 0; + } + ++static inline abi_long target_to_host_timespec(struct timespec *host_ts, ++ abi_ulong target_addr) ++{ ++ struct target_timespec *target_ts; ++ ++ if (!lock_user_struct(VERIFY_READ, target_ts, target_addr, 1)) { ++ return -TARGET_EFAULT; ++ } ++ __get_user(host_ts->tv_sec, &target_ts->tv_sec); ++ __get_user(host_ts->tv_nsec, &target_ts->tv_nsec); ++ unlock_user_struct(target_ts, target_addr, 0); ++ return 0; ++} ++ ++static inline abi_long host_to_target_timespec(abi_ulong target_addr, ++ struct timespec *host_ts) ++{ ++ struct target_timespec *target_ts; ++ ++ if (!lock_user_struct(VERIFY_WRITE, target_ts, target_addr, 0)) { ++ return -TARGET_EFAULT; ++ } ++ __put_user(host_ts->tv_sec, &target_ts->tv_sec); ++ __put_user(host_ts->tv_nsec, &target_ts->tv_nsec); ++ unlock_user_struct(target_ts, target_addr, 1); ++ return 0; ++} ++ ++static inline abi_long host_to_target_timespec64(abi_ulong target_addr, ++ struct timespec *host_ts) ++{ ++ struct target__kernel_timespec *target_ts; ++ ++ if (!lock_user_struct(VERIFY_WRITE, target_ts, target_addr, 0)) { ++ return -TARGET_EFAULT; ++ } ++ __put_user(host_ts->tv_sec, &target_ts->tv_sec); ++ __put_user(host_ts->tv_nsec, &target_ts->tv_nsec); ++ unlock_user_struct(target_ts, target_addr, 1); ++ return 0; ++} ++ + static inline abi_long copy_from_user_timezone(struct timezone *tz, + abi_ulong target_tz_addr) + { +@@ -4899,6 +4961,54 @@ static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp, + return get_errno(safe_ioctl(fd, ie->host_cmd, sig)); + } + ++static abi_long do_ioctl_SIOCGSTAMP(const IOCTLEntry *ie, uint8_t *buf_temp, ++ int fd, int cmd, abi_long arg) ++{ ++ struct timeval tv; ++ abi_long ret; ++ ++ ret = get_errno(safe_ioctl(fd, SIOCGSTAMP, &tv)); ++ if (is_error(ret)) { ++ return ret; ++ } ++ ++ if (cmd == (int)TARGET_SIOCGSTAMP_OLD) { ++ if (copy_to_user_timeval(arg, &tv)) { ++ return -TARGET_EFAULT; ++ } ++ } else { ++ if (copy_to_user_timeval64(arg, &tv)) { ++ return -TARGET_EFAULT; ++ } ++ } ++ ++ return ret; ++} ++ ++static abi_long do_ioctl_SIOCGSTAMPNS(const IOCTLEntry *ie, uint8_t *buf_temp, ++ int fd, int cmd, abi_long arg) ++{ ++ struct timespec ts; ++ abi_long ret; ++ ++ ret = get_errno(safe_ioctl(fd, SIOCGSTAMPNS, &ts)); ++ if (is_error(ret)) { ++ return ret; ++ } ++ ++ if (cmd == (int)TARGET_SIOCGSTAMPNS_OLD) { ++ if (host_to_target_timespec(arg, &ts)) { ++ return -TARGET_EFAULT; ++ } ++ } else{ ++ if (host_to_target_timespec64(arg, &ts)) { ++ return -TARGET_EFAULT; ++ } ++ } ++ ++ return ret; ++} ++ + #ifdef TIOCGPTPEER + static abi_long do_ioctl_tiocgptpeer(const IOCTLEntry *ie, uint8_t *buf_temp, + int fd, int cmd, abi_long arg) +@@ -6271,32 +6381,6 @@ static inline abi_long target_ftruncate64(void *cpu_env, abi_long arg1, + } + #endif + +-static inline abi_long target_to_host_timespec(struct timespec *host_ts, +- abi_ulong target_addr) +-{ +- struct target_timespec *target_ts; +- +- if (!lock_user_struct(VERIFY_READ, target_ts, target_addr, 1)) +- return -TARGET_EFAULT; +- __get_user(host_ts->tv_sec, &target_ts->tv_sec); +- __get_user(host_ts->tv_nsec, &target_ts->tv_nsec); +- unlock_user_struct(target_ts, target_addr, 0); +- return 0; +-} +- +-static inline abi_long host_to_target_timespec(abi_ulong target_addr, +- struct timespec *host_ts) +-{ +- struct target_timespec *target_ts; +- +- if (!lock_user_struct(VERIFY_WRITE, target_ts, target_addr, 0)) +- return -TARGET_EFAULT; +- __put_user(host_ts->tv_sec, &target_ts->tv_sec); +- __put_user(host_ts->tv_nsec, &target_ts->tv_nsec); +- unlock_user_struct(target_ts, target_addr, 1); +- return 0; +-} +- + static inline abi_long target_to_host_itimerspec(struct itimerspec *host_itspec, + abi_ulong target_addr) + { +diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h +index fffa89f2564..06622703008 100644 +--- a/linux-user/syscall_defs.h ++++ b/linux-user/syscall_defs.h +@@ -209,16 +209,34 @@ struct target_linger { + abi_int l_linger; /* How long to linger for */ + }; + ++#if defined(TARGET_SPARC64) && !defined(TARGET_ABI32) ++struct target_timeval { ++ abi_long tv_sec; ++ abi_int tv_usec; ++}; ++#define target__kernel_sock_timeval target_timeval ++#else + struct target_timeval { + abi_long tv_sec; + abi_long tv_usec; + }; + ++struct target__kernel_sock_timeval { ++ abi_llong tv_sec; ++ abi_llong tv_usec; ++}; ++#endif ++ + struct target_timespec { + abi_long tv_sec; + abi_long tv_nsec; + }; + ++struct target__kernel_timespec { ++ abi_llong tv_sec; ++ abi_llong tv_nsec; ++}; ++ + struct target_timezone { + abi_int tz_minuteswest; + abi_int tz_dsttime; +@@ -749,8 +767,16 @@ struct target_pollfd { + #define TARGET_SIOCATMARK 0x8905 + #define TARGET_SIOCGPGRP 0x8904 + #endif +-#define TARGET_SIOCGSTAMP 0x8906 /* Get stamp (timeval) */ +-#define TARGET_SIOCGSTAMPNS 0x8907 /* Get stamp (timespec) */ ++#if defined(TARGET_SH4) ++#define TARGET_SIOCGSTAMP_OLD TARGET_IOR('s', 100, struct target_timeval) ++#define TARGET_SIOCGSTAMPNS_OLD TARGET_IOR('s', 101, struct target_timespec) ++#else ++#define TARGET_SIOCGSTAMP_OLD 0x8906 ++#define TARGET_SIOCGSTAMPNS_OLD 0x8907 ++#endif ++ ++#define TARGET_SIOCGSTAMP_NEW TARGET_IOR(0x89, 0x06, abi_llong[2]) ++#define TARGET_SIOCGSTAMPNS_NEW TARGET_IOR(0x89, 0x07, abi_llong[2]) + + /* Networking ioctls */ + #define TARGET_SIOCADDRT 0x890B /* add routing table entry */ +diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h +index b98a23b0f1b..4e369838262 100644 +--- a/linux-user/syscall_types.h ++++ b/linux-user/syscall_types.h +@@ -14,12 +14,6 @@ STRUCT(serial_icounter_struct, + STRUCT(sockaddr, + TYPE_SHORT, MK_ARRAY(TYPE_CHAR, 14)) + +-STRUCT(timeval, +- MK_ARRAY(TYPE_LONG, 2)) +- +-STRUCT(timespec, +- MK_ARRAY(TYPE_LONG, 2)) +- + STRUCT(rtentry, + TYPE_ULONG, MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), + TYPE_SHORT, TYPE_SHORT, TYPE_ULONG, TYPE_PTRVOID, TYPE_SHORT, TYPE_PTRVOID, diff --git a/buildroot/package/qemu/3.1.1.1/0003-util-cacheinfo-fix-crash-when-compiling-with-uClibc.patch b/buildroot/package/qemu/3.1.1.1/0003-util-cacheinfo-fix-crash-when-compiling-with-uClibc.patch new file mode 100644 index 000000000..d1b9e3570 --- /dev/null +++ b/buildroot/package/qemu/3.1.1.1/0003-util-cacheinfo-fix-crash-when-compiling-with-uClibc.patch @@ -0,0 +1,43 @@ +From d82b8540ecaf3cb09a033e4971d8645d3343211e Mon Sep 17 00:00:00 2001 +From: Carlos Santos +Date: Wed, 16 Oct 2019 22:27:30 -0300 +Subject: [PATCH] util/cacheinfo: fix crash when compiling with uClibc + +uClibc defines _SC_LEVEL1_ICACHE_LINESIZE and _SC_LEVEL1_DCACHE_LINESIZE +but the corresponding sysconf calls returns -1, which is a valid result, +meaning that the limit is indeterminate. + +Handle this situation using the fallback values instead of crashing due +to an assertion failure. + +Signed-off-by: Carlos Santos +--- + util/cacheinfo.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/util/cacheinfo.c b/util/cacheinfo.c +index ea6f3e99bf..d94dc6adc8 100644 +--- a/util/cacheinfo.c ++++ b/util/cacheinfo.c +@@ -93,10 +93,16 @@ static void sys_cache_info(int *isize, int *dsize) + static void sys_cache_info(int *isize, int *dsize) + { + # ifdef _SC_LEVEL1_ICACHE_LINESIZE +- *isize = sysconf(_SC_LEVEL1_ICACHE_LINESIZE); ++ int tmp_isize = (int) sysconf(_SC_LEVEL1_ICACHE_LINESIZE); ++ if (tmp_isize > 0) { ++ *isize = tmp_isize; ++ } + # endif + # ifdef _SC_LEVEL1_DCACHE_LINESIZE +- *dsize = sysconf(_SC_LEVEL1_DCACHE_LINESIZE); ++ int tmp_dsize = (int) sysconf(_SC_LEVEL1_DCACHE_LINESIZE); ++ if (tmp_dsize > 0) { ++ *dsize = tmp_dsize; ++ } + # endif + } + #endif /* sys_cache_info */ +-- +2.18.1 + diff --git a/buildroot/package/qemu/3.1.1.1/0004-linux-user-assume-__NR_gettid-always-exists.patch b/buildroot/package/qemu/3.1.1.1/0004-linux-user-assume-__NR_gettid-always-exists.patch new file mode 100644 index 000000000..3475ad5b1 --- /dev/null +++ b/buildroot/package/qemu/3.1.1.1/0004-linux-user-assume-__NR_gettid-always-exists.patch @@ -0,0 +1,44 @@ +From 184943d827ce09375284e6fbb9fd5eeb9e369529 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= +Date: Wed, 20 Mar 2019 16:18:41 +0000 +Subject: [PATCH] linux-user: assume __NR_gettid always exists +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The gettid syscall was introduced in Linux 2.4.11. This is old enough +that we can assume it always exists and thus not bother with the +conditional backcompat logic. + +Signed-off-by: Daniel P. Berrangé +Reviewed-by: Richard Henderson +Reviewed-by: Laurent Vivier +Message-Id: <20190320161842.13908-2-berrange@redhat.com> +Signed-off-by: Laurent Vivier +--- + linux-user/syscall.c | 8 -------- + 1 file changed, 8 deletions(-) + +diff --git a/linux-user/syscall.c b/linux-user/syscall.c +index 208fd1813d..11729f382c 100644 +--- a/linux-user/syscall.c ++++ b/linux-user/syscall.c +@@ -249,15 +249,7 @@ static type name (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5, \ + #define TARGET_NR__llseek TARGET_NR_llseek + #endif + +-#ifdef __NR_gettid + _syscall0(int, gettid) +-#else +-/* This is a replacement for the host gettid() and must return a host +- errno. */ +-static int gettid(void) { +- return -ENOSYS; +-} +-#endif + + /* For the 64-bit guest on 32-bit host case we must emulate + * getdents using getdents64, because otherwise the host +-- +2.23.0 + diff --git a/buildroot/package/qemu/3.1.1.1/0005-linux-user-rename-gettid-to-sys_gettid-to-avoid-clas.patch b/buildroot/package/qemu/3.1.1.1/0005-linux-user-rename-gettid-to-sys_gettid-to-avoid-clas.patch new file mode 100644 index 000000000..8e49bc0c9 --- /dev/null +++ b/buildroot/package/qemu/3.1.1.1/0005-linux-user-rename-gettid-to-sys_gettid-to-avoid-clas.patch @@ -0,0 +1,91 @@ +From 71ba74f67eaca21b0cc9d96f534ad3b9a7161400 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= +Date: Wed, 20 Mar 2019 16:18:42 +0000 +Subject: [PATCH] linux-user: rename gettid() to sys_gettid() to avoid clash + with glibc +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The glibc-2.29.9000-6.fc31.x86_64 package finally includes the gettid() +function as part of unistd.h when __USE_GNU is defined. This clashes +with linux-user code which unconditionally defines this function name +itself. + +/home/berrange/src/virt/qemu/linux-user/syscall.c:253:16: error: static declaration of ‘gettid’ follows non-static declaration + 253 | _syscall0(int, gettid) + | ^~~~~~ +/home/berrange/src/virt/qemu/linux-user/syscall.c:184:13: note: in definition of macro ‘_syscall0’ + 184 | static type name (void) \ + | ^~~~ +In file included from /usr/include/unistd.h:1170, + from /home/berrange/src/virt/qemu/include/qemu/osdep.h:107, + from /home/berrange/src/virt/qemu/linux-user/syscall.c:20: +/usr/include/bits/unistd_ext.h:34:16: note: previous declaration of ‘gettid’ was here + 34 | extern __pid_t gettid (void) __THROW; + | ^~~~~~ + CC aarch64-linux-user/linux-user/signal.o +make[1]: *** [/home/berrange/src/virt/qemu/rules.mak:69: linux-user/syscall.o] Error 1 +make[1]: *** Waiting for unfinished jobs.... +make: *** [Makefile:449: subdir-aarch64-linux-user] Error 2 + +While we could make our definition conditional and rely on glibc's impl, +this patch simply renames our definition to sys_gettid() which is a +common pattern in this file. + +Signed-off-by: Daniel P. Berrangé +Reviewed-by: Richard Henderson +Reviewed-by: Laurent Vivier +Message-Id: <20190320161842.13908-3-berrange@redhat.com> +Signed-off-by: Laurent Vivier +--- + linux-user/syscall.c | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/linux-user/syscall.c b/linux-user/syscall.c +index 11729f382c..96cd4bf86d 100644 +--- a/linux-user/syscall.c ++++ b/linux-user/syscall.c +@@ -249,7 +249,8 @@ static type name (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5, \ + #define TARGET_NR__llseek TARGET_NR_llseek + #endif + +-_syscall0(int, gettid) ++#define __NR_sys_gettid __NR_gettid ++_syscall0(int, sys_gettid) + + /* For the 64-bit guest on 32-bit host case we must emulate + * getdents using getdents64, because otherwise the host +@@ -5434,7 +5435,7 @@ static void *clone_func(void *arg) + cpu = ENV_GET_CPU(env); + thread_cpu = cpu; + ts = (TaskState *)cpu->opaque; +- info->tid = gettid(); ++ info->tid = sys_gettid(); + task_settid(ts); + if (info->child_tidptr) + put_user_u32(info->tid, info->child_tidptr); +@@ -5579,9 +5580,9 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp, + mapping. We can't repeat the spinlock hack used above because + the child process gets its own copy of the lock. */ + if (flags & CLONE_CHILD_SETTID) +- put_user_u32(gettid(), child_tidptr); ++ put_user_u32(sys_gettid(), child_tidptr); + if (flags & CLONE_PARENT_SETTID) +- put_user_u32(gettid(), parent_tidptr); ++ put_user_u32(sys_gettid(), parent_tidptr); + ts = (TaskState *)cpu->opaque; + if (flags & CLONE_SETTLS) + cpu_set_tls (env, newtls); +@@ -10621,7 +10622,7 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1, + return TARGET_PAGE_SIZE; + #endif + case TARGET_NR_gettid: +- return get_errno(gettid()); ++ return get_errno(sys_gettid()); + #ifdef TARGET_NR_readahead + case TARGET_NR_readahead: + #if TARGET_ABI_BITS == 32 +-- +2.23.0 + diff --git a/buildroot/package/qemu/qemu.hash b/buildroot/package/qemu/qemu.hash index 338d2ae50..ada80bf61 100644 --- a/buildroot/package/qemu/qemu.hash +++ b/buildroot/package/qemu/qemu.hash @@ -1,4 +1,4 @@ # Locally computed, tarball verified with GPG signature -sha256 6a0508df079a0a33c2487ca936a56c12122f105b8a96a44374704bef6c69abfc qemu-3.1.0.tar.xz +sha256 b148fc3c7382c5addd915db433383160ca7b840bc6ea90bb0d35c6b253526d56 qemu-3.1.1.1.tar.xz sha256 6f04ae8364d0079a192b14635f4b1da294ce18724c034c39a6a41d1b09df6100 COPYING sha256 48ffe9fc7f1d5462dbd19340bc4dd1d8a9e37c61ed535813e614cbe4a5f0d4df COPYING.LIB diff --git a/buildroot/package/qemu/qemu.mk b/buildroot/package/qemu/qemu.mk index b858efe3f..6960b8ab5 100644 --- a/buildroot/package/qemu/qemu.mk +++ b/buildroot/package/qemu/qemu.mk @@ -4,7 +4,7 @@ # ################################################################################ -QEMU_VERSION = 3.1.0 +QEMU_VERSION = 3.1.1.1 QEMU_SOURCE = qemu-$(QEMU_VERSION).tar.xz QEMU_SITE = http://download.qemu.org QEMU_LICENSE = GPL-2.0, LGPL-2.1, MIT, BSD-3-Clause, BSD-2-Clause, Others/BSD-1c @@ -257,8 +257,11 @@ HOST_QEMU_OPTS += --enable-vde HOST_QEMU_DEPENDENCIES += host-vde2 endif -ifdef ($(BR2_PACKAGE_HOST_QEMU_VIRTFS),y) +ifeq ($(BR2_PACKAGE_HOST_QEMU_VIRTFS),y) HOST_QEMU_OPTS += --enable-virtfs +HOST_QEMU_DEPENDENCIES += host-libcap +else +HOST_QEMU_OPTS += --disable-virtfs endif # Override CPP, as it expects to be able to call it like it'd diff --git a/buildroot/package/qt5/qt5.mk b/buildroot/package/qt5/qt5.mk index 88ba1958d..c8c07a988 100644 --- a/buildroot/package/qt5/qt5.mk +++ b/buildroot/package/qt5/qt5.mk @@ -13,7 +13,7 @@ QT5_VERSION_MAJOR = 5.6 QT5_VERSION = $(QT5_VERSION_MAJOR).3 QT5_SOURCE_TARBALL_PREFIX = opensource-src endif -QT5_SITE = https://download.qt.io/official_releases/qt/$(QT5_VERSION_MAJOR)/$(QT5_VERSION)/submodules +QT5_SITE = https://download.qt.io/archive/qt/$(QT5_VERSION_MAJOR)/$(QT5_VERSION)/submodules include $(sort $(wildcard package/qt5/*/*.mk)) diff --git a/buildroot/package/qt5/qt5base/5.11.3/0006-Fix-compile-issue-with-gcc-9.patch b/buildroot/package/qt5/qt5base/5.11.3/0006-Fix-compile-issue-with-gcc-9.patch new file mode 100644 index 000000000..0a5507456 --- /dev/null +++ b/buildroot/package/qt5/qt5base/5.11.3/0006-Fix-compile-issue-with-gcc-9.patch @@ -0,0 +1,32 @@ +From e094806951ff7337b5b0c534db479e3808f153a7 Mon Sep 17 00:00:00 2001 +From: Allan Sandfeld Jensen +Date: Tue, 13 Nov 2018 16:00:23 +0100 +Subject: [PATCH] Fix compile issue with gcc 9 + +It appears messenne_twisters in the latest libstdc++ has one more +requirement before it is willing to construct with our +SystemGenerator struct as an sseq provider. + +Change-Id: If38151d1fa6f40a80274acc26d9ed6b4ac6049fe +Reviewed-by: Giuseppe D'Angelo +Reviewed-by: Thiago Macieira +Signed-off-by: Julien Beraud +--- + src/corelib/global/qrandom.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/corelib/global/qrandom.cpp b/src/corelib/global/qrandom.cpp +index ebf9864b15..577736a867 100644 +--- a/src/corelib/global/qrandom.cpp ++++ b/src/corelib/global/qrandom.cpp +@@ -218,6 +218,7 @@ struct QRandomGenerator::SystemGenerator + #endif // Q_OS_WINRT + + static SystemGenerator &self(); ++ typedef quint32 result_type; + void generate(quint32 *begin, quint32 *end) Q_DECL_NOEXCEPT_EXPR(FillBufferNoexcept); + + // For std::mersenne_twister_engine implementations that use something +-- +2.23.0 + diff --git a/buildroot/package/qt5/qt5base/5.6.3/0004-fix-icu-build-for-qt5webkit.patch b/buildroot/package/qt5/qt5base/5.6.3/0004-fix-icu-build-for-qt5webkit.patch new file mode 100644 index 000000000..0d166b848 --- /dev/null +++ b/buildroot/package/qt5/qt5base/5.6.3/0004-fix-icu-build-for-qt5webkit.patch @@ -0,0 +1,74 @@ +From: Arfrever Frehtes Taifersar Arahesis +Date: Mon, 23 Nov 2015 03:54:00 +0000 +Subject: [PATCH 1/1] When UChar is defined as char16_t in ICU, then qtbase fails to detect ICU. + +Build fails with following error: + +ICU auto-detection... () +x86_64-pc-linux-gnu-g++ -c -march=core2 -O2 -fno-ident \ + -frecord-gcc-switches -pipe -Wall -O2 -Wall -W -fPIC -I. \ + -I/var/tmp/portage/dev-qt/qtcore-5.5.1/work/qtbase-opensource-src-5.5.1/mkspecs/linux-g++ -o icu.o icu.cpp +In file included from /usr/include/unicode/utypes.h:36:0, + from icu.cpp:34: +/usr/include/unicode/umachine.h:306:13: error: 'char16_t' does not name a type + typedef char16_t UChar; + ^ +In file included from /usr/include/unicode/utypes.h:37:0, + from icu.cpp:34: +/usr/include/unicode/uversion.h:165:55: error: 'UChar' does not name a type + u_versionFromUString(UVersionInfo versionArray, const UChar *versionString); + ^ +... +Makefile:177: recipe for target 'icu.o' failed +gmake: *** [icu.o] Error 1 +ICU disabled. +The ICU library support cannot be enabled. + +This change isn't needed for new Qt versions, because c++11 is mandatory since 5.7. +Upstream desided not to merge this change into old branches, like 5.6. +Original patch was slightly modified to apply cleanly on Qt 5.6.3. + +Fetch from: https://bugreports.qt.io/secure/attachment/52478/qtbase-5.5.1-icu.patch +Signed-off-by: Arfrever Frehtes Taifersar Arahesis +Signed-off-by: Andrey Skvortsov + +--- +diff -purN qt5base-5.6.3.orig/config.tests/unix/compile.test qt5base-5.6.3/config.tests/unix/compile.test +--- qt5base-5.6.3.orig/config.tests/unix/compile.test 2019-08-11 00:35:33.181545706 +0300 ++++ qt5base-5.6.3/config.tests/unix/compile.test 2017-09-06 15:13:54.000000000 +0300 +@@ -47,7 +47,7 @@ while [ "$#" -gt 0 ]; do + INC=`echo $PARAM | sed -e 's/^-I//'` + INCLUDEPATH="$INCLUDEPATH \"$INC\"" + ;; +- -f*|-D*) ++ -f*|-D*|-std=*) + CFLAGS="$CFLAGS \"$PARAM\"" + CXXFLAGS="$CXXFLAGS \"$PARAM\"" + ;; +diff -purN qt5base-5.6.3.orig/configure qt5base-5.6.3/configure +--- qt5base-5.6.3.orig/configure 2019-08-11 00:57:45.488214036 +0300 ++++ qt5base-5.6.3/configure 2017-09-06 15:13:54.000000000 +0300 +@@ -5183,8 +5183,10 @@ fi + + # auto-detect libicu support + if [ "$CFG_ICU" != "no" ]; then +- if compileTest unix/icu "ICU"; then ++ QT_CXXFLAGS_ICU=`icu-config --cxxflags 2>/dev/null` ++ if compileTest unix/icu "ICU" $QT_CXXFLAGS_ICU; then + [ "$CFG_ICU" = "auto" ] && CFG_ICU=yes ++ QMakeVar set QT_CXXFLAGS_ICU "$QT_CXXFLAGS_ICU" + else + if [ "$CFG_ICU" = "auto" ]; then + CFG_ICU=no +diff -purN qt5base-5.6.3.orig/doc/Makefile qt5base-5.6.3/doc/Makefile +diff -purN qt5base-5.6.3.orig/src/corelib/tools/tools.pri qt5base-5.6.3/src/corelib/tools/tools.pri +--- qt5base-5.6.3.orig/src/corelib/tools/tools.pri 2019-08-11 00:45:45.073818635 +0300 ++++ qt5base-5.6.3/src/corelib/tools/tools.pri 2017-09-06 15:13:54.000000000 +0300 +@@ -169,6 +169,7 @@ contains(QT_CONFIG,icu) { + tools/qcollator_icu.cpp \ + tools/qtimezoneprivate_icu.cpp + DEFINES += QT_USE_ICU ++ QMAKE_CXXFLAGS += $$QT_CXXFLAGS_ICU + } else: win32 { + SOURCES += tools/qcollator_win.cpp + } else: macx { diff --git a/buildroot/package/qt5/qt5base/qmake.conf.in b/buildroot/package/qt5/qt5base/qmake.conf.in index f14527aa7..2eb564e17 100644 --- a/buildroot/package/qt5/qt5base/qmake.conf.in +++ b/buildroot/package/qt5/qt5base/qmake.conf.in @@ -15,7 +15,10 @@ QMAKE_CXX = $${CROSS_COMPILE}g++ # modifications to gcc-base.conf QMAKE_CFLAGS += $${BR_COMPILER_CFLAGS} QMAKE_CXXFLAGS += $${BR_COMPILER_CXXFLAGS} -QMAKE_CXXFLAGS_RELEASE += -O3 +QMAKE_CFLAGS_OPTIMIZE = +QMAKE_CFLAGS_OPTIMIZE_DEBUG = +QMAKE_CFLAGS_OPTIMIZE_FULL = +QMAKE_CFLAGS_OPTIMIZE_SIZE = CONFIG += nostrip QMAKE_LIBS += -lrt -lpthread -ldl diff --git a/buildroot/package/qt5/qt5base/qt5base.mk b/buildroot/package/qt5/qt5base/qt5base.mk index 1c20b67e4..da1a11b26 100644 --- a/buildroot/package/qt5/qt5base/qt5base.mk +++ b/buildroot/package/qt5/qt5base/qt5base.mk @@ -27,6 +27,13 @@ QT5BASE_CONFIGURE_OPTS += \ -no-pch \ -shared +# starting from version 5.9.0, -optimize-debug is enabled by default +# for debug builds and it overrides -O* with -Og which is not what we +# want. +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5BASE_CONFIGURE_OPTS += -no-optimize-debug +endif + ifeq ($(BR2_PACKAGE_QT5_VERSION_5_6),y) QT5BASE_DEPENDENCIES += pcre else diff --git a/buildroot/package/qt5/qt5enginio/Config.in b/buildroot/package/qt5/qt5enginio/Config.in index ac2d13b3a..f84d23477 100644 --- a/buildroot/package/qt5/qt5enginio/Config.in +++ b/buildroot/package/qt5/qt5enginio/Config.in @@ -1,8 +1,8 @@ config BR2_PACKAGE_QT5ENGINIO bool "qt5enginio" + depends on BR2_PACKAGE_QT5BASE_OPENSSL select BR2_PACKAGE_QT5BASE_GUI select BR2_PACKAGE_QT5BASE_NETWORK - select BR2_PACKAGE_OPENSSL help Qt is a cross-platform application and UI framework for developers using C++. @@ -15,9 +15,12 @@ config BR2_PACKAGE_QT5ENGINIO http://doc.qt.io/archives/qt-5.5/enginio-index.html -# Forcibly selecting libressl is not possible because it is from a choice, and -# depending on it is also not possible because we select openssl. So just a -# a warning. -comment "qt5enginio needs libressl for Qt5.6" +# When Qt 5.6 is removed, replace the depends on +# BR2_PACKAGE_QT5BASE_OPENSSL above by a select BR2_PACKAGE_OPENSSL. +comment "qt5enginio needs libressl" depends on BR2_PACKAGE_QT5_VERSION_5_6 - depends on !BR2_PACKAGE_LIBRESSL + depends on !BR2_PACKAGE_QT5BASE_OPENSSL + +comment "qt5enginio needs openssl" + depends on BR2_PACKAGE_QT5_VERSION_LATEST + depends on !BR2_PACKAGE_QT5BASE_OPENSSL diff --git a/buildroot/package/quagga/quagga.mk b/buildroot/package/quagga/quagga.mk index 420d72c79..ef18c42a8 100644 --- a/buildroot/package/quagga/quagga.mk +++ b/buildroot/package/quagga/quagga.mk @@ -18,6 +18,11 @@ QUAGGA_CONF_OPTS = \ --sysconfdir=/etc/quagga \ --localstatedir=/var/run/quagga +# quagga has its own internal copy of getopt_long. To avoid conflicts with libc's +# getopt, we need to make sure that the getopt function itself is also built. +QUAGGA_CONF_ENV = \ + CFLAGS="$(TARGET_CFLAGS) -DREALLY_NEED_PLAIN_GETOPT" + ifeq ($(BR2_PACKAGE_LIBCAP),y) QUAGGA_CONF_OPTS += --enable-capabilities QUAGGA_DEPENDENCIES += libcap @@ -58,6 +63,16 @@ define QUAGGA_PERMISSIONS /etc/quagga d 755 quagga quagga - - - - - endef +# In order for the QUAGGA_PERMISSIONS variable above to work, +# /etc/quagga has to exist. However, this package without any +# sub-option enabled will not create /etc/quagga, so let's create it +# unconditionally in a post-install hook, in case it hasn't been +# already created by the quagga installation. +define QUAGGA_CREATE_ETC_QUAGGA + mkdir -p $(TARGET_DIR)/etc/quagga +endef +QUAGGA_POST_INSTALL_TARGET_HOOKS += QUAGGA_CREATE_ETC_QUAGGA + ifeq ($(BR2_PACKAGE_QUAGGA_NHRPD),y) QUAGGA_CONF_OPTS += --enable-nhrpd QUAGGA_DEPENDENCIES += c-ares diff --git a/buildroot/package/rabbitmq-c/rabbitmq-c.hash b/buildroot/package/rabbitmq-c/rabbitmq-c.hash index 0af88774e..eb5762651 100644 --- a/buildroot/package/rabbitmq-c/rabbitmq-c.hash +++ b/buildroot/package/rabbitmq-c/rabbitmq-c.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 316c0d156452b488124806911a62e0c2aa8a546d38fc8324719cd29aaa493024 rabbitmq-c-v0.9.0.tar.gz +sha256 6455efbaebad8891c59f274a852b75b5cc51f4d669dfc78d2ae7e6cc97fcd8c0 rabbitmq-c-0.10.0.tar.gz sha256 94a12c906acb31a66c2c8a6c1b6e46cab52bc5694c5ada2a06d86b05d3d3f422 LICENSE-MIT diff --git a/buildroot/package/rabbitmq-c/rabbitmq-c.mk b/buildroot/package/rabbitmq-c/rabbitmq-c.mk index 6385ccb6b..e059ff706 100644 --- a/buildroot/package/rabbitmq-c/rabbitmq-c.mk +++ b/buildroot/package/rabbitmq-c/rabbitmq-c.mk @@ -4,8 +4,8 @@ # ################################################################################ -RABBITMQ_C_VERSION = v0.9.0 -RABBITMQ_C_SITE = $(call github,alanxz,rabbitmq-c,$(RABBITMQ_C_VERSION)) +RABBITMQ_C_VERSION = 0.10.0 +RABBITMQ_C_SITE = $(call github,alanxz,rabbitmq-c,v$(RABBITMQ_C_VERSION)) RABBITMQ_C_LICENSE = MIT RABBITMQ_C_LICENSE_FILES = LICENSE-MIT RABBITMQ_C_INSTALL_STAGING = YES diff --git a/buildroot/package/rauc/Config.in b/buildroot/package/rauc/Config.in index 456f8f382..5091dc72a 100644 --- a/buildroot/package/rauc/Config.in +++ b/buildroot/package/rauc/Config.in @@ -7,6 +7,8 @@ config BR2_PACKAGE_RAUC select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_DBUS # run-time dependency select BR2_PACKAGE_SQUASHFS # run-time dependency + select BR2_PACKAGE_UBOOT_TOOLS if BR2_TARGET_UBOOT # run-time dependency + select BR2_PACKAGE_UBOOT_TOOLS_FWPRINTENV if BR2_TARGET_UBOOT help RAUC is the Robust Auto-Update Controller developed by Pengutronix. It supports updating embedded Linux diff --git a/buildroot/package/redis/redis.hash b/buildroot/package/redis/redis.hash index 0b4e25c61..59c16e12e 100644 --- a/buildroot/package/redis/redis.hash +++ b/buildroot/package/redis/redis.hash @@ -1,5 +1,5 @@ # From https://github.com/antirez/redis-hashes/blob/master/README -sha256 fc53e73ae7586bcdacb4b63875d1ff04f68c5474c1ddeda78f00e5ae2eed1bbb redis-4.0.11.tar.gz +sha256 1e1e18420a86cfb285933123b04a82e1ebda20bfb0a289472745a087587e93a7 redis-4.0.14.tar.gz # Locally calculated sha256 cbf420a3672475a6e2765e3c0984c1f81efe0212afb94a3c998ee63bfd661063 COPYING diff --git a/buildroot/package/redis/redis.mk b/buildroot/package/redis/redis.mk index da2307d69..783f2c5c4 100644 --- a/buildroot/package/redis/redis.mk +++ b/buildroot/package/redis/redis.mk @@ -4,7 +4,7 @@ # ################################################################################ -REDIS_VERSION = 4.0.11 +REDIS_VERSION = 4.0.14 REDIS_SITE = http://download.redis.io/releases REDIS_LICENSE = BSD-3-Clause (core); MIT and BSD family licenses (Bundled components) REDIS_LICENSE_FILES = COPYING diff --git a/buildroot/package/rpcbind/rpcbind.mk b/buildroot/package/rpcbind/rpcbind.mk index 5c216afc9..d69735d32 100644 --- a/buildroot/package/rpcbind/rpcbind.mk +++ b/buildroot/package/rpcbind/rpcbind.mk @@ -17,6 +17,7 @@ RPCBIND_CONF_OPTS += --with-rpcuser=root ifeq ($(BR2_INIT_SYSTEMD),y) RPCBIND_CONF_OPTS += --with-systemdsystemunitdir=/usr/lib/systemd/system +RPCBIND_DEPENDENCIES += systemd else RPCBIND_CONF_OPTS += --with-systemdsystemunitdir=no endif diff --git a/buildroot/package/ruby/ruby.hash b/buildroot/package/ruby/ruby.hash index fa9eddc27..d0aac6387 100644 --- a/buildroot/package/ruby/ruby.hash +++ b/buildroot/package/ruby/ruby.hash @@ -1,5 +1,5 @@ -# https://www.ruby-lang.org/en/news/2019/04/01/ruby-2-4-6-released/ -sha256 25da31b9815bfa9bba9f9b793c055a40a35c43c6adfb1fdbd81a09099f9b529c ruby-2.4.6.tar.xz +# https://www.ruby-lang.org/en/news/2019/10/02/ruby-2-4-9-released/ +sha256 0c4e000253ef7187feeb940a01a1c7594f28d63aa16f978e892a0e2864f58614 ruby-2.4.9.tar.xz # License files, Locally calculated sha256 609292a6d848ab223073944fc2d844449391a5ba2055a8b5baf1726bc13b39cb LEGAL sha256 f5eb1b2956d5f7a67b2e5722a3749bc2fe86f9c580f2e3f5a08519cf073b5864 COPYING diff --git a/buildroot/package/ruby/ruby.mk b/buildroot/package/ruby/ruby.mk index 10424020a..1899d1479 100644 --- a/buildroot/package/ruby/ruby.mk +++ b/buildroot/package/ruby/ruby.mk @@ -5,17 +5,17 @@ ################################################################################ RUBY_VERSION_MAJOR = 2.4 -RUBY_VERSION = $(RUBY_VERSION_MAJOR).6 +RUBY_VERSION = $(RUBY_VERSION_MAJOR).9 RUBY_VERSION_EXT = 2.4.0 RUBY_SITE = http://cache.ruby-lang.org/pub/ruby/$(RUBY_VERSION_MAJOR) RUBY_SOURCE = ruby-$(RUBY_VERSION).tar.xz RUBY_DEPENDENCIES = host-pkgconf host-ruby -HOST_RUBY_DEPENDENCIES = host-pkgconf +HOST_RUBY_DEPENDENCIES = host-pkgconf host-openssl RUBY_MAKE_ENV = $(TARGET_MAKE_ENV) RUBY_CONF_OPTS = --disable-install-doc --disable-rpath --disable-rubygems HOST_RUBY_CONF_OPTS = \ --disable-install-doc \ - --with-out-ext=curses,openssl,readline \ + --with-out-ext=curses,readline \ --without-gmp RUBY_LICENSE = Ruby or BSD-2-Clause, BSD-3-Clause, others RUBY_LICENSE_FILES = LEGAL COPYING BSDL diff --git a/buildroot/package/rygel/rygel.mk b/buildroot/package/rygel/rygel.mk index 1f917b207..1bf3ab435 100644 --- a/buildroot/package/rygel/rygel.mk +++ b/buildroot/package/rygel/rygel.mk @@ -14,11 +14,13 @@ RYGEL_DEPENDENCIES = \ gupnp-av \ libgee \ libmediaart \ - sqlite + sqlite \ + $(TARGET_NLS_DEPENDENCIES) RYGEL_INSTALL_STAGING = YES # We're patching configure.ac RYGEL_AUTORECONF = YES +RYGEL_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) RYGEL_CONF_OPTS += \ --disable-apidocs \ --disable-coverage \ diff --git a/buildroot/package/safeclib/0003-Define-_GNU_SOURCE-when-needed.patch b/buildroot/package/safeclib/0003-Define-_GNU_SOURCE-when-needed.patch new file mode 100644 index 000000000..cc9e58079 --- /dev/null +++ b/buildroot/package/safeclib/0003-Define-_GNU_SOURCE-when-needed.patch @@ -0,0 +1,115 @@ +From 94c7b765202fe50894425364834beca79e52b255 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Mon, 28 Oct 2019 17:09:43 +0100 +Subject: [PATCH] Define _GNU_SOURCE when needed + +Define _GNU_SOURCE to fix build with musl otherwise we'll got the +following build failures due to localtime_r, strnlen, gmtime_r and +asctime_r being undefined: + +os/localtime_s.c:124:12: error: implicit declaration of function 'localtime_r'; did you mean 'localtime_s'? [-Werror=implicit-function-declaration] + dest = localtime_r(timer, dest); + ^~~~~~~~~~~ + +io/gets_s.c:144:32: error: implicit declaration of function 'strnlen'; did you mean 'strlen'? [-Werror=implicit-function-declaration] + rsize_t len = (rsize_t)strnlen(dest, dmax); + ^~~~~~~ + strlen + +An other option would be to define AC_GNU_SOURCE in the configure.ac but +it seems that there is some handling of _GNU_SOURCE in +safeclib_private.h + +Fixes: + - http://autobuild.buildroot.net/results/31a4b647ec0dcd9f517f313ec6c7c8f56da1ee47 + +Signed-off-by: Fabrice Fontaine +[Retrieved from: +https://github.com/rurban/safeclib/commit/94c7b765202fe50894425364834beca79e52b255] +--- + src/extmem/memzero_s.c | 2 ++ + src/io/gets_s.c | 2 ++ + src/os/asctime_s.c | 2 ++ + src/os/ctime_s.c | 2 ++ + src/os/gmtime_s.c | 2 ++ + src/os/localtime_s.c | 2 ++ + 6 files changed, 12 insertions(+) + +diff --git a/src/extmem/memzero_s.c b/src/extmem/memzero_s.c +index 75107215..20cb2784 100644 +--- a/src/extmem/memzero_s.c ++++ b/src/extmem/memzero_s.c +@@ -31,6 +31,8 @@ + *------------------------------------------------------------------ + */ + ++#define _GNU_SOURCE ++ + #ifdef FOR_DOXYGEN + #include "safe_mem_lib.h" + #else +diff --git a/src/io/gets_s.c b/src/io/gets_s.c +index 09350b3d..be875a1c 100644 +--- a/src/io/gets_s.c ++++ b/src/io/gets_s.c +@@ -29,6 +29,8 @@ + *------------------------------------------------------------------ + */ + ++#define _GNU_SOURCE ++ + #ifdef FOR_DOXYGEN + #include "safe_lib.h" + #else +diff --git a/src/os/asctime_s.c b/src/os/asctime_s.c +index 42669844..01cefd8f 100644 +--- a/src/os/asctime_s.c ++++ b/src/os/asctime_s.c +@@ -29,6 +29,8 @@ + *------------------------------------------------------------------ + */ + ++#define _GNU_SOURCE ++ + #ifdef FOR_DOXYGEN + #include "safe_lib.h" + #else +diff --git a/src/os/ctime_s.c b/src/os/ctime_s.c +index 01b31f63..7a1a138c 100644 +--- a/src/os/ctime_s.c ++++ b/src/os/ctime_s.c +@@ -29,6 +29,8 @@ + *------------------------------------------------------------------ + */ + ++#define _GNU_SOURCE ++ + #ifdef FOR_DOXYGEN + #include "safe_lib.h" + #else +diff --git a/src/os/gmtime_s.c b/src/os/gmtime_s.c +index ff9a0e24..cd8f064f 100644 +--- a/src/os/gmtime_s.c ++++ b/src/os/gmtime_s.c +@@ -29,6 +29,8 @@ + *------------------------------------------------------------------ + */ + ++#define _GNU_SOURCE ++ + #ifdef FOR_DOXYGEN + #include "safe_lib.h" + #else +diff --git a/src/os/localtime_s.c b/src/os/localtime_s.c +index 0ce3324b..92ea21b9 100644 +--- a/src/os/localtime_s.c ++++ b/src/os/localtime_s.c +@@ -29,6 +29,8 @@ + *------------------------------------------------------------------ + */ + ++#define _GNU_SOURCE ++ + #ifdef FOR_DOXYGEN + #include "safe_lib.h" + #else diff --git a/buildroot/package/samba4/0002-Fix-compilation-of-Samba-4.7.4-with-disabled-ADS.patch b/buildroot/package/samba4/0002-Fix-compilation-of-Samba-4.7.4-with-disabled-ADS.patch deleted file mode 100644 index 45d3050a3..000000000 --- a/buildroot/package/samba4/0002-Fix-compilation-of-Samba-4.7.4-with-disabled-ADS.patch +++ /dev/null @@ -1,41 +0,0 @@ -From da2f2cf8e7a1dfcb661b707e4649cec1e8a0e79c Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Thu, 9 Aug 2018 10:03:06 +0200 -Subject: [PATCH] Fix compilation of Samba 4.7.4 with disabled ADS - -Downloaded from upstream mailinglist -https://lists.samba.org/archive/samba-technical/2017-December/124629.html - -Patch originates from FreeBSD: -https://svnweb.freebsd.org/ports/head/net/samba47/files/patch-source3__libads__kerberos_keytab.c?revision=457119&view=markup - -Signed-off-by: Bernd Kuhls ---- - source3/libads/kerberos_keytab.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/source3/libads/kerberos_keytab.c b/source3/libads/kerberos_keytab.c -index 37ac7ba985e..71250962090 100644 ---- a/source3/libads/kerberos_keytab.c -+++ b/source3/libads/kerberos_keytab.c -@@ -32,8 +32,6 @@ - - #ifdef HAVE_KRB5 - --#ifdef HAVE_ADS -- - /* This MAX_NAME_LEN is a constant defined in krb5.h */ - #ifndef MAX_KEYTAB_NAME_LEN - #define MAX_KEYTAB_NAME_LEN 1100 -@@ -85,6 +83,8 @@ out: - return ret; - } - -+#ifdef HAVE_ADS -+ - /********************************************************************** - Adds a single service principal, i.e. 'host' to the system keytab - ***********************************************************************/ --- -2.14.4 - diff --git a/buildroot/package/samba4/0003-Fix-uClibc-build-on-64bit-platforms-by-including-std.patch b/buildroot/package/samba4/0002-Fix-uClibc-build-on-64bit-platforms-by-including-std.patch similarity index 100% rename from buildroot/package/samba4/0003-Fix-uClibc-build-on-64bit-platforms-by-including-std.patch rename to buildroot/package/samba4/0002-Fix-uClibc-build-on-64bit-platforms-by-including-std.patch diff --git a/buildroot/package/samba4/0005-test_regfio.c-include-stdint.h-before-cmoka.h.patch b/buildroot/package/samba4/0003-test_regfio.c-include-stdint.h-before-cmoka.h.patch similarity index 100% rename from buildroot/package/samba4/0005-test_regfio.c-include-stdint.h-before-cmoka.h.patch rename to buildroot/package/samba4/0003-test_regfio.c-include-stdint.h-before-cmoka.h.patch diff --git a/buildroot/package/samba4/0004-Disable-build-of-manpages-and-documentation.patch b/buildroot/package/samba4/0004-Disable-build-of-manpages-and-documentation.patch deleted file mode 100644 index ad8712634..000000000 --- a/buildroot/package/samba4/0004-Disable-build-of-manpages-and-documentation.patch +++ /dev/null @@ -1,123 +0,0 @@ -From 3cd608170b99492bdd5fe3b7b8e7db61af199845 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Thu, 9 Aug 2018 09:59:06 +0200 -Subject: [PATCH] Disable build of manpages and documentation - -This patch fixes a bug described in an upstream bug report -https://bugzilla.samba.org/show_bug.cgi?id=9515 -which was closed as WONTFIX by disabling the build of manpages and -documentation. - -If installed on the host, samba4 uses the docbook-xsl package to build -parts of the documentation. This package is broken, on Debian for -example the bug reported to samba4 was fixed in the docbook-xsl package: -https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=765567 - -Since we do not provide a host version of docbook-xsl we need to disable -the build of manpages and documentation. - -Patch was downloaded from -https://github.com/LibreELEC/LibreELEC.tv/blob/master/packages/network/samba/patches/samba-950-no-man.patch - -[Bernd: rebased for samba-4.8.5] -Signed-off-by: Bernd Kuhls ---- - buildtools/wafsamba/wafsamba.py | 10 ++++----- - docs-xml/wscript_build | 40 ++++++++++++++++----------------- - source4/scripting/wscript_build | 4 ++-- - 3 files changed, 27 insertions(+), 27 deletions(-) - -diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py -index 4bb19d070e2..a255d841111 100644 ---- a/buildtools/wafsamba/wafsamba.py -+++ b/buildtools/wafsamba/wafsamba.py -@@ -335,9 +335,9 @@ def SAMBA_LIBRARY(bld, libname, source, - else: - bld.PKG_CONFIG_FILES(pc_files, vnum=vnum) - -- if (manpages is not None and 'XSLTPROC_MANPAGES' in bld.env and -- bld.env['XSLTPROC_MANPAGES']): -- bld.MANPAGES(manpages, install) -+# if (manpages is not None and 'XSLTPROC_MANPAGES' in bld.env and -+# bld.env['XSLTPROC_MANPAGES']): -+# bld.MANPAGES(manpages, install) - - - Build.BuildContext.SAMBA_LIBRARY = SAMBA_LIBRARY -@@ -442,8 +442,8 @@ def SAMBA_BINARY(bld, binname, source, - samba_ldflags = pie_ldflags - ) - -- if manpages is not None and 'XSLTPROC_MANPAGES' in bld.env and bld.env['XSLTPROC_MANPAGES']: -- bld.MANPAGES(manpages, install) -+# if manpages is not None and 'XSLTPROC_MANPAGES' in bld.env and bld.env['XSLTPROC_MANPAGES']: -+# bld.MANPAGES(manpages, install) - - Build.BuildContext.SAMBA_BINARY = SAMBA_BINARY - -diff --git a/docs-xml/wscript_build b/docs-xml/wscript_build -index ec5d28fc62a..f81c125bcd4 100644 ---- a/docs-xml/wscript_build -+++ b/docs-xml/wscript_build -@@ -148,23 +148,23 @@ bld.SAMBA_GENERATOR(parameter_all, - rule=smbdotconf_generate_parameter_list, - dep_vars=bld.dynconfig_varnames()) - --def SMBDOTCONF_MANPAGE(bld, target): -- ''' assemble and build smb.conf.5 manual page''' -- bld.SAMBAMANPAGES(target, parameter_all) -- --if ('XSLTPROC_MANPAGES' in bld.env and bld.env['XSLTPROC_MANPAGES']): -- -- SMBDOTCONF_MANPAGE(bld, 'manpages/smb.conf.5') -- bld.SAMBAMANPAGES(manpages) -- -- if bld.CONFIG_SET('WITH_PAM_MODULES') and bld.CONFIG_SET('HAVE_PAM_START'): -- bld.SAMBAMANPAGES(pam_winbind_manpages) -- -- if bld.CONFIG_SET('HAVE_KRB5_LOCATE_PLUGIN_H'): -- bld.SAMBAMANPAGES(krb5_locator_manpages) -- -- if bld.CONFIG_SET('HAVE_KRB5_LOCALAUTH_PLUGIN_H'): -- bld.SAMBAMANPAGES(krb5_localauth_manpages) -- -- if bld.SAMBA3_IS_ENABLED_MODULE('vfs_zfsacl'): -- bld.SAMBAMANPAGES('manpages/vfs_zfsacl.8') -+#def SMBDOTCONF_MANPAGE(bld, target): -+# ''' assemble and build smb.conf.5 manual page''' -+# bld.SAMBAMANPAGES(target, parameter_all) -+# -+#if ('XSLTPROC_MANPAGES' in bld.env and bld.env['XSLTPROC_MANPAGES']): -+# -+# SMBDOTCONF_MANPAGE(bld, 'manpages/smb.conf.5') -+# bld.SAMBAMANPAGES(manpages) -+# -+# if bld.CONFIG_SET('WITH_PAM_MODULES') and bld.CONFIG_SET('HAVE_PAM_START'): -+# bld.SAMBAMANPAGES(pam_winbind_manpages) -+# -+# if bld.CONFIG_SET('HAVE_KRB5_LOCATE_PLUGIN_H'): -+# bld.SAMBAMANPAGES(krb5_locator_manpages) -+# -+# if bld.CONFIG_SET('HAVE_KRB5_LOCALAUTH_PLUGIN_H'): -+# bld.SAMBAMANPAGES(krb5_localauth_manpages) -+# -+# if bld.SAMBA3_IS_ENABLED_MODULE('vfs_zfsacl'): -+# bld.SAMBAMANPAGES('manpages/vfs_zfsacl.8') -diff --git a/source4/scripting/wscript_build b/source4/scripting/wscript_build -index 2f53cce12b7..9841ae0a116 100644 ---- a/source4/scripting/wscript_build -+++ b/source4/scripting/wscript_build -@@ -12,8 +12,8 @@ if sbin_files: - bld.INSTALL_FILES('${SBINDIR}', - sbin_files, - chmod=MODE_755, python_fixup=True, flat=True) -- if 'XSLTPROC_MANPAGES' in bld.env and bld.env['XSLTPROC_MANPAGES']: -- bld.MANPAGES(man_files, True) -+# if 'XSLTPROC_MANPAGES' in bld.env and bld.env['XSLTPROC_MANPAGES']: -+# bld.MANPAGES(man_files, True) - - if bld.CONFIG_SET('AD_DC_BUILD_IS_ENABLED'): - bld.INSTALL_FILES('${BINDIR}', --- -2.18.0 - diff --git a/buildroot/package/samba4/samba4.hash b/buildroot/package/samba4/samba4.hash index 7e82261b4..e0ea49a6f 100644 --- a/buildroot/package/samba4/samba4.hash +++ b/buildroot/package/samba4/samba4.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -# https://download.samba.org/pub/samba/stable/samba-4.9.8.tar.asc -sha256 82ebb7c3f1847c39341dd97ff8b73f40fa83f5f794daeceb80f3c349ace3cf56 samba-4.9.8.tar.gz +# https://download.samba.org/pub/samba/stable/samba-4.9.15.tar.asc +sha256 377102b80b97941bf0d131b828cae8415190e5bdd2928c2e2c954e29f1904496 samba-4.9.15.tar.gz sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/buildroot/package/samba4/samba4.mk b/buildroot/package/samba4/samba4.mk index d2f89e2c8..3f30efac6 100644 --- a/buildroot/package/samba4/samba4.mk +++ b/buildroot/package/samba4/samba4.mk @@ -4,7 +4,7 @@ # ################################################################################ -SAMBA4_VERSION = 4.9.8 +SAMBA4_VERSION = 4.9.15 SAMBA4_SITE = https://download.samba.org/pub/samba/stable SAMBA4_SOURCE = samba-$(SAMBA4_VERSION).tar.gz SAMBA4_INSTALL_STAGING = YES @@ -21,7 +21,8 @@ SAMBA4_CFLAGS = $(TARGET_CFLAGS) SAMBA4_LDFLAGS = $(TARGET_LDFLAGS) $(TARGET_NLS_LIBS) SAMBA4_CONF_ENV = \ CFLAGS="$(SAMBA4_CFLAGS)" \ - LDFLAGS="$(SAMBA4_LDFLAGS)" + LDFLAGS="$(SAMBA4_LDFLAGS)" \ + XSLTPROC=false ifeq ($(BR2_PACKAGE_LIBTIRPC),y) SAMBA4_CFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags libtirpc` diff --git a/buildroot/package/sdl_mixer/sdl_mixer.mk b/buildroot/package/sdl_mixer/sdl_mixer.mk index 1c6912acc..9183a4aa8 100644 --- a/buildroot/package/sdl_mixer/sdl_mixer.mk +++ b/buildroot/package/sdl_mixer/sdl_mixer.mk @@ -10,6 +10,9 @@ SDL_MIXER_SITE = http://www.libsdl.org/projects/SDL_mixer/release SDL_MIXER_LICENSE = Zlib SDL_MIXER_LICENSE_FILES = COPYING +# Package does not build in parallel due to improper make rules +SDL_MIXER_MAKE = $(MAKE1) + SDL_MIXER_INSTALL_STAGING = YES SDL_MIXER_DEPENDENCIES = sdl diff --git a/buildroot/package/socat/socat.mk b/buildroot/package/socat/socat.mk index 5fea067d8..e4595007d 100644 --- a/buildroot/package/socat/socat.mk +++ b/buildroot/package/socat/socat.mk @@ -29,6 +29,8 @@ endif # automake, so we can't use the normal autoreconf logic. SOCAT_DEPENDENCIES = host-autoconf +# incompatibile license (GPL-3.0+) +SOCAT_CONF_OPTS = --disable-readline ifeq ($(BR2_PACKAGE_OPENSSL),y) SOCAT_DEPENDENCIES += openssl @@ -36,12 +38,6 @@ else SOCAT_CONF_OPTS += --disable-openssl endif -ifeq ($(BR2_PACKAGE_READLINE),y) -SOCAT_DEPENDENCIES += readline -else -SOCAT_CONF_OPTS += --disable-readline -endif - define SOCAT_RUN_AUTOCONF (cd $(@D); $(HOST_DIR)/bin/autoconf) endef diff --git a/buildroot/package/sox/sox.mk b/buildroot/package/sox/sox.mk index 0b3dc136d..013ccbbcf 100644 --- a/buildroot/package/sox/sox.mk +++ b/buildroot/package/sox/sox.mk @@ -8,16 +8,14 @@ SOX_VERSION = 14.4.2 SOX_SITE = http://downloads.sourceforge.net/project/sox/sox/$(SOX_VERSION) SOX_SOURCE = sox-$(SOX_VERSION).tar.bz2 SOX_DEPENDENCIES = host-pkgconf -SOX_CONF_OPTS = --with-distro="Buildroot" --without-ffmpeg --disable-gomp \ - $(if $(BR2_TOOLCHAIN_HAS_SSP),,--disable-stack-protector) SOX_LICENSE = GPL-2.0+ (sox binary), LGPL-2.1+ (libraries) SOX_LICENSE_FILES = LICENSE.GPL LICENSE.LGPL -# MIPS Codescape toolchains don't support stack-smashing protection -# despite of using glibc. -ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS)$(BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS),y) -SOX_CONF_OPTS += --disable-stack-protector -endif +SOX_CONF_OPTS = \ + --with-distro="Buildroot" \ + --without-ffmpeg \ + --disable-gomp \ + --disable-stack-protector ifeq ($(BR2_PACKAGE_ALSA_LIB_PCM),y) SOX_DEPENDENCIES += alsa-lib diff --git a/buildroot/package/spice-protocol/spice-protocol.hash b/buildroot/package/spice-protocol/spice-protocol.hash index e72bb2d71..c23135141 100644 --- a/buildroot/package/spice-protocol/spice-protocol.hash +++ b/buildroot/package/spice-protocol/spice-protocol.hash @@ -1,2 +1,5 @@ # Locally calculated after checking pgp signature -sha256 20350bc4309039fdf0d29ee4fd0033cde27bccf33501e13b3c1befafde9d0c9c spice-protocol-0.12.14.tar.bz2 +sha256 b6a4aa1ca32668790b45a494bbd000e9d05797b391d5a5d4b91adf1118216eac spice-protocol-0.14.0.tar.bz2 + +# Hash for license file +sha256 eb55ea746be694c449224c7ddce6340648b075fd377281712a19094e7fb7ef92 COPYING diff --git a/buildroot/package/spice-protocol/spice-protocol.mk b/buildroot/package/spice-protocol/spice-protocol.mk index 7392e9533..f8c55c7b0 100644 --- a/buildroot/package/spice-protocol/spice-protocol.mk +++ b/buildroot/package/spice-protocol/spice-protocol.mk @@ -4,7 +4,7 @@ # ################################################################################ -SPICE_PROTOCOL_VERSION = 0.12.14 +SPICE_PROTOCOL_VERSION = 0.14.0 SPICE_PROTOCOL_SOURCE = spice-protocol-$(SPICE_PROTOCOL_VERSION).tar.bz2 SPICE_PROTOCOL_SITE = http://www.spice-space.org/download/releases SPICE_PROTOCOL_LICENSE = BSD-3-Clause diff --git a/buildroot/package/spice/0001-configure.ac-add-enable-tests.patch b/buildroot/package/spice/0001-configure.ac-add-enable-tests.patch new file mode 100644 index 000000000..668dea1ca --- /dev/null +++ b/buildroot/package/spice/0001-configure.ac-add-enable-tests.patch @@ -0,0 +1,54 @@ +From 1b6eaf5589a14763452cbe53382cc699cdeca141 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 15 Nov 2019 11:36:14 +0100 +Subject: [PATCH] configure.ac: add --enable-tests + +Allow the user to disable tests through --disable-tests, this is +especially useful for example to disable gdk-pixbuf dependency + +Signed-off-by: Fabrice Fontaine +[Upstream status: +https://gitlab.freedesktop.org/spice/spice-common/merge_requests/6] +--- + Makefile.am | 6 +++++- + configure.ac | 7 +++++++ + 2 files changed, 12 insertions(+), 1 deletion(-) + +diff --git a/subprojects/spice-common/Makefile.am b/subprojects/spice-common/Makefile.am +index 5402499..00623a1 100644 +--- a/subprojects/spice-common/Makefile.am ++++ b/subprojects/spice-common/Makefile.am +@@ -1,7 +1,11 @@ + NULL = + ACLOCAL_AMFLAGS = -I m4 + +-SUBDIRS = python_modules common tests docs ++SUBDIRS = python_modules common docs ++ ++if ENABLE_TESTS ++SUBDIRS += tests ++endif + + EXTRA_DIST = \ + meson.build \ +diff --git a/subprojects/spice-common/configure.ac b/subprojects/spice-common/configure.ac +index 9d10287..2dba7c8 100644 +--- a/subprojects/spice-common/configure.ac ++++ b/subprojects/spice-common/configure.ac +@@ -33,6 +33,13 @@ AC_SEARCH_LIBS(regcomp, [regex rx]) + SPICE_CHECK_SYSDEPS + SPICE_EXTRA_CHECKS + ++AC_ARG_ENABLE([tests], ++ AS_HELP_STRING([--enable-tests], ++ [Enable tests @<:@default=yes@:>@]), ++ [], ++ enable_tests="yes") ++AM_CONDITIONAL(ENABLE_TESTS, test "x$enable_tests" = "xyes") ++ + AC_ARG_ENABLE([alignment-checks], + AS_HELP_STRING([--enable-alignment-checks], + [Enable runtime checks for cast alignment @<:@default=no@:>@]), +-- +2.23.0 + diff --git a/buildroot/package/spice/spice.hash b/buildroot/package/spice/spice.hash index 1a25926ab..424324412 100644 --- a/buildroot/package/spice/spice.hash +++ b/buildroot/package/spice/spice.hash @@ -1,2 +1,3 @@ # Locally calculated -sha256 1ead5de63d06eededed4017db37240f07bef0abffbaf621899647e7e685a1519 spice-0.14.1.tar.bz2 +sha256 b203b3882e06f4c7249a3150d90c84e1a90490d41ead255a3d2cede46f4a29a7 spice-0.14.2.tar.bz2 +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/buildroot/package/spice/spice.mk b/buildroot/package/spice/spice.mk index 16e57441a..8c421abf2 100644 --- a/buildroot/package/spice/spice.mk +++ b/buildroot/package/spice/spice.mk @@ -4,7 +4,7 @@ # ################################################################################ -SPICE_VERSION = 0.14.1 +SPICE_VERSION = 0.14.2 SPICE_SOURCE = spice-$(SPICE_VERSION).tar.bz2 SPICE_SITE = http://www.spice-space.org/download/releases/spice-server SPICE_LICENSE = LGPL-2.1+ @@ -17,6 +17,8 @@ SPICE_DEPENDENCIES = \ openssl \ pixman \ spice-protocol +# We're patching subprojects/spice-common/configure.ac +SPICE_AUTORECONF = YES # We disable everything for now, because the dependency tree can become # quite deep if we try to enable some features, and I have not tested that. @@ -25,7 +27,8 @@ SPICE_CONF_OPTS = \ --disable-opengl \ --disable-smartcard \ --without-sasl \ - --disable-manual + --disable-manual \ + --disable-tests SPICE_DEPENDENCIES += host-pkgconf diff --git a/buildroot/package/squid/0001-acinclude-os-deps.m4-fix-cross-compilation.patch b/buildroot/package/squid/0001-acinclude-os-deps.m4-fix-cross-compilation.patch new file mode 100644 index 000000000..4c4fd5c8d --- /dev/null +++ b/buildroot/package/squid/0001-acinclude-os-deps.m4-fix-cross-compilation.patch @@ -0,0 +1,42 @@ +From 5dbaf8eebc5b66230e0131b09651c7e40bf0e9de Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 20 Aug 2019 21:41:16 +0200 +Subject: [PATCH] acinclude/os-deps.m4: fix cross-compilation + +Do not check check file descriptor maximum value through AC_RUN_IFELSE +when cross-compiling as this will raise an error + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/squid-cache/squid/pull/464] +--- + acinclude/os-deps.m4 | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/acinclude/os-deps.m4 b/acinclude/os-deps.m4 +index b50717517..ec10a54c6 100644 +--- a/acinclude/os-deps.m4 ++++ b/acinclude/os-deps.m4 +@@ -169,7 +169,9 @@ AC_MSG_CHECKING(Maximum number of filedescriptors we can open) + SQUID_STATE_SAVE(maxfd) + dnl FreeBSD pthreads break dup2(). + AS_CASE([$host_os],[freebsd],[ LDFLAGS=`echo $LDFLAGS | sed -e "s/-pthread//"` ]) +- AC_RUN_IFELSE([AC_LANG_SOURCE([[ ++ dnl AC_RUN_IFELSE can't be run when cross-compiling ++ AS_CASE([$cross_compiling],[no],[ ++ AC_RUN_IFELSE([AC_LANG_SOURCE([[ + #include + #include + #include +@@ -231,7 +233,8 @@ int main(int argc, char **argv) { + fprintf (fp, "%d\n", i & ~0x3F); + return 0; + } +- ]])],[squid_filedescriptors_limit=`cat conftestval`],[],[]) ++ ]])],[squid_filedescriptors_limit=`cat conftestval`],[],[]) ++ ]) + dnl Microsoft MSVCRT.DLL supports 2048 maximum FDs + AS_CASE(["$host_os"],[mingw|mingw32],[squid_filedescriptors_limit="2048"]) + AC_MSG_RESULT($squid_filedescriptors_limit) +-- +2.20.1 + diff --git a/buildroot/package/squid/0001-configure.ac-use-pkg-config-to-find-libxml2.patch b/buildroot/package/squid/0001-configure.ac-use-pkg-config-to-find-libxml2.patch deleted file mode 100644 index cc1a9f058..000000000 --- a/buildroot/package/squid/0001-configure.ac-use-pkg-config-to-find-libxml2.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 39edb8ef08f51ea6a454d286091d78a4514c89e0 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sat, 1 Dec 2018 18:21:55 +0100 -Subject: [PATCH] configure.ac: use pkg-config to find libxml2 - -Fix static build of squid with libxml2 by using pkg-config to find -libxml2 dependencies like -lz or -liconv - -Fixes: - - http://autobuild.buildroot.org/results/7f23eb98c311b294c7f0e165279fa26909a5ff93 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/squid-cache/squid/pull/338] ---- - configure.ac | 43 +++++++++++++++++++++++++------------------ - 1 file changed, 25 insertions(+), 18 deletions(-) - -diff --git a/configure.ac b/configure.ac -index f30d824aa..47553db46 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -900,29 +900,36 @@ fi - - AC_ARG_WITH(libxml2, AS_HELP_STRING([--without-libxml2],[Do not use libxml2 for ESI. Default: auto-detect])) - if test "x$squid_opt_use_esi" != "xno" -a "x$with_libxml2" != "xno" ; then -- AC_CHECK_LIB([xml2], [main], [XMLLIB="-lxml2"; HAVE_LIBXML2=1]) -- dnl Find the main header and include path... -- AC_CACHE_CHECK([location of libxml2 include files], [ac_cv_libxml2_include], [ -- AC_CHECK_HEADERS([libxml/parser.h], [], [ -- AC_MSG_NOTICE([Testing in /usr/include/libxml2]) -- SAVED_CPPFLAGS="$CPPFLAGS" -- CPPFLAGS="-I/usr/include/libxml2 $CPPFLAGS" -- unset ac_cv_header_libxml_parser_h -- AC_CHECK_HEADERS([libxml/parser.h], [ac_cv_libxml2_include="-I/usr/include/libxml2"], [ -- AC_MSG_NOTICE([Testing in /usr/local/include/libxml2]) -- CPPFLAGS="-I/usr/local/include/libxml2 $SAVED_CPPFLAGS" -+ PKG_CHECK_MODULES([LIBXML2],[libxml-2.0],[ -+ CPPFLAGS="$CPPFLAGS $LIBXML2_CFLAGS"; -+ SQUID_CXXFLAGS="$SQUID_CXXFLAGS $LIBXML2_CFLAGS"; -+ XMLLIB="$LIBXML2_LIBS"; -+ HAVE_LIBXML2=1 -+ ],[ -+ AC_CHECK_LIB([xml2], [main], [XMLLIB="-lxml2"; HAVE_LIBXML2=1]) -+ dnl Find the main header and include path... -+ AC_CACHE_CHECK([location of libxml2 include files], [ac_cv_libxml2_include], [ -+ AC_CHECK_HEADERS([libxml/parser.h], [], [ -+ AC_MSG_NOTICE([Testing in /usr/include/libxml2]) -+ SAVED_CPPFLAGS="$CPPFLAGS" -+ CPPFLAGS="-I/usr/include/libxml2 $CPPFLAGS" - unset ac_cv_header_libxml_parser_h -- AC_CHECK_HEADERS([libxml/parser.h], [ac_cv_libxml2_include="-I/usr/local/include/libxml2"], [ -- AC_MSG_NOTICE([Failed to find libxml2 header file libxml/parser.h]) -+ AC_CHECK_HEADERS([libxml/parser.h], [ac_cv_libxml2_include="-I/usr/include/libxml2"], [ -+ AC_MSG_NOTICE([Testing in /usr/local/include/libxml2]) -+ CPPFLAGS="-I/usr/local/include/libxml2 $SAVED_CPPFLAGS" -+ unset ac_cv_header_libxml_parser_h -+ AC_CHECK_HEADERS([libxml/parser.h], [ac_cv_libxml2_include="-I/usr/local/include/libxml2"], [ -+ AC_MSG_NOTICE([Failed to find libxml2 header file libxml/parser.h]) -+ ]) - ]) -+ CPPFLAGS="$SAVED_CPPFLAGS" - ]) -- CPPFLAGS="$SAVED_CPPFLAGS" - ]) -+ if test "x$ac_cv_libxml2_include" != "x"; then -+ SQUID_CXXFLAGS="$ac_cv_libxml2_include $SQUID_CXXFLAGS" -+ CPPFLAGS="$ac_cv_libxml2_include $CPPFLAGS" -+ fi - ]) -- if test "x$ac_cv_libxml2_include" != "x"; then -- SQUID_CXXFLAGS="$ac_cv_libxml2_include $SQUID_CXXFLAGS" -- CPPFLAGS="$ac_cv_libxml2_include $CPPFLAGS" -- fi - dnl Now that we know where to look find the headers... - AC_CHECK_HEADERS(libxml/parser.h libxml/HTMLparser.h libxml/HTMLtree.h) - AC_DEFINE_UNQUOTED(HAVE_LIBXML2, $HAVE_LIBXML2, [Define to 1 if you have the libxml2 library]) --- -2.17.1 - diff --git a/buildroot/package/squid/squid.hash b/buildroot/package/squid/squid.hash index 5e872707c..ff694da6a 100644 --- a/buildroot/package/squid/squid.hash +++ b/buildroot/package/squid/squid.hash @@ -1,6 +1,6 @@ -# From http://www.squid-cache.org/Versions/v4/squid-4.4.tar.xz.asc -md5 892504ca9700e1f139a53f84098613bd squid-4.4.tar.xz -sha1 0ab6b133f65866d825bf72cbbe8cef209768b2fa squid-4.4.tar.xz +# From http://www.squid-cache.org/Versions/v4/squid-4.8.tar.xz.asc +md5 08e018f2d8db4911ee90591284fa1ca5 squid-4.8.tar.xz +sha1 4ff1390eee3ec20cefa5565cbb56e1a89a12bfc1 squid-4.8.tar.xz # Locally calculated -sha256 4905e6da7f5574d2583ba36f398bb062a12d51e70d67035078b6e85b09e9ee82 squid-4.4.tar.xz +sha256 78cdb324d93341d36d09d5f791060f6e8aaa5ff3179f7c949cd910d023a86210 squid-4.8.tar.xz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/buildroot/package/squid/squid.mk b/buildroot/package/squid/squid.mk index 5d5ec0c38..0d09968bd 100644 --- a/buildroot/package/squid/squid.mk +++ b/buildroot/package/squid/squid.mk @@ -4,15 +4,15 @@ # ################################################################################ -SQUID_VERSION = 4.4 +SQUID_VERSION = 4.8 SQUID_SOURCE = squid-$(SQUID_VERSION).tar.xz SQUID_SITE = http://www.squid-cache.org/Versions/v4 SQUID_LICENSE = GPL-2.0+ SQUID_LICENSE_FILES = COPYING -# We're patching configure.ac -SQUID_AUTORECONF = YES SQUID_DEPENDENCIES = libcap host-libcap libxml2 host-pkgconf \ $(if $(BR2_PACKAGE_LIBNETFILTER_CONNTRACK),libnetfilter_conntrack) +# We're patching acinclude/os-deps.m4 +SQUID_AUTORECONF = YES SQUID_CONF_ENV = \ ac_cv_epoll_works=yes \ ac_cv_func_setresuid=yes \ diff --git a/buildroot/package/subversion/subversion.hash b/buildroot/package/subversion/subversion.hash index be0c8ec93..7f94631f8 100644 --- a/buildroot/package/subversion/subversion.hash +++ b/buildroot/package/subversion/subversion.hash @@ -1,5 +1,5 @@ # From https://www.apache.org/dist/subversion/subversion-1.9.10.tar.bz2.sha512 -sha512 58ac11078e0e5a1720199e5c66da76e7a20b86d02edcb8d313f98e2ddc74ae70aa3e0763a7d8a8fcb5a1fd7d65186829625ff110d78028b1c447e91f420d6f48 subversion-1.9.10.tar.bz2 +sha512 08a5c6c0233cc1dbd992180d2077eb1c67725682c457d3f67ebb6d22db0f6b64002a699ab828d435b708340ce6fb07bb1f03d11daefb887053c427ed75ad2de7 subversion-1.9.12.tar.bz2 # Locally calculated sha256 3202942c1aba495fd17390618dedc1d3542815c5bc11958da7fd98c985abc11a LICENSE diff --git a/buildroot/package/subversion/subversion.mk b/buildroot/package/subversion/subversion.mk index 0e26cfd4b..1013f1fc5 100644 --- a/buildroot/package/subversion/subversion.mk +++ b/buildroot/package/subversion/subversion.mk @@ -4,7 +4,7 @@ # ################################################################################ -SUBVERSION_VERSION = 1.9.10 +SUBVERSION_VERSION = 1.9.12 SUBVERSION_SOURCE = subversion-$(SUBVERSION_VERSION).tar.bz2 SUBVERSION_SITE = http://mirror.catn.com/pub/apache/subversion SUBVERSION_LICENSE = Apache-2.0 diff --git a/buildroot/package/sudo/sudo.hash b/buildroot/package/sudo/sudo.hash index 3f20ccb15..179595298 100644 --- a/buildroot/package/sudo/sudo.hash +++ b/buildroot/package/sudo/sudo.hash @@ -1,4 +1,4 @@ # From: http://www.sudo.ws/download.html -sha256 d863d29b6fc87bc784a3223350e2b28a2ff2c4738f0fb8f1c92bb38c3017e679 sudo-1.8.23.tar.gz +sha256 9129fa745a08caff0ce2042d2162b38eb9bf73bf43fcb248ac8b3a750c1f13a1 sudo-1.8.28.tar.gz # Locally calculated -sha256 b6625a7b58e9469a7adfd1732960579a19fe84b3508030f9a31641283e2250b8 doc/LICENSE +sha256 e0e7990185834e9f08f3e922905d7bfaf998d13be668c6026d2586b1718210ba doc/LICENSE diff --git a/buildroot/package/sudo/sudo.mk b/buildroot/package/sudo/sudo.mk index 136b6c691..cf8b63b1d 100644 --- a/buildroot/package/sudo/sudo.mk +++ b/buildroot/package/sudo/sudo.mk @@ -4,7 +4,7 @@ # ################################################################################ -SUDO_VERSION = 1.8.23 +SUDO_VERSION = 1.8.28 SUDO_SITE = https://www.sudo.ws/sudo/dist SUDO_LICENSE = ISC, BSD-3-Clause SUDO_LICENSE_FILES = doc/LICENSE diff --git a/buildroot/package/swupdate/Config.in b/buildroot/package/swupdate/Config.in index ca2eaf294..3d1beae6b 100644 --- a/buildroot/package/swupdate/Config.in +++ b/buildroot/package/swupdate/Config.in @@ -22,7 +22,7 @@ config BR2_PACKAGE_SWUPDATE * Select BR2_PACKAGE_LUA or BR2_PACKAGE_LUAJIT if you want want to have Lua support. - * Select BR2_LIBCURL if you want to use the download + * Select BR2_PACKAGE_LIBCURL if you want to use the download feature. * Select BR2_PACKAGE_OPENSSL is you want to add encryption support. diff --git a/buildroot/package/systemd-bootchart/systemd-bootchart.mk b/buildroot/package/systemd-bootchart/systemd-bootchart.mk index bcc3dbe22..62bc79539 100644 --- a/buildroot/package/systemd-bootchart/systemd-bootchart.mk +++ b/buildroot/package/systemd-bootchart/systemd-bootchart.mk @@ -16,4 +16,10 @@ SYSTEMD_BOOTCHART_DEPENDENCIES = systemd SYSTEMD_BOOTCHART_CONF_OPTS = --disable-man +define SYSTEMD_BOOTCHART_INSTALL_INIT_SYSTEMD + mkdir -p $(TARGET_DIR)/etc/systemd/system/sysinit.target.wants + ln -sf ../../../../lib/systemd/system/systemd-bootchart.service \ + $(TARGET_DIR)/etc/systemd/system/sysinit.target.wants/systemd-bootchart.service +endef + $(eval $(autotools-package)) diff --git a/buildroot/package/systemd/Config.in b/buildroot/package/systemd/Config.in index 920b65db4..aa763cd12 100644 --- a/buildroot/package/systemd/Config.in +++ b/buildroot/package/systemd/Config.in @@ -140,6 +140,7 @@ config BR2_PACKAGE_SYSTEMD_HOSTNAMED config BR2_PACKAGE_SYSTEMD_HWDB bool "enable hwdb installation" default y + select BR2_PACKAGE_HOST_EUDEV # for udevadm, during target-finalize help Enables hardware database installation to /usr/lib/udev/hwdb.d diff --git a/buildroot/package/taglib/0001-fix-taglib-config-file-for-cross-compiling-906.patch b/buildroot/package/taglib/0001-fix-taglib-config-file-for-cross-compiling-906.patch new file mode 100644 index 000000000..2c6ebd74d --- /dev/null +++ b/buildroot/package/taglib/0001-fix-taglib-config-file-for-cross-compiling-906.patch @@ -0,0 +1,66 @@ +From 7470f92a67375d00e53b3785a88fa7b26ad6f1da Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Fri, 17 May 2019 13:13:35 +0200 +Subject: [PATCH] fix taglib-config file for cross compiling (#906) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The current taglib-config program does not work for cross-compiling as it only +returns the paths to the host, which breaks building programs which uses +`taglib-config` to link against taglib. + +Fix this by passing sysroot to the `prefix` and `exec_prefix` fields. + +Backported from: 7470f92a67375d00e53b3785a88fa7b26ad6f1da + +Signed-off-by: Jörg Krause +--- + CMakeLists.txt | 2 +- + taglib-config.cmake | 10 +++++----- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 2de06324..1a0302c4 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -105,7 +105,7 @@ math(EXPR TAGLIB_SOVERSION_PATCH "${TAGLIB_SOVERSION_REVISION}") + include(ConfigureChecks.cmake) + + if(NOT WIN32) +- configure_file("${CMAKE_CURRENT_SOURCE_DIR}/taglib-config.cmake" "${CMAKE_CURRENT_BINARY_DIR}/taglib-config") ++ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/taglib-config.cmake" "${CMAKE_CURRENT_BINARY_DIR}/taglib-config" @ONLY) + install(PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/taglib-config" DESTINATION "${BIN_INSTALL_DIR}") + endif() + +diff --git a/taglib-config.cmake b/taglib-config.cmake +index 2bc2811a..96ef6883 100644 +--- a/taglib-config.cmake ++++ b/taglib-config.cmake +@@ -14,10 +14,10 @@ EOH + exit 1; + } + +-prefix=${CMAKE_INSTALL_PREFIX} +-exec_prefix=${CMAKE_INSTALL_PREFIX} +-libdir=${LIB_INSTALL_DIR} +-includedir=${INCLUDE_INSTALL_DIR} ++prefix=@CMAKE_SYSROOT@@CMAKE_INSTALL_PREFIX@ ++exec_prefix=@CMAKE_SYSROOT@@CMAKE_INSTALL_PREFIX@ ++libdir=${exec_prefix}/lib ++includedir=${prefix}/include + + flags="" + +@@ -35,7 +35,7 @@ do + flags="$flags -I$includedir/taglib" + ;; + --version) +- echo ${TAGLIB_LIB_VERSION_STRING} ++ echo @TAGLIB_LIB_VERSION_STRING@ + ;; + --prefix) + echo $prefix +-- +2.22.0 + diff --git a/buildroot/package/tcpdump/tcpdump.hash b/buildroot/package/tcpdump/tcpdump.hash index 0eb56e695..da5c9aa74 100644 --- a/buildroot/package/tcpdump/tcpdump.hash +++ b/buildroot/package/tcpdump/tcpdump.hash @@ -1,3 +1,5 @@ -# Locally calculated after checking pgp signature at http://www.tcpdump.org/release/tcpdump-4.9.2.tar.gz.sig -sha256 798b3536a29832ce0cbb07fafb1ce5097c95e308a6f592d14052e1ef1505fe79 tcpdump-4.9.2.tar.gz +# Locally calculated after checking pgp signature at +# http://www.tcpdump.org/release/tcpdump-4.9.3.tar.gz.sig +# using key 1F166A5742ABB9E0249A8D30E089DEF1D9C15D0D +sha256 2cd47cb3d460b6ff75f4a9940f594317ad456cfbf2bd2c8e5151e16559db6410 tcpdump-4.9.3.tar.gz sha256 9b03d5d13e66d6de02a4bb2d0dd1cb9f41808d045962cdcc42350d5291b141a1 LICENSE diff --git a/buildroot/package/tcpdump/tcpdump.mk b/buildroot/package/tcpdump/tcpdump.mk index 2a6d095c2..72bf6f870 100644 --- a/buildroot/package/tcpdump/tcpdump.mk +++ b/buildroot/package/tcpdump/tcpdump.mk @@ -4,7 +4,7 @@ # ################################################################################ -TCPDUMP_VERSION = 4.9.2 +TCPDUMP_VERSION = 4.9.3 TCPDUMP_SITE = http://www.tcpdump.org/release TCPDUMP_LICENSE = BSD-3-Clause TCPDUMP_LICENSE_FILES = LICENSE diff --git a/buildroot/package/tcpreplay/0001-configure-ac-fix-without-libdnet.patch b/buildroot/package/tcpreplay/0001-configure-ac-fix-without-libdnet.patch new file mode 100644 index 000000000..75ed4f94d --- /dev/null +++ b/buildroot/package/tcpreplay/0001-configure-ac-fix-without-libdnet.patch @@ -0,0 +1,76 @@ +From acee9c0c46f71f1f4c33c2dadf69d19e24b90f27 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 13 Aug 2019 20:19:23 +0200 +Subject: [PATCH] configure.ac: fix --without-libdnet + +Allow the user to disable libdnet check through --without-libdnet. +This option is useful to cross-compile tcpreplay to avoid build failures +if libdnet is installed on host but not on target, see +https://bugs.buildroot.org/show_bug.cgi?id=12096 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/appneta/tcpreplay/pull/567] +--- + configure.ac | 48 +++++++++++++++++++++++++----------------------- + 1 file changed, 25 insertions(+), 23 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 39ba58b7..5de3dcb5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1464,30 +1464,32 @@ if test $have_cygwin = no ; then + AC_HELP_STRING([--with-libdnet=DIR], [Use libdnet in DIR]), + [trydnetdir=$withval]) + +- case "$build_os" in +- linux*) +- dnl # Debian/Ubuntu already have a package called libdnet +- dnl # so you the package you want to install libdumbnet-dev +- for testdir in $trydnetdir /usr/local /opt/local /usr ; do +- if test -x ${testdir}/bin/dumbnet-config -a $founddnet = no ; then +- LDNETINC="$($testdir/bin/dumbnet-config --cflags)" +- LDNETLIB="$($testdir/bin/dumbnet-config --libs)" +- libdnet_version="$($testdir/bin/dumbnet-config --version) (libdumbnet)" +- founddnet=$testdir +- fi +- done +- ;; +- esac ++ if test $trydnetdir != no; then ++ case "$build_os" in ++ linux*) ++ dnl # Debian/Ubuntu already have a package called libdnet ++ dnl # so you the package you want to install libdumbnet-dev ++ for testdir in $trydnetdir /usr/local /opt/local /usr ; do ++ if test -x ${testdir}/bin/dumbnet-config -a $founddnet = no ; then ++ LDNETINC="$($testdir/bin/dumbnet-config --cflags)" ++ LDNETLIB="$($testdir/bin/dumbnet-config --libs)" ++ libdnet_version="$($testdir/bin/dumbnet-config --version) (libdumbnet)" ++ founddnet=$testdir ++ fi ++ done ++ ;; ++ esac + +- if test $founddnet = no ; then +- for testdir in $trydnetdir /usr/local /opt/local $MACOSX_SDK_PATH/usr /usr ; do +- if test -x ${testdir}/bin/dnet-config -a $founddnet = no ; then +- LDNETINC="$($testdir/bin/dnet-config --cflags)" +- LDNETLIB="$($testdir/bin/dnet-config --libs)" +- libdnet_version="$($testdir/bin/dnet-config --version)" +- founddnet=$testdir +- fi +- done ++ if test $founddnet = no ; then ++ for testdir in $trydnetdir /usr/local /opt/local $MACOSX_SDK_PATH/usr /usr ; do ++ if test -x ${testdir}/bin/dnet-config -a $founddnet = no ; then ++ LDNETINC="$($testdir/bin/dnet-config --cflags)" ++ LDNETLIB="$($testdir/bin/dnet-config --libs)" ++ libdnet_version="$($testdir/bin/dnet-config --version)" ++ founddnet=$testdir ++ fi ++ done ++ fi + fi + + if test $founddnet = no ; then diff --git a/buildroot/package/tcpreplay/tcpreplay.hash b/buildroot/package/tcpreplay/tcpreplay.hash index 31b3d3eb2..cc00bc09b 100644 --- a/buildroot/package/tcpreplay/tcpreplay.hash +++ b/buildroot/package/tcpreplay/tcpreplay.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -# https://github.com/appneta/tcpreplay/releases/download/v4.3.1/tcpreplay-4.3.1.tar.xz.asc +# https://github.com/appneta/tcpreplay/releases/download/v4.3.2/tcpreplay-4.3.2.tar.xz.asc # using key 84E4FA215C934A7D97DC76D5E9E2149793BDE17E -sha256 108924a25e616e3465139410c49cae629c338df73443dfc8fc155ea9f099c659 tcpreplay-4.3.1.tar.xz +sha256 955aed6a40f49a5b8c1234fd0a928edc5c665d94b7755ab5769c30938e33f380 tcpreplay-4.3.2.tar.xz sha256 5971b0c544622f4b210a9cc56436a970685d3b0666e373c09e3cf9304db15d05 docs/LICENSE diff --git a/buildroot/package/tcpreplay/tcpreplay.mk b/buildroot/package/tcpreplay/tcpreplay.mk index 71e57d5bd..39d0f4434 100644 --- a/buildroot/package/tcpreplay/tcpreplay.mk +++ b/buildroot/package/tcpreplay/tcpreplay.mk @@ -4,9 +4,9 @@ # ################################################################################ -TCPREPLAY_VERSION = 4.3.1 +TCPREPLAY_VERSION = 4.3.2 TCPREPLAY_SITE = https://github.com/appneta/tcpreplay/releases/download/v$(TCPREPLAY_VERSION) -TCPREPLAY_SOURCE = tcpreplay-4.3.1.tar.xz +TCPREPLAY_SOURCE = tcpreplay-$(TCPREPLAY_VERSION).tar.xz TCPREPLAY_LICENSE = GPL-3.0 TCPREPLAY_LICENSE_FILES = docs/LICENSE TCPREPLAY_CONF_ENV = \ @@ -14,12 +14,21 @@ TCPREPLAY_CONF_ENV = \ TCPREPLAY_CONF_OPTS = --with-libpcap=$(STAGING_DIR)/usr \ --enable-pcapconfig TCPREPLAY_DEPENDENCIES = libpcap +# We're patching configure.ac +TCPREPLAY_AUTORECONF = YES ifeq ($(BR2_STATIC_LIBS),y) TCPREPLAY_CONF_OPTS += --enable-dynamic-link=no TCPREPLAY_CONF_ENV += LIBS="`$(STAGING_DIR)/usr/bin/pcap-config --static --libs`" endif +ifeq ($(BR2_PACKAGE_LIBDNET),y) +TCPREPLAY_DEPENDENCIES += libdnet +TCPREPLAY_CONF_OPTS += --with-libdnet=$(STAGING_DIR)/usr +else +TCPREPLAY_CONF_OPTS += --without-libdnet +endif + ifeq ($(BR2_PACKAGE_TCPDUMP),y) TCPREPLAY_CONF_ENV += ac_cv_path_tcpdump_path=/usr/sbin/tcpdump else diff --git a/buildroot/package/tftpd/tftpd.hash b/buildroot/package/tftpd/tftpd.hash index 247b757fa..c876b2edc 100644 --- a/buildroot/package/tftpd/tftpd.hash +++ b/buildroot/package/tftpd/tftpd.hash @@ -1,2 +1,5 @@ # From https://www.kernel.org/pub/software/network/tftp/tftp-hpa/sha256sums.asc sha256 afee361df96a2f88344e191f6a25480fd714e1d28d176c3f10cc43fa206b718b tftp-hpa-5.2.tar.xz + +# Hash for license file +sha256 5efef82650b8ece733e37790fc70f05e426c9e1ef9640d4ebcb04867bd3f5e28 tftpd/tftpd.c diff --git a/buildroot/package/tftpd/tftpd.mk b/buildroot/package/tftpd/tftpd.mk index c42456afd..57905fda0 100644 --- a/buildroot/package/tftpd/tftpd.mk +++ b/buildroot/package/tftpd/tftpd.mk @@ -8,6 +8,8 @@ TFTPD_VERSION = 5.2 TFTPD_SOURCE = tftp-hpa-$(TFTPD_VERSION).tar.xz TFTPD_SITE = $(BR2_KERNEL_MIRROR)/software/network/tftp/tftp-hpa TFTPD_CONF_OPTS = --without-tcpwrappers +TFTPD_LICENSE = BSD-4-Clause +TFTPD_LICENSE_FILES = tftpd/tftpd.c define TFTPD_INSTALL_TARGET_CMDS $(INSTALL) -D $(@D)/tftp/tftp $(TARGET_DIR)/usr/bin/tftp diff --git a/buildroot/package/thttpd/S90thttpd b/buildroot/package/thttpd/S90thttpd new file mode 100644 index 000000000..94b079b05 --- /dev/null +++ b/buildroot/package/thttpd/S90thttpd @@ -0,0 +1,54 @@ +#!/bin/sh + +DAEMON="thttpd" +PIDFILE="/var/run/$DAEMON.pid" + +THTTPD_ARGS="-C /etc/thttpd.conf" + +# shellcheck source=/dev/null +[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" + +start() { + printf 'Starting %s: ' "$DAEMON" + # shellcheck disable=SC2086 # we need the word splitting + start-stop-daemon -S -q -p "$PIDFILE" -x "/usr/sbin/$DAEMON" \ + -- $THTTPD_ARGS + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + # thttpd does not remove the pid file on exit + rm -f "$PIDFILE" + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +case "$1" in + start|stop|restart) + "$1";; + reload) + # Restart, since there is no true "reload" feature. + restart;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/buildroot/package/thttpd/thttpd.mk b/buildroot/package/thttpd/thttpd.mk index 29611fff2..6cf86e4b9 100644 --- a/buildroot/package/thttpd/thttpd.mk +++ b/buildroot/package/thttpd/thttpd.mk @@ -18,18 +18,19 @@ define THTTPD_INSTALL_TARGET_CMDS $(INSTALL) -D -m 0755 $(@D)/extras/syslogtocern $(TARGET_DIR)/usr/bin/syslogtocern $(INSTALL) -D -m 0755 $(@D)/scripts/thttpd_wrapper $(TARGET_DIR)/usr/sbin/thttpd_wrapper $(SED) 's:/usr/local/sbin:/usr/sbin:g' -e \ - 's:/usr/local/www:/var/www:g' $(TARGET_DIR)/usr/sbin/thttpd_wrapper + 's:/usr/local/www/thttpd_config:/etc/thttpd.conf:g' \ + $(TARGET_DIR)/usr/sbin/thttpd_wrapper $(INSTALL) -d $(TARGET_DIR)/var/www/data $(INSTALL) -d $(TARGET_DIR)/var/www/logs - echo "dir=/var/www/data" > $(TARGET_DIR)/var/www/thttpd_config - echo 'cgipat=**.cgi' >> $(TARGET_DIR)/var/www/thttpd_config - echo "logfile=/var/www/logs/thttpd_log" >> $(TARGET_DIR)/var/www/thttpd_config - echo "pidfile=/var/run/thttpd.pid" >> $(TARGET_DIR)/var/www/thttpd_config + echo "dir=/var/www/data" > $(TARGET_DIR)/etc/thttpd.conf + echo 'cgipat=**.cgi' >> $(TARGET_DIR)/etc/thttpd.conf + echo "logfile=/var/www/logs/thttpd_log" >> $(TARGET_DIR)/etc/thttpd.conf + echo "pidfile=/var/run/thttpd.pid" >> $(TARGET_DIR)/etc/thttpd.conf endef define THTTPD_INSTALL_INIT_SYSV - $(INSTALL) -D -m 0755 $(@D)/scripts/thttpd.sh $(TARGET_DIR)/etc/init.d/S90thttpd - $(SED) 's:/usr/local/sbin:/usr/sbin:g' $(TARGET_DIR)/etc/init.d/S90thttpd + $(INSTALL) -D -m 0755 package/thttpd/S90thttpd \ + $(TARGET_DIR)/etc/init.d/S90thttpd endef define THTTPD_INSTALL_INIT_SYSTEMD diff --git a/buildroot/package/tiff/0001-Fix-for-simple-memory-leak-that-was-assigned-CVE-2019-6128.patch b/buildroot/package/tiff/0001-Fix-for-simple-memory-leak-that-was-assigned-CVE-2019-6128.patch deleted file mode 100644 index 638760b71..000000000 --- a/buildroot/package/tiff/0001-Fix-for-simple-memory-leak-that-was-assigned-CVE-2019-6128.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 0c74a9f49b8d7a36b17b54a7428b3526d20f88a8 Mon Sep 17 00:00:00 2001 -From: Scott Gayou -Date: Wed, 23 Jan 2019 15:03:53 -0500 -Subject: [PATCH] Fix for simple memory leak that was assigned CVE-2019-6128. - -pal2rgb failed to free memory on a few errors. This was reported -here: http://bugzilla.maptools.org/show_bug.cgi?id=2836. - -Signed-off-by: Fabrice Fontaine -[Retrieved from: -https://gitlab.com/libtiff/libtiff/commit/ae0bed1fe530a82faf2e9ea1775109dbf301a971] ---- - tools/pal2rgb.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/tools/pal2rgb.c b/tools/pal2rgb.c -index 01d8502e..9492f1cf 100644 ---- a/tools/pal2rgb.c -+++ b/tools/pal2rgb.c -@@ -118,12 +118,14 @@ main(int argc, char* argv[]) - shortv != PHOTOMETRIC_PALETTE) { - fprintf(stderr, "%s: Expecting a palette image.\n", - argv[optind]); -+ (void) TIFFClose(in); - return (-1); - } - if (!TIFFGetField(in, TIFFTAG_COLORMAP, &rmap, &gmap, &bmap)) { - fprintf(stderr, - "%s: No colormap (not a valid palette image).\n", - argv[optind]); -+ (void) TIFFClose(in); - return (-1); - } - bitspersample = 0; -@@ -131,11 +133,14 @@ main(int argc, char* argv[]) - if (bitspersample != 8) { - fprintf(stderr, "%s: Sorry, can only handle 8-bit images.\n", - argv[optind]); -+ (void) TIFFClose(in); - return (-1); - } - out = TIFFOpen(argv[optind+1], "w"); -- if (out == NULL) -+ if (out == NULL) { -+ (void) TIFFClose(in); - return (-2); -+ } - cpTags(in, out); - TIFFGetField(in, TIFFTAG_IMAGEWIDTH, &imagewidth); - TIFFGetField(in, TIFFTAG_IMAGELENGTH, &imagelength); --- -2.18.1 - diff --git a/buildroot/package/tiff/tiff.hash b/buildroot/package/tiff/tiff.hash index 21eb4bd37..36f30c441 100644 --- a/buildroot/package/tiff/tiff.hash +++ b/buildroot/package/tiff/tiff.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 2c52d11ccaf767457db0c46795d9c7d1a8d8f76f68b0b800a3dfe45786b996e4 tiff-4.0.10.tar.gz +sha256 5d29f32517dadb6dbcd1255ea5bbc93a2b54b94fbf83653b4d65c7d6775b8634 tiff-4.1.0.tar.gz sha256 fbd6fed7938541d2c809c0826225fc85e551fdbfa8732b10f0c87e0847acafd7 COPYRIGHT diff --git a/buildroot/package/tiff/tiff.mk b/buildroot/package/tiff/tiff.mk index aef08b341..b26900ac7 100644 --- a/buildroot/package/tiff/tiff.mk +++ b/buildroot/package/tiff/tiff.mk @@ -4,7 +4,7 @@ # ################################################################################ -TIFF_VERSION = 4.0.10 +TIFF_VERSION = 4.1.0 TIFF_SITE = http://download.osgeo.org/libtiff TIFF_LICENSE = tiff license TIFF_LICENSE_FILES = COPYRIGHT diff --git a/buildroot/package/tvheadend/0002-Makefile-fix-pie-linking-according-to-disable-pie.patch b/buildroot/package/tvheadend/0002-Makefile-fix-pie-linking-according-to-disable-pie.patch new file mode 100644 index 000000000..385c94b36 --- /dev/null +++ b/buildroot/package/tvheadend/0002-Makefile-fix-pie-linking-according-to-disable-pie.patch @@ -0,0 +1,34 @@ +From 5cbf08213222cb507d365e6cbda87277f0b8f31e Mon Sep 17 00:00:00 2001 +From: Giulio Benetti +Date: Fri, 14 Jun 2019 14:25:08 +0200 +Subject: [PATCH] Makefile: fix -pie linking according to --disable-pie + +Only compilation follows './configure --disable-pie', linking instead +doesn't, because '-pie' flag is passed to LDFLAGS uncoditionally. + +So add '-pie' flag only if CONFIG_PIE=yes. + +Signed-off-by: Giulio Benetti +--- + Makefile | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 41783b546..4e5a947a3 100644 +--- a/Makefile ++++ b/Makefile +@@ -62,7 +62,10 @@ LDFLAGS += -ldl -lm + else + LDFLAGS += -ldl -lpthread -lm + endif +-LDFLAGS += -pie -Wl,-z,now ++ifeq ($(CONFIG_PIE),yes) ++LDFLAGS += -pie ++endif ++LDFLAGS += -Wl,-z,now + ifeq ($(CONFIG_LIBICONV),yes) + LDFLAGS += -liconv + endif +-- +2.17.1 + diff --git a/buildroot/package/tvheadend/tvheadend.mk b/buildroot/package/tvheadend/tvheadend.mk index e92c11108..b192a33d4 100644 --- a/buildroot/package/tvheadend/tvheadend.mk +++ b/buildroot/package/tvheadend/tvheadend.mk @@ -94,6 +94,10 @@ else TVHEADEND_CONF_OPTS += --disable-pcre endif +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) +TVHEADEND_CONF_OPTS += --disable-pie +endif + TVHEADEND_DEPENDENCIES += dtv-scan-tables # The tvheadend build system expects the transponder data to be present inside diff --git a/buildroot/package/tz/tz.mk b/buildroot/package/tz/tz.mk index 1e797046d..135726c2c 100644 --- a/buildroot/package/tz/tz.mk +++ b/buildroot/package/tz/tz.mk @@ -8,6 +8,16 @@ TZ_DEPENDENCIES = host-tzdata host-tzdump TZ_LICENSE = Public domain TZ_LOCALTIME = $(call qstrip,$(BR2_TARGET_LOCALTIME)) +ifneq ($(TZ_LOCALTIME),) +define TZ_SET_LOCALTIME + if [ ! -f $(TARGET_DIR)/usr/share/zoneinfo/uclibc/$(TZ_LOCALTIME) ]; then \ + printf "Error: '%s' is not a valid timezone, check your BR2_TARGET_LOCALTIME setting\n" \ + "$(TZ_LOCALTIME)"; \ + exit 1; \ + fi + ln -sf ../usr/share/zoneinfo/uclibc/$(TZ_LOCALTIME) $(TARGET_DIR)/etc/TZ +endef +endif define TZ_BUILD_CMDS (cd $(HOST_DIR)/share/zoneinfo/posix/; \ @@ -25,12 +35,7 @@ define TZ_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/share/zoneinfo/iso3166.tab mkdir -p $(TARGET_DIR)/usr/share/zoneinfo/uclibc cp -a $(@D)/output/* $(TARGET_DIR)/usr/share/zoneinfo/uclibc - if [ ! -f $(TARGET_DIR)/usr/share/zoneinfo/uclibc/$(TZ_LOCALTIME) ]; then \ - printf "Error: '%s' is not a valid timezone, check your BR2_TARGET_LOCALTIME setting\n" \ - "$(TZ_LOCALTIME)"; \ - exit 1; \ - fi - ln -sf ../usr/share/zoneinfo/uclibc/$(TZ_LOCALTIME) $(TARGET_DIR)/etc/TZ + $(TZ_SET_LOCALTIME) endef $(eval $(generic-package)) diff --git a/buildroot/package/tzdata/tzdata.mk b/buildroot/package/tzdata/tzdata.mk index e20c94620..75fa5eb67 100644 --- a/buildroot/package/tzdata/tzdata.mk +++ b/buildroot/package/tzdata/tzdata.mk @@ -25,6 +25,17 @@ TZDATA_ZONELIST = $(call qstrip,$(BR2_TARGET_TZ_ZONELIST)) endif TZDATA_LOCALTIME = $(call qstrip,$(BR2_TARGET_LOCALTIME)) +ifneq ($(TZDATA_LOCALTIME),) +define TZDATA_SET_LOCALTIME + if [ ! -f $(TARGET_DIR)/usr/share/zoneinfo/$(TZDATA_LOCALTIME) ]; then \ + printf "Error: '%s' is not a valid timezone, check your BR2_TARGET_LOCALTIME setting\n" \ + "$(TZDATA_LOCALTIME)"; \ + exit 1; \ + fi + ln -sf ../usr/share/zoneinfo/$(TZDATA_LOCALTIME) $(TARGET_DIR)/etc/localtime + echo "$(TZDATA_LOCALTIME)" >$(TARGET_DIR)/etc/timezone +endef +endif # No need to extract for target, we're using the host-installed files TZDATA_EXTRACT_CMDS = @@ -36,13 +47,7 @@ define TZDATA_INSTALL_TARGET_CMDS for zone in posix/*; do \ ln -sfn "$${zone}" "$${zone##*/}"; \ done - if [ ! -f $(TARGET_DIR)/usr/share/zoneinfo/$(TZDATA_LOCALTIME) ]; then \ - printf "Error: '%s' is not a valid timezone, check your BR2_TARGET_LOCALTIME setting\n" \ - "$(TZDATA_LOCALTIME)"; \ - exit 1; \ - fi - ln -sf ../usr/share/zoneinfo/$(TZDATA_LOCALTIME) $(TARGET_DIR)/etc/localtime - echo "$(TZDATA_LOCALTIME)" >$(TARGET_DIR)/etc/timezone + $(TZDATA_SET_LOCALTIME) endef define HOST_TZDATA_BUILD_CMDS diff --git a/buildroot/package/uclibc/0004-sparc-remove-asm-constraint.patch b/buildroot/package/uclibc/0004-sparc-remove-asm-constraint.patch new file mode 100644 index 000000000..2fbe8cda5 --- /dev/null +++ b/buildroot/package/uclibc/0004-sparc-remove-asm-constraint.patch @@ -0,0 +1,40 @@ +From 75a1a2a9fec8a310a18ff7d63ead95f3a0d1b11b Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 24 May 2019 12:42:04 +0200 +Subject: [PATCH] sparc: remove asm constraint + +uClibc-ng don't build with gcc 9.1 [1] due to a new check that +"catch illegal asm constraint usage" [2]. +gcc 9.1 print this error: +"invalid hard register usage between earlyclobber operand and input operand" +The asm constraint is present in uClibc since it support sparc (back in 2002)[3]. +Note: There is no such constraint is Glibc counterpart code [4]. +[1] https://gitlab.com/kubu93/toolchains-builder/-/jobs/205435757 +[2] https://github.com/gcc-mirror/gcc/commit/b782636f28f5c378897c238081d28d7a4a6ca578 +[3] https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=3b6d086531102b6d09ce852feb1e370d5dca3ce9 +[4] ++https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/sparc/sysdep.h;h=981b2a26b7a91093f821c97876 ++e55bc4be2d9f8a;hb=HEAD + +(cherry picked from commit c2eaf6c30d930b65a8bcf5f912ef8873a6f4eb20) +Signed-off-by: Romain Naour +--- + libc/sysdeps/linux/sparc/bits/syscalls.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libc/sysdeps/linux/sparc/bits/syscalls.h b/libc/sysdeps/linux/sparc/bits/syscalls.h +index 75af7a157..28edc0568 100644 +--- a/libc/sysdeps/linux/sparc/bits/syscalls.h ++++ b/libc/sysdeps/linux/sparc/bits/syscalls.h +@@ -33,7 +33,7 @@ + register long __g1 __asm__("g1") = sys_num; \ + LOAD_ARGS_##nr(args) \ + __asm__ __volatile__( __SYSCALL_STRING \ +- : "=r" (__res), "=&r" (__o0) \ ++ : "=r" (__res), "=r" (__o0) \ + : "1" (__o0) ASM_ARGS_##nr, "r" (__g1) \ + : __SYSCALL_CLOBBERS ); \ + } \ +-- +2.21.0 + diff --git a/buildroot/package/uclibc/0005-PowerPC-sync-with-termios-fix-from-glibc.patch b/buildroot/package/uclibc/0005-PowerPC-sync-with-termios-fix-from-glibc.patch new file mode 100644 index 000000000..f933d43dc --- /dev/null +++ b/buildroot/package/uclibc/0005-PowerPC-sync-with-termios-fix-from-glibc.patch @@ -0,0 +1,172 @@ +From 67b3b894517893e94b9eed46f38c5d631b87a200 Mon Sep 17 00:00:00 2001 +From: Adhemerval Zanella +Date: Tue, 20 Aug 2019 23:16:18 +0300 +Subject: [PATCH] PowerPC: Fix termios definitions + +This patch fixes the incorrect guard by __USE_MISC of struct winsize and +struct termio in powerpc termios header. Current states leads to build +failures if the program defines _XOPEN_SOURCE, but not _DEFAULT_SOURCE +or either _BSD_SOURCE or _SVID_SOURCE. Without any definition, +__USE_MISC will not be defined and neither the struct definitions. + +This patch copies the default Linux ioctl-types.h by adjusting only the +character control field (c_cc) size in struct termio. + +Signed-off-by: Vadim Kochan +[Vadim: adopted for uclibc ] +--- + libc/sysdeps/linux/powerpc/bits/ioctl-types.h | 74 ++++++++++++++++++- + libc/sysdeps/linux/powerpc/bits/termios.h | 48 ------------ + 2 files changed, 73 insertions(+), 49 deletions(-) + +diff --git a/libc/sysdeps/linux/powerpc/bits/ioctl-types.h b/libc/sysdeps/linux/powerpc/bits/ioctl-types.h +index 87b8265af..926061fa8 100644 +--- a/libc/sysdeps/linux/powerpc/bits/ioctl-types.h ++++ b/libc/sysdeps/linux/powerpc/bits/ioctl-types.h +@@ -1,5 +1,77 @@ ++/* Structure types for pre-termios terminal ioctls. Linux/powerpc version. ++ Copyright (C) 2014-2019 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ + #ifndef _SYS_IOCTL_H + # error "Never use directly; include instead." + #endif + +-#include ++/* Get definition of constants for use with `ioctl'. */ ++#include ++ ++ ++struct winsize ++ { ++ unsigned short int ws_row; ++ unsigned short int ws_col; ++ unsigned short int ws_xpixel; ++ unsigned short int ws_ypixel; ++ }; ++ ++#define NCC 10 ++struct termio ++ { ++ unsigned short int c_iflag; /* input mode flags */ ++ unsigned short int c_oflag; /* output mode flags */ ++ unsigned short int c_cflag; /* control mode flags */ ++ unsigned short int c_lflag; /* local mode flags */ ++ unsigned char c_line; /* line discipline */ ++ unsigned char c_cc[NCC]; /* control characters */ ++}; ++ ++/* modem lines */ ++#define TIOCM_LE 0x001 ++#define TIOCM_DTR 0x002 ++#define TIOCM_RTS 0x004 ++#define TIOCM_ST 0x008 ++#define TIOCM_SR 0x010 ++#define TIOCM_CTS 0x020 ++#define TIOCM_CAR 0x040 ++#define TIOCM_RNG 0x080 ++#define TIOCM_DSR 0x100 ++#define TIOCM_CD TIOCM_CAR ++#define TIOCM_RI TIOCM_RNG ++ ++/* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ ++ ++/* line disciplines */ ++#define N_TTY 0 ++#define N_SLIP 1 ++#define N_MOUSE 2 ++#define N_PPP 3 ++#define N_STRIP 4 ++#define N_AX25 5 ++#define N_X25 6 /* X.25 async */ ++#define N_6PACK 7 ++#define N_MASC 8 /* Mobitex module */ ++#define N_R3964 9 /* Simatic R3964 module */ ++#define N_PROFIBUS_FDL 10 /* Profibus */ ++#define N_IRDA 11 /* Linux IR */ ++#define N_SMSBLOCK 12 /* SMS block mode */ ++#define N_HDLC 13 /* synchronous HDLC */ ++#define N_SYNC_PPP 14 /* synchronous PPP */ ++#define N_HCI 15 /* Bluetooth HCI UART */ +diff --git a/libc/sysdeps/linux/powerpc/bits/termios.h b/libc/sysdeps/linux/powerpc/bits/termios.h +index ffd99a5e2..83380685f 100644 +--- a/libc/sysdeps/linux/powerpc/bits/termios.h ++++ b/libc/sysdeps/linux/powerpc/bits/termios.h +@@ -256,23 +256,6 @@ struct ltchars { + #define TIOCPKT_NOSTOP 16 + #define TIOCPKT_DOSTOP 32 + +-struct winsize { +- unsigned short ws_row; +- unsigned short ws_col; +- unsigned short ws_xpixel; +- unsigned short ws_ypixel; +-}; +- +-#define NCC 10 +-struct termio { +- unsigned short c_iflag; /* input mode flags */ +- unsigned short c_oflag; /* output mode flags */ +- unsigned short c_cflag; /* control mode flags */ +- unsigned short c_lflag; /* local mode flags */ +- unsigned char c_line; /* line discipline */ +- unsigned char c_cc[NCC]; /* control characters */ +-}; +- + /* c_cc characters */ + #define _VINTR 0 + #define _VQUIT 1 +@@ -285,36 +268,5 @@ struct termio { + #define _VEOL2 8 + #define _VSWTC 9 + +-/* modem lines */ +-#define TIOCM_LE 0x001 +-#define TIOCM_DTR 0x002 +-#define TIOCM_RTS 0x004 +-#define TIOCM_ST 0x008 +-#define TIOCM_SR 0x010 +-#define TIOCM_CTS 0x020 +-#define TIOCM_CAR 0x040 +-#define TIOCM_RNG 0x080 +-#define TIOCM_DSR 0x100 +-#define TIOCM_CD TIOCM_CAR +-#define TIOCM_RI TIOCM_RNG +- + /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ + #define TIOCSER_TEMT 0x01 /* Transmitter physically empty */ +- +-/* line disciplines */ +-#define N_TTY 0 +-#define N_SLIP 1 +-#define N_MOUSE 2 +-#define N_PPP 3 +-#define N_STRIP 4 +-#define N_AX25 5 +-#define N_X25 6 /* X.25 async */ +-#define N_6PACK 7 +-#define N_MASC 8 /* Mobitex module */ +-#define N_R3964 9 /* Simatic R3964 module */ +-#define N_PROFIBUS_FDL 10 /* Profibus */ +-#define N_IRDA 11 /* Linux IR */ +-#define N_SMSBLOCK 12 /* SMS block mode */ +-#define N_HDLC 13 /* synchronous HDLC */ +-#define N_SYNC_PPP 14 /* synchronous PPP */ +-#define N_HCI 15 /* Bluetooth HCI UART */ +-- +2.22.0 + diff --git a/buildroot/package/unscd/unscd.hash b/buildroot/package/unscd/unscd.hash index ab8ffdc0c..671149fda 100644 --- a/buildroot/package/unscd/unscd.hash +++ b/buildroot/package/unscd/unscd.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 4c1f83dcd120469fceef749050cb29fa666fa4666bd308dfe92e933a4c200d55 nscd-0.52.c +sha256 9078255b2b9c344d9a0c3333ce23dda9d745f158dde0ea2244a8c56ba93f7a40 nscd-0.53.c diff --git a/buildroot/package/unscd/unscd.mk b/buildroot/package/unscd/unscd.mk index 36f2de271..c79ec4400 100644 --- a/buildroot/package/unscd/unscd.mk +++ b/buildroot/package/unscd/unscd.mk @@ -4,7 +4,7 @@ # ################################################################################ -UNSCD_VERSION = 0.52 +UNSCD_VERSION = 0.53 UNSCD_SOURCE = nscd-$(UNSCD_VERSION).c UNSCD_SITE = http://busybox.net/~vda/unscd UNSCD_LICENSE = GPL-2.0 diff --git a/buildroot/package/unzip/unzip.hash b/buildroot/package/unzip/unzip.hash index fbf2615ad..a10778a46 100644 --- a/buildroot/package/unzip/unzip.hash +++ b/buildroot/package/unzip/unzip.hash @@ -13,3 +13,7 @@ sha256 ea04cfc8b7ca3b3c03117da0d891870b8c542d26188ef5593fd7e479f4f29f4e 17-resto sha256 1872ffdd4d82edd7b1e62c469642bf16a1ca12dd26d41bd3f0b44f0f7602eb63 18-cve-2014-9913-unzip-buffer-overflow.patch sha256 60840ea8f5d11a276972fb5b43652cdd49a9ed93b2cc0586ad309bf52104b012 19-cve-2016-9844-zipinfo-buffer-overflow.patch sha256 4eabc3faeddd56ebc3d5053486b61f8758d840902725fd555d3472cffb094437 20-cve-2018-1000035-unzip-buffer-overflow.patch +sha256 df3b0eeea8dcc161a2565e306b5dda13d27de43145e198baaf0eab822321ee7e 21-fix-warning-messages-on-big-files.patch +sha256 2cf5a89e921da99e883bcde0ea03e2c77ae9185f57efaf35e7d43bc24353cfdc 22-cve-2019-13232-fix-bug-in-undefer-input.patch +sha256 c8e82c80fc7760f90567118a465e4cfa1b8e5d0a5723f9c70e3d21247e550615 23-cve-2019-13232-zip-bomb-with-overlapped-entries.patch +sha256 37ba0bea723beeb22670babda18bd980368cc6591bc7bd9caa04f62692c7e5ac 24-cve-2019-13232-do-not-raise-alert-for-misplaced-central-directory.patch diff --git a/buildroot/package/unzip/unzip.mk b/buildroot/package/unzip/unzip.mk index 43e90125e..1d972055d 100644 --- a/buildroot/package/unzip/unzip.mk +++ b/buildroot/package/unzip/unzip.mk @@ -11,18 +11,22 @@ UNZIP_LICENSE = Info-ZIP UNZIP_LICENSE_FILES = LICENSE UNZIP_PATCH = \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/07-increase-size-of-cfactorstr.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/08-allow-greater-hostver-values.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/09-cve-2014-8139-crc-overflow.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/10-cve-2014-8140-test-compr-eb.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/11-cve-2014-8141-getzip64data.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/12-cve-2014-9636-test-compr-eb.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/14-cve-2015-7696.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/15-cve-2015-7697.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/16-fix-integer-underflow-csiz-decrypted.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/17-restore-unix-timestamps-accurately.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/18-cve-2014-9913-unzip-buffer-overflow.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/19-cve-2016-9844-zipinfo-buffer-overflow.patch \ - https://sources.debian.org/data/main/u/unzip/6.0-22/debian/patches/20-cve-2018-1000035-unzip-buffer-overflow.patch + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/07-increase-size-of-cfactorstr.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/08-allow-greater-hostver-values.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/09-cve-2014-8139-crc-overflow.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/10-cve-2014-8140-test-compr-eb.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/11-cve-2014-8141-getzip64data.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/12-cve-2014-9636-test-compr-eb.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/14-cve-2015-7696.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/15-cve-2015-7697.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/16-fix-integer-underflow-csiz-decrypted.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/17-restore-unix-timestamps-accurately.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/18-cve-2014-9913-unzip-buffer-overflow.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/19-cve-2016-9844-zipinfo-buffer-overflow.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/20-cve-2018-1000035-unzip-buffer-overflow.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/21-fix-warning-messages-on-big-files.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/22-cve-2019-13232-fix-bug-in-undefer-input.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/23-cve-2019-13232-zip-bomb-with-overlapped-entries.patch \ + https://sources.debian.org/data/main/u/unzip/6.0-25/debian/patches/24-cve-2019-13232-do-not-raise-alert-for-misplaced-central-directory.patch $(eval $(cmake-package)) diff --git a/buildroot/package/util-linux/util-linux.mk b/buildroot/package/util-linux/util-linux.mk index c176d364c..b17c0e9b7 100644 --- a/buildroot/package/util-linux/util-linux.mk +++ b/buildroot/package/util-linux/util-linux.mk @@ -11,7 +11,7 @@ UTIL_LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_VERS # README.licensing claims that some files are GPL-2.0 only, but this is not true. # Some files are GPL-3.0+ but only in tests. rfkill uses an ISC-style license. -UTIL_LINUX_LICENSE = GPL-2.0+, BSD-4-Clause, LGPL-2.1+ (libblkid, libfdisk, libmount), BSD-3-Clause (libuuid) ISC (rfkill) +UTIL_LINUX_LICENSE = GPL-2.0+, BSD-4-Clause, LGPL-2.1+ (libblkid, libfdisk, libmount), BSD-3-Clause (libuuid), ISC (rfkill) UTIL_LINUX_LICENSE_FILES = README.licensing \ Documentation/licenses/COPYING.BSD-3-Clause \ Documentation/licenses/COPYING.BSD-4-Clause-UC \ @@ -232,9 +232,9 @@ endif # Install PAM configuration files ifeq ($(BR2_PACKAGE_UTIL_LINUX_SU)$(BR2_PACKAGE_LINUX_PAM),yy) define UTIL_LINUX_INSTALL_PAMFILES - $(INSTALL) -m 0644 package/util-linux/su.pam \ + $(INSTALL) -D -m 0644 package/util-linux/su.pam \ $(TARGET_DIR)/etc/pam.d/su - $(INSTALL) -m 0644 package/util-linux/su.pam \ + $(INSTALL) -D -m 0644 package/util-linux/su.pam \ $(TARGET_DIR)/etc/pam.d/su-l $(UTIL_LINUX_SELINUX_PAMFILES_TWEAK) endef diff --git a/buildroot/package/vlc/vlc.hash b/buildroot/package/vlc/vlc.hash index e2c5fecfa..d1d3e45b0 100644 --- a/buildroot/package/vlc/vlc.hash +++ b/buildroot/package/vlc/vlc.hash @@ -1,9 +1,9 @@ -# From http://download.videolan.org/pub/videolan/vlc/3.0.6/vlc-3.0.6.tar.xz.sha256 -sha256 18c16d4be0f34861d0aa51fbd274fb87f0cab3b7119757ead93f3db3a1f27ed3 vlc-3.0.6.tar.xz -# From http://download.videolan.org/pub/videolan/vlc/3.0.6/vlc-3.0.6.tar.xz.sha1 -sha1 b35168c1811b07844d861311bd0f2194f4bb82ac vlc-3.0.6.tar.xz -# From http://download.videolan.org/pub/videolan/vlc/3.0.6/vlc-3.0.6.tar.xz.md5 -md5 4ff71d262e070fd19f86a1c3542c7b4e vlc-3.0.6.tar.xz +# From http://download.videolan.org/pub/videolan/vlc/3.0.8/vlc-3.0.8.tar.xz.sha256 +sha256 e0149ef4a20a19b9ecd87309c2d27787ee3f47dfd47c6639644bc1f6fd95bdf6 vlc-3.0.8.tar.xz +# From http://download.videolan.org/pub/videolan/vlc/3.0.8/vlc-3.0.8.tar.xz.sha1 +sha1 424a9795e051c198e7fa28107b15809ee6820d43 vlc-3.0.8.tar.xz +# From http://download.videolan.org/pub/videolan/vlc/3.0.8/vlc-3.0.8.tar.xz.md5 +md5 744442ec0c145453ea1d257914c8072e vlc-3.0.8.tar.xz # Locally computed sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB diff --git a/buildroot/package/vlc/vlc.mk b/buildroot/package/vlc/vlc.mk index 8dbaf86a0..ae12e89b8 100644 --- a/buildroot/package/vlc/vlc.mk +++ b/buildroot/package/vlc/vlc.mk @@ -4,7 +4,7 @@ # ################################################################################ -VLC_VERSION = 3.0.6 +VLC_VERSION = 3.0.8 VLC_SITE = https://get.videolan.org/vlc/$(VLC_VERSION) VLC_SOURCE = vlc-$(VLC_VERSION).tar.xz VLC_LICENSE = GPL-2.0+, LGPL-2.1+ diff --git a/buildroot/package/vte/vte.mk b/buildroot/package/vte/vte.mk index 90853cb4a..7332a1ae0 100644 --- a/buildroot/package/vte/vte.mk +++ b/buildroot/package/vte/vte.mk @@ -7,7 +7,7 @@ VTE_VERSION = 0.48.3 VTE_SOURCE = vte-$(VTE_VERSION).tar.xz VTE_SITE = http://ftp.gnome.org/pub/gnome/sources/vte/0.48 -VTE_DEPENDENCIES = host-pkgconf libgtk3 libxml2 pcre2 +VTE_DEPENDENCIES = host-intltool host-pkgconf libgtk3 libxml2 pcre2 VTE_LICENSE = LGPL-2.1+ VTE_LICENSE_FILES = COPYING VTE_CONF_OPTS += --disable-introspection --without-gnutls --disable-vala diff --git a/buildroot/package/vtun/vtun.mk b/buildroot/package/vtun/vtun.mk index 86d452c0c..35b0ddedb 100644 --- a/buildroot/package/vtun/vtun.mk +++ b/buildroot/package/vtun/vtun.mk @@ -8,7 +8,7 @@ VTUN_VERSION = 3.0.4 VTUN_SITE = http://downloads.sourceforge.net/project/vtun/vtun/$(VTUN_VERSION) VTUN_LICENSE = GPL-2.0+ with OpenSSL exception VTUN_LICENSE_FILES = README.OpenSSL -VTUN_DEPENDENCIES = host-bison host-flex zlib lzo openssl +VTUN_DEPENDENCIES = host-bison host-flex host-pkgconf zlib lzo openssl VTUN_AUTORECONF = YES VTUN_CONF_OPTS = \ @@ -19,4 +19,8 @@ VTUN_CONF_OPTS = \ # Assumes old-style gcc inline symbol visibility rules VTUN_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=gnu89" +# configure.in forgets to link to dependent libraries of openssl breaking static +# linking +VTUN_CONF_ENV += LIBS=`$(PKG_CONFIG_HOST_BINARY) --libs openssl` + $(eval $(autotools-package)) diff --git a/buildroot/package/webkitgtk/0001-Build-failure-after-r243644-in-GTK-Li.patch b/buildroot/package/webkitgtk/0001-Build-failure-after-r243644-in-GTK-Li.patch deleted file mode 100644 index 748fc8e46..000000000 --- a/buildroot/package/webkitgtk/0001-Build-failure-after-r243644-in-GTK-Li.patch +++ /dev/null @@ -1,36 +0,0 @@ -From a672bbd75f257dd65844ad53dd21fb37345999b5 Mon Sep 17 00:00:00 2001 -From: "aperez@igalia.com" - -Date: Mon, 20 May 2019 21:20:02 +0000 -Subject: [PATCH] Build failure after r243644 in GTK - Linux 64-bit stable builds https://bugs.webkit.org/show_bug.cgi?id=196440 - -Patch by Pablo Saavedra on 2019-04-01 -Reviewed by Philippe Normand. - -* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: -(WebCore::MediaPlayerPrivateGStreamerBase::updateTextureMapperFlags): - -Signed-off-by: Adrian Perez de Castro - -diff --git a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp -index 608aee2e1b3..c614050972a 100644 ---- a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp -+++ b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp -@@ -1000,11 +1000,13 @@ void MediaPlayerPrivateGStreamerBase::updateTextureMapperFlags() - break; - } - -+#if USE(GSTREAMER_GL) - // When the imxvpudecoder is used, the texture sampling of the - // directviv-uploaded texture returns an RGB value, so there's no need to - // convert it. - if (m_videoDecoderPlatform != WebKitGstVideoDecoderPlatform::ImxVPU) - m_textureMapperFlags |= TEXTURE_MAPPER_COLOR_CONVERT_FLAG; -+#endif - } - #endif - --- -2.21.0 - diff --git a/buildroot/package/webkitgtk/webkitgtk.hash b/buildroot/package/webkitgtk/webkitgtk.hash index 40bb6f7b6..71642ad14 100644 --- a/buildroot/package/webkitgtk/webkitgtk.hash +++ b/buildroot/package/webkitgtk/webkitgtk.hash @@ -1,7 +1,7 @@ -# From https://webkitgtk.org/releases/webkitgtk-2.24.2.tar.xz.sums -md5 83012998e1b9f71abb37d8baf6f9c7e6 webkitgtk-2.24.2.tar.xz -sha1 632a65d93beb996bebdf7592ef9591f3993dea91 webkitgtk-2.24.2.tar.xz -sha256 019cb1f0d05bf6148b72c7a85734bcd006388a1c14132843ef9a1b2cb7b4321c webkitgtk-2.24.2.tar.xz +# From https://webkitgtk.org/releases/webkitgtk-2.26.2.tar.xz.sums +md5 65e06fe73ee166447894aaea95038e3b webkitgtk-2.26.2.tar.xz +sha1 5bd1ccb436c76fd1edb83afd5bec377de5655d45 webkitgtk-2.26.2.tar.xz +sha256 6b80f0637a80818559ac8fd50db3b394f41cb61904fb9b3ed65fa51635806512 webkitgtk-2.26.2.tar.xz # Hashes for license files: sha256 0b5d3a7cc325942567373b0ecd757d07c132e0ebd7c97bfc63f7e1a76094edb4 Source/WebCore/LICENSE-APPLE diff --git a/buildroot/package/webkitgtk/webkitgtk.mk b/buildroot/package/webkitgtk/webkitgtk.mk index e81ba047e..1273c1afe 100644 --- a/buildroot/package/webkitgtk/webkitgtk.mk +++ b/buildroot/package/webkitgtk/webkitgtk.mk @@ -4,7 +4,7 @@ # ################################################################################ -WEBKITGTK_VERSION = 2.24.2 +WEBKITGTK_VERSION = 2.26.2 WEBKITGTK_SITE = https://www.webkitgtk.org/releases WEBKITGTK_SOURCE = webkitgtk-$(WEBKITGTK_VERSION).tar.xz WEBKITGTK_INSTALL_STAGING = YES @@ -17,6 +17,7 @@ WEBKITGTK_DEPENDENCIES = host-ruby host-python host-gperf \ libtasn1 libxml2 libxslt openjpeg sqlite webp woff2 WEBKITGTK_CONF_OPTS = \ -DENABLE_API_TESTS=OFF \ + -DENABLE_BUBBLEWRAP_SANDBOX=OFF \ -DENABLE_GEOLOCATION=OFF \ -DENABLE_GTKDOC=OFF \ -DENABLE_INTROSPECTION=OFF \ @@ -26,7 +27,8 @@ WEBKITGTK_CONF_OPTS = \ -DUSE_LIBNOTIFY=OFF \ -DUSE_LIBHYPHEN=OFF \ -DUSE_OPENJPEG=ON \ - -DUSE_WOFF2=ON + -DUSE_WOFF2=ON \ + -DUSE_WPE_RENDERER=OFF ifeq ($(BR2_PACKAGE_WEBKITGTK_MULTIMEDIA),y) WEBKITGTK_CONF_OPTS += \ diff --git a/buildroot/package/weston/0002-rdp-compositor-fix-compilation-with-FreeRDP-2.0-rc4.patch b/buildroot/package/weston/0002-rdp-compositor-fix-compilation-with-FreeRDP-2.0-rc4.patch new file mode 100644 index 000000000..fe2303d42 --- /dev/null +++ b/buildroot/package/weston/0002-rdp-compositor-fix-compilation-with-FreeRDP-2.0-rc4.patch @@ -0,0 +1,218 @@ +From 7b7d9d316a9ce9b4f5f50ba766c2963b0fdcbaa5 Mon Sep 17 00:00:00 2001 +From: David Fort +Date: Tue, 4 Dec 2018 23:25:39 +0100 +Subject: [PATCH] rdp-compositor: fix compilation with FreeRDP 2.0-rc4 + +Some members have been removed from FreeRDP structs, so let's use local +variables. + +[yann.morin.1998@free.fr: backport from upstream] +Signed-off-by: Yann E. MORIN + +--- + libweston/compositor-rdp.c | 86 +++++++++++++++++++------------------- + 1 file changed, 43 insertions(+), 43 deletions(-) + +diff --git a/libweston/compositor-rdp.c b/libweston/compositor-rdp.c +index 134e7298..871a0a3e 100644 +--- a/libweston/compositor-rdp.c ++++ b/libweston/compositor-rdp.c +@@ -67,19 +67,19 @@ + #endif + + #ifdef HAVE_SURFACE_BITS_BMP +-#define SURFACE_BPP(cmd) cmd->bmp.bpp +-#define SURFACE_CODECID(cmd) cmd->bmp.codecID +-#define SURFACE_WIDTH(cmd) cmd->bmp.width +-#define SURFACE_HEIGHT(cmd) cmd->bmp.height +-#define SURFACE_BITMAP_DATA(cmd) cmd->bmp.bitmapData +-#define SURFACE_BITMAP_DATA_LEN(cmd) cmd->bmp.bitmapDataLength ++#define SURFACE_BPP(cmd) cmd.bmp.bpp ++#define SURFACE_CODECID(cmd) cmd.bmp.codecID ++#define SURFACE_WIDTH(cmd) cmd.bmp.width ++#define SURFACE_HEIGHT(cmd) cmd.bmp.height ++#define SURFACE_BITMAP_DATA(cmd) cmd.bmp.bitmapData ++#define SURFACE_BITMAP_DATA_LEN(cmd) cmd.bmp.bitmapDataLength + #else +-#define SURFACE_BPP(cmd) cmd->bpp +-#define SURFACE_CODECID(cmd) cmd->codecID +-#define SURFACE_WIDTH(cmd) cmd->width +-#define SURFACE_HEIGHT(cmd) cmd->height +-#define SURFACE_BITMAP_DATA(cmd) cmd->bitmapData +-#define SURFACE_BITMAP_DATA_LEN(cmd) cmd->bitmapDataLength ++#define SURFACE_BPP(cmd) cmd.bpp ++#define SURFACE_CODECID(cmd) cmd.codecID ++#define SURFACE_WIDTH(cmd) cmd.width ++#define SURFACE_HEIGHT(cmd) cmd.height ++#define SURFACE_BITMAP_DATA(cmd) cmd.bitmapData ++#define SURFACE_BITMAP_DATA_LEN(cmd) cmd.bitmapDataLength + #endif + + #include +@@ -198,7 +198,7 @@ rdp_peer_refresh_rfx(pixman_region32_t *damage, pixman_image_t *image, freerdp_p + uint32_t *ptr; + RFX_RECT *rfxRect; + rdpUpdate *update = peer->update; +- SURFACE_BITS_COMMAND *cmd = &update->surface_bits_command; ++ SURFACE_BITS_COMMAND cmd; + RdpPeerContext *context = (RdpPeerContext *)peer->context; + + Stream_Clear(context->encode_stream); +@@ -208,14 +208,14 @@ rdp_peer_refresh_rfx(pixman_region32_t *damage, pixman_image_t *image, freerdp_p + height = (damage->extents.y2 - damage->extents.y1); + + #ifdef HAVE_SKIP_COMPRESSION +- cmd->skipCompression = TRUE; ++ cmd.skipCompression = TRUE; + #else +- memset(cmd, 0, sizeof(*cmd)); ++ memset(&cmd, 0, sizeof(*cmd)); + #endif +- cmd->destLeft = damage->extents.x1; +- cmd->destTop = damage->extents.y1; +- cmd->destRight = damage->extents.x2; +- cmd->destBottom = damage->extents.y2; ++ cmd.destLeft = damage->extents.x1; ++ cmd.destTop = damage->extents.y1; ++ cmd.destRight = damage->extents.x2; ++ cmd.destBottom = damage->extents.y2; + SURFACE_BPP(cmd) = 32; + SURFACE_CODECID(cmd) = peer->settings->RemoteFxCodecId; + SURFACE_WIDTH(cmd) = width; +@@ -245,7 +245,7 @@ rdp_peer_refresh_rfx(pixman_region32_t *damage, pixman_image_t *image, freerdp_p + SURFACE_BITMAP_DATA_LEN(cmd) = Stream_GetPosition(context->encode_stream); + SURFACE_BITMAP_DATA(cmd) = Stream_Buffer(context->encode_stream); + +- update->SurfaceBits(update->context, cmd); ++ update->SurfaceBits(update->context, &cmd); + } + + +@@ -255,7 +255,7 @@ rdp_peer_refresh_nsc(pixman_region32_t *damage, pixman_image_t *image, freerdp_p + int width, height; + uint32_t *ptr; + rdpUpdate *update = peer->update; +- SURFACE_BITS_COMMAND *cmd = &update->surface_bits_command; ++ SURFACE_BITS_COMMAND cmd; + RdpPeerContext *context = (RdpPeerContext *)peer->context; + + Stream_Clear(context->encode_stream); +@@ -265,15 +265,15 @@ rdp_peer_refresh_nsc(pixman_region32_t *damage, pixman_image_t *image, freerdp_p + height = (damage->extents.y2 - damage->extents.y1); + + #ifdef HAVE_SKIP_COMPRESSION +- cmd->skipCompression = TRUE; ++ cmd.skipCompression = TRUE; + #else + memset(cmd, 0, sizeof(*cmd)); + #endif + +- cmd->destLeft = damage->extents.x1; +- cmd->destTop = damage->extents.y1; +- cmd->destRight = damage->extents.x2; +- cmd->destBottom = damage->extents.y2; ++ cmd.destLeft = damage->extents.x1; ++ cmd.destTop = damage->extents.y1; ++ cmd.destRight = damage->extents.x2; ++ cmd.destBottom = damage->extents.y2; + SURFACE_BPP(cmd) = 32; + SURFACE_CODECID(cmd) = peer->settings->NSCodecId; + SURFACE_WIDTH(cmd) = width; +@@ -289,7 +289,7 @@ rdp_peer_refresh_nsc(pixman_region32_t *damage, pixman_image_t *image, freerdp_p + SURFACE_BITMAP_DATA_LEN(cmd) = Stream_GetPosition(context->encode_stream); + SURFACE_BITMAP_DATA(cmd) = Stream_Buffer(context->encode_stream); + +- update->SurfaceBits(update->context, cmd); ++ update->SurfaceBits(update->context, &cmd); + } + + static void +@@ -310,8 +310,8 @@ static void + rdp_peer_refresh_raw(pixman_region32_t *region, pixman_image_t *image, freerdp_peer *peer) + { + rdpUpdate *update = peer->update; +- SURFACE_BITS_COMMAND *cmd = &update->surface_bits_command; +- SURFACE_FRAME_MARKER *marker = &update->surface_frame_marker; ++ SURFACE_BITS_COMMAND cmd; ++ SURFACE_FRAME_MARKER marker; + pixman_box32_t *rect, subrect; + int nrects, i; + int heightIncrement, remainingHeight, top; +@@ -320,18 +320,18 @@ rdp_peer_refresh_raw(pixman_region32_t *region, pixman_image_t *image, freerdp_p + if (!nrects) + return; + +- marker->frameId++; +- marker->frameAction = SURFACECMD_FRAMEACTION_BEGIN; +- update->SurfaceFrameMarker(peer->context, marker); ++ marker.frameId++; ++ marker.frameAction = SURFACECMD_FRAMEACTION_BEGIN; ++ update->SurfaceFrameMarker(peer->context, &marker); + +- memset(cmd, 0, sizeof(*cmd)); ++ memset(&cmd, 0, sizeof(cmd)); + SURFACE_BPP(cmd) = 32; + SURFACE_CODECID(cmd) = 0; + + for (i = 0; i < nrects; i++, rect++) { + /*weston_log("rect(%d,%d, %d,%d)\n", rect->x1, rect->y1, rect->x2, rect->y2);*/ +- cmd->destLeft = rect->x1; +- cmd->destRight = rect->x2; ++ cmd.destLeft = rect->x1; ++ cmd.destRight = rect->x2; + SURFACE_WIDTH(cmd) = rect->x2 - rect->x1; + + heightIncrement = peer->settings->MultifragMaxRequestSize / (16 + SURFACE_WIDTH(cmd) * 4); +@@ -343,8 +343,8 @@ rdp_peer_refresh_raw(pixman_region32_t *region, pixman_image_t *image, freerdp_p + + while (remainingHeight) { + SURFACE_HEIGHT(cmd) = (remainingHeight > heightIncrement) ? heightIncrement : remainingHeight; +- cmd->destTop = top; +- cmd->destBottom = top + SURFACE_HEIGHT(cmd); ++ cmd.destTop = top; ++ cmd.destBottom = top + SURFACE_HEIGHT(cmd); + SURFACE_BITMAP_DATA_LEN(cmd) = SURFACE_WIDTH(cmd) * SURFACE_HEIGHT(cmd) * 4; + SURFACE_BITMAP_DATA(cmd) = (BYTE *)realloc(SURFACE_BITMAP_DATA(cmd), SURFACE_BITMAP_DATA_LEN(cmd)); + +@@ -353,15 +353,15 @@ rdp_peer_refresh_raw(pixman_region32_t *region, pixman_image_t *image, freerdp_p + pixman_image_flipped_subrect(&subrect, image, SURFACE_BITMAP_DATA(cmd)); + + /*weston_log("* sending (%d,%d, %d,%d)\n", subrect.x1, subrect.y1, subrect.x2, subrect.y2); */ +- update->SurfaceBits(peer->context, cmd); ++ update->SurfaceBits(peer->context, &cmd); + + remainingHeight -= SURFACE_HEIGHT(cmd); + top += SURFACE_HEIGHT(cmd); + } + } + +- marker->frameAction = SURFACECMD_FRAMEACTION_END; +- update->SurfaceFrameMarker(peer->context, marker); ++ marker.frameAction = SURFACECMD_FRAMEACTION_END; ++ update->SurfaceFrameMarker(peer->context, &marker); + } + + static void +@@ -956,7 +956,7 @@ xf_peer_activate(freerdp_peer* client) + pixman_box32_t box; + pixman_region32_t damage; + char seat_name[50]; +- ++ POINTER_SYSTEM_UPDATE pointer_system; + + peerCtx = (RdpPeerContext *)client->context; + b = peerCtx->rdpBackend; +@@ -1056,8 +1056,8 @@ xf_peer_activate(freerdp_peer* client) + + /* disable pointer on the client side */ + pointer = client->update->pointer; +- pointer->pointer_system.type = SYSPTR_NULL; +- pointer->PointerSystem(client->context, &pointer->pointer_system); ++ pointer_system.type = SYSPTR_NULL; ++ pointer->PointerSystem(client->context, &pointer_system); + + /* sends a full refresh */ + box.x1 = 0; +-- +2.20.1 + diff --git a/buildroot/package/wireless-regdb/wireless-regdb.hash b/buildroot/package/wireless-regdb/wireless-regdb.hash index aa035d0ef..d6cb72ee7 100644 --- a/buildroot/package/wireless-regdb/wireless-regdb.hash +++ b/buildroot/package/wireless-regdb/wireless-regdb.hash @@ -1,4 +1,4 @@ # From https://www.kernel.org/pub/software/network/wireless-regdb/sha256sums.asc -sha256 a36b8147f1a3e98e1fd44321a4b8d7ad2f03cac98cdf527ccb1693342f08d65a wireless-regdb-2018.09.07.tar.xz +sha256 cd917ed86b63ce8d93947979f1f18948f03a4ac0ad89ec25227b36ac00dc54bf wireless-regdb-2019.06.03.tar.xz # Locally computed sha256 678b0df753c86198fc496d1f1033429bbd57f101472132ee7eaaf9f5e0a7fae1 LICENSE diff --git a/buildroot/package/wireless-regdb/wireless-regdb.mk b/buildroot/package/wireless-regdb/wireless-regdb.mk index c509c7c7f..31b62e36e 100644 --- a/buildroot/package/wireless-regdb/wireless-regdb.mk +++ b/buildroot/package/wireless-regdb/wireless-regdb.mk @@ -4,7 +4,7 @@ # ################################################################################ -WIRELESS_REGDB_VERSION = 2018.09.07 +WIRELESS_REGDB_VERSION = 2019.06.03 WIRELESS_REGDB_SOURCE = wireless-regdb-$(WIRELESS_REGDB_VERSION).tar.xz WIRELESS_REGDB_SITE = $(BR2_KERNEL_MIRROR)/software/network/wireless-regdb WIRELESS_REGDB_LICENSE = ISC diff --git a/buildroot/package/wireshark/wireshark.hash b/buildroot/package/wireshark/wireshark.hash index 071940e1c..6474e166d 100644 --- a/buildroot/package/wireshark/wireshark.hash +++ b/buildroot/package/wireshark/wireshark.hash @@ -1,4 +1,4 @@ -# From: https://www.wireshark.org/download/src/all-versions/SIGNATURES-2.6.7.txt -sha256 747b3e7a37414942959f76f198be49dcbcca936bda538c4408942ce71bfd2b71 wireshark-2.6.7.tar.xz +# From: https://www.wireshark.org/download/src/all-versions/SIGNATURES-2.6.11.txt +sha256 29751581c8549562957940e68f0b9410a499616c91c1768195bc02def13f5a85 wireshark-2.6.11.tar.xz # Locally calculated sha256 7cdbed2b697efaa45576a033f1ac0e73cd045644a91c79bbf41d4a7d81dac7bf COPYING diff --git a/buildroot/package/wireshark/wireshark.mk b/buildroot/package/wireshark/wireshark.mk index a917efb5f..bf924cadd 100644 --- a/buildroot/package/wireshark/wireshark.mk +++ b/buildroot/package/wireshark/wireshark.mk @@ -4,7 +4,7 @@ # ################################################################################ -WIRESHARK_VERSION = 2.6.7 +WIRESHARK_VERSION = 2.6.11 WIRESHARK_SOURCE = wireshark-$(WIRESHARK_VERSION).tar.xz WIRESHARK_SITE = https://www.wireshark.org/download/src/all-versions WIRESHARK_LICENSE = wireshark license diff --git a/buildroot/package/x11r7/libxcb/libxcb.hash b/buildroot/package/x11r7/libxcb/libxcb.hash index d2b5da6b5..9158b6bb2 100644 --- a/buildroot/package/x11r7/libxcb/libxcb.hash +++ b/buildroot/package/x11r7/libxcb/libxcb.hash @@ -1,7 +1,6 @@ -# From https://lists.x.org/archives/xorg-announce/2018-March/002851.html -md5 c2b6cf928afa16b0047c974e7aaa783f libxcb-1.13.tar.bz2 -sha1 212ad5f1f80def80536d78e3d20354a0370e7fe9 libxcb-1.13.tar.bz2 -sha256 188c8752193c50ff2dbe89db4554c63df2e26a2e47b0fa415a70918b5b851daa libxcb-1.13.tar.bz2 -sha512 d99bbe386a65f60fcc0cc2935e4a365bc0577b5e90433e18778a665a5aee8ebc8e9e8cb0aedac0ac4a276147c0507e759a716874ea4f80792b2fc18eefbc128c libxcb-1.13.tar.bz2 +# From https://lists.x.org/archives/xorg/2018-September/059469.html +md5 f33cdfc67346f7217a9326c0d8679975 libxcb-1.13.1.tar.bz2 +sha1 2ab17a1bb2a44e0a9cb0b26bcf899689ba1bbb3b libxcb-1.13.1.tar.bz2 +sha256 a89fb7af7a11f43d2ce84a844a4b38df688c092bf4b67683aef179cdf2a647c4 libxcb-1.13.1.tar.bz2 # Locally computed sha256 c5ffbfeaa501071ceeb97b7de2c0d703fdaa35de01c0fb6cbac1c28453a3e9fd COPYING diff --git a/buildroot/package/x11r7/libxcb/libxcb.mk b/buildroot/package/x11r7/libxcb/libxcb.mk index 7e467aca3..fdc65cefc 100644 --- a/buildroot/package/x11r7/libxcb/libxcb.mk +++ b/buildroot/package/x11r7/libxcb/libxcb.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBXCB_VERSION = 1.13 +LIBXCB_VERSION = 1.13.1 LIBXCB_SOURCE = libxcb-$(LIBXCB_VERSION).tar.bz2 LIBXCB_SITE = http://xcb.freedesktop.org/dist LIBXCB_LICENSE = MIT diff --git a/buildroot/package/x11r7/xfont_font-util/xfont_font-util.hash b/buildroot/package/x11r7/xfont_font-util/xfont_font-util.hash index 04ada91da..55beba89f 100644 --- a/buildroot/package/x11r7/xfont_font-util/xfont_font-util.hash +++ b/buildroot/package/x11r7/xfont_font-util/xfont_font-util.hash @@ -1,3 +1,8 @@ -# From http://lists.x.org/archives/xorg-announce/2015-March/002546.html -sha1 0b16add3637c64b0bbaf1dd223b71b0421100c20 font-util-1.3.1.tar.bz2 -sha256 aa7ebdb0715106dd255082f2310dbaa2cd7e225957c2a77d719720c7cc92b921 font-util-1.3.1.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2019-August/003019.html +md5 3d6adb76fdd072db8c8fae41b40855e8 font-util-1.3.2.tar.bz2 +sha1 1b36275c174b64a9c16da5c902c91546789a67ef font-util-1.3.2.tar.bz2 +sha256 3ad880444123ac06a7238546fa38a2a6ad7f7e0cc3614de7e103863616522282 font-util-1.3.2.tar.bz2 +sha512 7cac529b12ae71185b89c72c1569b9826f52eeaecc1c76010338e7c42c4078ae339f18220b580bbd68fb5dc09df6ecf169a47c32e6104d8ee53bd443fa21d167 font-util-1.3.2.tar.bz2 + +# Locally calculated +sha256 ce16c3ee6f2a38db6870b66bdb54fce9dcf24acd1161840789e321f6faa1251c COPYING diff --git a/buildroot/package/x11r7/xfont_font-util/xfont_font-util.mk b/buildroot/package/x11r7/xfont_font-util/xfont_font-util.mk index 89b138b64..cd2ae81cc 100644 --- a/buildroot/package/x11r7/xfont_font-util/xfont_font-util.mk +++ b/buildroot/package/x11r7/xfont_font-util/xfont_font-util.mk @@ -4,7 +4,7 @@ # ################################################################################ -XFONT_FONT_UTIL_VERSION = 1.3.1 +XFONT_FONT_UTIL_VERSION = 1.3.2 XFONT_FONT_UTIL_SOURCE = font-util-$(XFONT_FONT_UTIL_VERSION).tar.bz2 XFONT_FONT_UTIL_SITE = http://xorg.freedesktop.org/releases/individual/font XFONT_FONT_UTIL_LICENSE = MIT/BSD-2-Clause diff --git a/buildroot/package/x11r7/xlib_libICE/xlib_libICE.hash b/buildroot/package/x11r7/xlib_libICE/xlib_libICE.hash index 1b006ce36..426ada32a 100644 --- a/buildroot/package/x11r7/xlib_libICE/xlib_libICE.hash +++ b/buildroot/package/x11r7/xlib_libICE/xlib_libICE.hash @@ -1,2 +1,7 @@ -# From http://lists.freedesktop.org/pipermail/xorg/2014-June/056671.html -sha256 8f7032f2c1c64352b5423f6b48a8ebdc339cc63064af34d66a6c9aa79759e202 libICE-1.0.9.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2019-July/003006.html +md5 76d77499ee7120a56566891ca2c0dbcf libICE-1.0.10.tar.bz2 +sha1 5b5eb125d4f43a3ab8153b0f850963ee6c982c24 libICE-1.0.10.tar.bz2 +sha256 6f86dce12cf4bcaf5c37dddd8b1b64ed2ddf1ef7b218f22b9942595fb747c348 libICE-1.0.10.tar.bz2 +sha512 2f1ef2c32c833c71894a08fa7e7ed53f301f6c7bd22485d71c12884d8e8b36b99f362ec886349dcc84d08edc81c8b2cea035320831d64974edeba021b433c468 libICE-1.0.10.tar.bz2 +# Locally computed +sha256 60105b7ea93cb07a67fee8443b092b727e3db7f0dff4fbe05bc6cd7747fb53c8 COPYING diff --git a/buildroot/package/x11r7/xlib_libICE/xlib_libICE.mk b/buildroot/package/x11r7/xlib_libICE/xlib_libICE.mk index 982e8fdef..0b1f8ade1 100644 --- a/buildroot/package/x11r7/xlib_libICE/xlib_libICE.mk +++ b/buildroot/package/x11r7/xlib_libICE/xlib_libICE.mk @@ -4,9 +4,9 @@ # ################################################################################ -XLIB_LIBICE_VERSION = 1.0.9 +XLIB_LIBICE_VERSION = 1.0.10 XLIB_LIBICE_SOURCE = libICE-$(XLIB_LIBICE_VERSION).tar.bz2 -XLIB_LIBICE_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBICE_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBICE_LICENSE = MIT XLIB_LIBICE_LICENSE_FILES = COPYING XLIB_LIBICE_INSTALL_STAGING = YES diff --git a/buildroot/package/x11r7/xlib_libXfont/xlib_libXfont.hash b/buildroot/package/x11r7/xlib_libXfont/xlib_libXfont.hash index ea0434871..455d99ff3 100644 --- a/buildroot/package/x11r7/xlib_libXfont/xlib_libXfont.hash +++ b/buildroot/package/x11r7/xlib_libXfont/xlib_libXfont.hash @@ -3,3 +3,6 @@ md5 16eaf156edd79b68038b6a7c44aa9e9b libXfont-1.5.4.tar.bz2 sha1 9db050f63b9c4cb19e0dbb40575558ccb95719ca libXfont-1.5.4.tar.bz2 sha256 1a7f7490774c87f2052d146d1e0e64518d32e6848184a18654e8d0bb57883242 libXfont-1.5.4.tar.bz2 sha512 864edbaff45c44bd92bc4b06275c73fdf584a9b88bc523a297d4c75c01ca253f438463e929af70d753ddecfa648bb0b9bcf0ec72267db9f2b1704f7afa906cb3 libXfont-1.5.4.tar.bz2 + +# Locally calculated +sha256 97e413bb4962bbb5773085cd5405502bf1d4eadeaf98ff5be015eacacc840462 COPYING diff --git a/buildroot/package/x11r7/xlib_libXfont/xlib_libXfont.mk b/buildroot/package/x11r7/xlib_libXfont/xlib_libXfont.mk index a1acfba83..eeddfeebc 100644 --- a/buildroot/package/x11r7/xlib_libXfont/xlib_libXfont.mk +++ b/buildroot/package/x11r7/xlib_libXfont/xlib_libXfont.mk @@ -30,5 +30,13 @@ ifeq ($(BR2_microblaze),y) XLIB_LIBXFONT_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D__ELF__" endif +XLIB_LIBXFONT_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y) +XLIB_LIBXFONT_CFLAGS += -O0 +endif + +XLIB_LIBXFONT_CONF_ENV += CFLAGS="$(XLIB_LIBXFONT_CFLAGS)" + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk b/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk index ba2c7540c..65adf665b 100644 --- a/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk +++ b/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk @@ -27,5 +27,13 @@ HOST_XLIB_LIBXFONT2_DEPENDENCIES = \ XLIB_LIBXFONT2_CONF_OPTS = --disable-devel-docs HOST_XLIB_LIBXFONT2_CONF_OPTS = --disable-devel-docs +XLIB_LIBXFONT2_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y) +XLIB_LIBXFONT2_CFLAGS += -O0 +endif + +XLIB_LIBXFONT2_CONF_ENV = CFLAGS="$(XLIB_LIBXFONT2_CFLAGS)" + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/buildroot/package/x11r7/xserver_xorg-server/1.20.4/0001-modesettings-needs-dri2.patch b/buildroot/package/x11r7/xserver_xorg-server/1.20.5/0001-modesettings-needs-dri2.patch similarity index 100% rename from buildroot/package/x11r7/xserver_xorg-server/1.20.4/0001-modesettings-needs-dri2.patch rename to buildroot/package/x11r7/xserver_xorg-server/1.20.5/0001-modesettings-needs-dri2.patch diff --git a/buildroot/package/x11r7/xserver_xorg-server/1.20.4/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch b/buildroot/package/x11r7/xserver_xorg-server/1.20.5/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch similarity index 100% rename from buildroot/package/x11r7/xserver_xorg-server/1.20.4/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch rename to buildroot/package/x11r7/xserver_xorg-server/1.20.5/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch diff --git a/buildroot/package/x11r7/xserver_xorg-server/1.20.4/0003-Remove-check-for-useSIGIO-option.patch b/buildroot/package/x11r7/xserver_xorg-server/1.20.5/0003-Remove-check-for-useSIGIO-option.patch similarity index 100% rename from buildroot/package/x11r7/xserver_xorg-server/1.20.4/0003-Remove-check-for-useSIGIO-option.patch rename to buildroot/package/x11r7/xserver_xorg-server/1.20.5/0003-Remove-check-for-useSIGIO-option.patch diff --git a/buildroot/package/x11r7/xserver_xorg-server/1.20.4/0004-include-misc.h-fix-uClibc-build.patch b/buildroot/package/x11r7/xserver_xorg-server/1.20.5/0004-include-misc.h-fix-uClibc-build.patch similarity index 100% rename from buildroot/package/x11r7/xserver_xorg-server/1.20.4/0004-include-misc.h-fix-uClibc-build.patch rename to buildroot/package/x11r7/xserver_xorg-server/1.20.5/0004-include-misc.h-fix-uClibc-build.patch diff --git a/buildroot/package/x11r7/xserver_xorg-server/1.20.4/0005-hw-xwayland-Makefile.am-fix-build-without-glx.patch b/buildroot/package/x11r7/xserver_xorg-server/1.20.5/0005-hw-xwayland-Makefile.am-fix-build-without-glx.patch similarity index 100% rename from buildroot/package/x11r7/xserver_xorg-server/1.20.4/0005-hw-xwayland-Makefile.am-fix-build-without-glx.patch rename to buildroot/package/x11r7/xserver_xorg-server/1.20.5/0005-hw-xwayland-Makefile.am-fix-build-without-glx.patch diff --git a/buildroot/package/x11r7/xserver_xorg-server/Config.in b/buildroot/package/x11r7/xserver_xorg-server/Config.in index ed238d570..ec4ba9150 100644 --- a/buildroot/package/x11r7/xserver_xorg-server/Config.in +++ b/buildroot/package/x11r7/xserver_xorg-server/Config.in @@ -61,7 +61,7 @@ choice bool "X Window System server version" config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_20 - bool "1.20.4" + bool "1.20.5" select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_24 select BR2_PACKAGE_XLIB_LIBXFONT2 @@ -79,7 +79,7 @@ endchoice config BR2_PACKAGE_XSERVER_XORG_SERVER_VERSION string - default "1.20.4" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_20 + default "1.20.5" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_20 default "1.17.4" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17 default "1.14.7" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14 diff --git a/buildroot/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash b/buildroot/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash index 5c1beb137..f79dc0c4e 100644 --- a/buildroot/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash +++ b/buildroot/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash @@ -3,8 +3,8 @@ sha1 7a95765e56b124758fcd7b609589e65b8870880b x sha256 fcf66fa6ad86227613d2d3e8ae13ded297e2a1e947e9060a083eaf80d323451f xorg-server-1.14.7.tar.bz2 # From https://lists.x.org/archives/xorg-announce/2015-October/002650.html sha256 0c4b45c116a812a996eb432d8508cf26c2ec8c3916ff2a50781796882f8d6457 xorg-server-1.17.4.tar.bz2 -# From https://lists.x.org/archives/xorg-announce/2019-February/002957.html -md5 c4841cc24b79420205d082fe82e0a650 xorg-server-1.20.4.tar.bz2 -sha1 1a79da92122124cb782a4eebfd83fd33d5c0d7d4 xorg-server-1.20.4.tar.bz2 -sha256 fe0fd493ebe93bfc56bede382fa204458ff5f636ea54d413a5d1bd58e19166ee xorg-server-1.20.4.tar.bz2 -sha512 f1c92ef6d7613e0636973d3395b48dfdad42230847ab1c8b1cea84647a968f649f9aba97bdb01c10ee8351cbe954d4e6ca4a0fc84bb8fa662d49c8ba2aee00a8 xorg-server-1.20.4.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2019-May/002993.html +md5 c9fc7e21e11286dbedd22c00df652130 xorg-server-1.20.5.tar.bz2 +sha1 fea6fd34c7f48b3c69fbecd8fb294eaa1498e69c xorg-server-1.20.5.tar.bz2 +sha256 a81d8243f37e75a03d4f8c55f96d0bc25802be6ec45c3bfa5cb614c6d01bac9d xorg-server-1.20.5.tar.bz2 +sha512 625f0626b122cf95600abe382c3217348999357a0e2d2443092f1b67cff1c98d7ef09303884ceaeac181e0555dc56b0d4d44bda45cc464dac2d9a50c5b32d631 xorg-server-1.20.5.tar.bz2 diff --git a/buildroot/package/xen/xen.hash b/buildroot/package/xen/xen.hash index 7a5241095..d4232f592 100644 --- a/buildroot/package/xen/xen.hash +++ b/buildroot/package/xen/xen.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 be88cb2443761990efc1070d9718016561fe19066af232f9bfae572922897e59 xen-4.11.1.tar.gz +sha256 3f9217f5a7cc240a06f3a03db8c29605d69a64d98330c426611ba5c2ee08b5d8 xen-4.11.2.tar.gz sha256 dba0d79260259c013c52e5d4daeaea564a2fbb9ff7fc6778c377a401ec3898de COPYING diff --git a/buildroot/package/xen/xen.mk b/buildroot/package/xen/xen.mk index d6e6c91cf..bd8a39f63 100644 --- a/buildroot/package/xen/xen.mk +++ b/buildroot/package/xen/xen.mk @@ -4,7 +4,7 @@ # ################################################################################ -XEN_VERSION = 4.11.1 +XEN_VERSION = 4.11.2 XEN_SITE = https://downloads.xenproject.org/release/xen/$(XEN_VERSION) XEN_LICENSE = GPL-2.0 XEN_LICENSE_FILES = COPYING diff --git a/buildroot/package/xvisor/0001-x86-Fix-build-break-with-newer-GCC-7-x.patch b/buildroot/package/xvisor/0001-x86-Fix-build-break-with-newer-GCC-7-x.patch new file mode 100644 index 000000000..668f9df71 --- /dev/null +++ b/buildroot/package/xvisor/0001-x86-Fix-build-break-with-newer-GCC-7-x.patch @@ -0,0 +1,34 @@ +From 48b056d958e0d9ae5758b9c927b48a2e1d98cbcd Mon Sep 17 00:00:00 2001 +From: Himanshu Chauhan +Date: Mon, 4 Dec 2017 18:29:09 +0530 +Subject: [PATCH] [x86] Fix build break with newer GCC (7.x) + +add -no-pie to C and LD flags. GCC 7.x for some reason +doesn't like to mix 32-bit and 64-bit code and wants +such code to be compiled with fPIC. Disable PIE from +does the trick. + +Signed-off-by: Himanshu Chauhan +[Retrieved from: +https://github.com/xvisor/xvisor/commit/48b056d958e0d9ae5758b9c927b48a2e1d98cbcd] +Signed-off-by: Fabrice Fontaine +--- + arch/x86/cpu/x86_64/objects.mk | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/arch/x86/cpu/x86_64/objects.mk b/arch/x86/cpu/x86_64/objects.mk +index a3bed4641..1d6d5a2fb 100644 +--- a/arch/x86/cpu/x86_64/objects.mk ++++ b/arch/x86/cpu/x86_64/objects.mk +@@ -21,8 +21,9 @@ + # @author Himanshu Chauhan (hschauhan@nulltrace.org) + # @brief list of x86_64 object files. + # */ +-cpu-cflags +=-finline-functions -O0 -mcmodel=large +-cpu-cppflags +=-DCPU_TEXT_LMA=${CONFIG_VAPOOL_ALIGN_MB} ++cpu-cflags +=-finline-functions -O0 -mcmodel=large -no-pie ++cpu-cppflags +=-DCPU_TEXT_LMA=${CONFIG_VAPOOL_ALIGN_MB} -no-pie ++cpu-ldflags += -no-pie + + cpu-objs-y+= start.o + diff --git a/buildroot/package/yad/yad.mk b/buildroot/package/yad/yad.mk index d674316cf..01bf334a7 100644 --- a/buildroot/package/yad/yad.mk +++ b/buildroot/package/yad/yad.mk @@ -9,7 +9,8 @@ YAD_SOURCE = yad-$(YAD_VERSION).tar.xz YAD_SITE = http://sourceforge.net/projects/yad-dialog/files YAD_LICENSE = GPL-3.0 YAD_LICENSE_FILES = COPYING -YAD_DEPENDENCIES = host-intltool host-pkgconf +YAD_DEPENDENCIES = host-intltool host-pkgconf $(TARGET_NLS_DEPENDENCIES) +YAD_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) YAD_CONF_OPTS = --enable-html=no ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) diff --git a/buildroot/package/yaffs2utils/yaffs2utils.mk b/buildroot/package/yaffs2utils/yaffs2utils.mk index d3a8bdc9d..bcd5d6d66 100644 --- a/buildroot/package/yaffs2utils/yaffs2utils.mk +++ b/buildroot/package/yaffs2utils/yaffs2utils.mk @@ -6,7 +6,7 @@ YAFFS2UTILS_VERSION = 0.2.9 YAFFS2UTILS_SOURCE = $(YAFFS2UTILS_VERSION).tar.gz -YAFFS2UTILS_SITE = https://yaffs2utils.googlecode.com/files +YAFFS2UTILS_SITE = https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/yaffs2utils YAFFS2UTILS_LICENSE = GPL-2.0 YAFFS2UTILS_LICENSE_FILES = COPYING diff --git a/buildroot/package/zeromq/zeromq.hash b/buildroot/package/zeromq/zeromq.hash index 5af6a3ff8..689d960b2 100644 --- a/buildroot/package/zeromq/zeromq.hash +++ b/buildroot/package/zeromq/zeromq.hash @@ -1,7 +1,7 @@ # From https://github.com/zeromq/libzmq/releases -md5 64cbf3577afdbfda30358bc757a6ac83 zeromq-4.3.1.tar.gz -sha1 6cce22d830eaf95feff7cab00744df13ad7ab7f3 zeromq-4.3.1.tar.gz +md5 2047e917c2cc93505e2579bcba67a573 zeromq-4.3.2.tar.gz +sha1 e5253bff214f77621b3d29443f1aa6e5a106ffe5 zeromq-4.3.2.tar.gz # Locally computed -sha256 bcbabe1e2c7d0eec4ed612e10b94b112dd5f06fcefa994a0c79a45d835cd21eb zeromq-4.3.1.tar.gz +sha256 ebd7b5c830d6428956b67a0454a7f8cbed1de74b3b01e5c33c5378e22740f763 zeromq-4.3.2.tar.gz sha256 4fd86507c9b486764343065a9e035222869a27b5789efeb4fd93edc85412d7a3 COPYING sha256 83f32abe61ee58ffb1b007412c08415168c052501dbf56d7a47aaaac52b03ef6 COPYING.LESSER diff --git a/buildroot/package/zeromq/zeromq.mk b/buildroot/package/zeromq/zeromq.mk index d799f863c..2c2e3e45b 100644 --- a/buildroot/package/zeromq/zeromq.mk +++ b/buildroot/package/zeromq/zeromq.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZEROMQ_VERSION = 4.3.1 +ZEROMQ_VERSION = 4.3.2 ZEROMQ_SITE = https://github.com/zeromq/libzmq/releases/download/v$(ZEROMQ_VERSION) ZEROMQ_INSTALL_STAGING = YES ZEROMQ_DEPENDENCIES = util-linux diff --git a/buildroot/package/znc/znc.hash b/buildroot/package/znc/znc.hash index b685a7bf7..216d105f2 100644 --- a/buildroot/package/znc/znc.hash +++ b/buildroot/package/znc/znc.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 1e4cc31837a1e8e6cc310873659a167cec16a3fd4281cbc3bf364e42352c113d znc-1.7.3.tar.gz +sha256 b1a32921a8e6d79ee6c5900c8d07293026966db7c05aaac48984231befc49b71 znc-1.7.4.tar.gz sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/buildroot/package/znc/znc.mk b/buildroot/package/znc/znc.mk index fdc147a8a..24795886a 100644 --- a/buildroot/package/znc/znc.mk +++ b/buildroot/package/znc/znc.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZNC_VERSION = 1.7.3 +ZNC_VERSION = 1.7.4 ZNC_SITE = http://znc.in/releases/archive ZNC_LICENSE = Apache-2.0 ZNC_LICENSE_FILES = LICENSE diff --git a/buildroot/support/dependencies/dependencies.sh b/buildroot/support/dependencies/dependencies.sh index 60c63d774..be60257d1 100755 --- a/buildroot/support/dependencies/dependencies.sh +++ b/buildroot/support/dependencies/dependencies.sh @@ -271,6 +271,10 @@ if grep -q ^BR2_PACKAGE_WHOIS=y $BR2_CONFIG ; then required_perl_modules="$required_perl_modules autodie" fi +if grep -q -E '^BR2_PACKAGE_(WEBKITGTK|WPEWEBKIT)=y' $BR2_CONFIG ; then + required_perl_modules="${required_perl_modules} JSON::PP" +fi + # This variable will keep the modules that are missing in your system. missing_perl_modules="" diff --git a/buildroot/support/download/git b/buildroot/support/download/git index 17ca04eb9..075f665bb 100755 --- a/buildroot/support/download/git +++ b/buildroot/support/download/git @@ -130,7 +130,7 @@ fi # scratch won't help, so we don't want to trash the repository for a # missing commit. We just exit without going through the ERR trap. if ! _git rev-parse --quiet --verify "'${cset}^{commit}'" >/dev/null 2>&1; then - printf "Commit '%s' does not exist in this repository\n." "${cset}" + printf "Commit '%s' does not exist in this repository.\n" "${cset}" exit 1 fi diff --git a/buildroot/support/misc/Buildroot.cmake b/buildroot/support/misc/Buildroot.cmake index 9f5f56525..761b6d7ae 100644 --- a/buildroot/support/misc/Buildroot.cmake +++ b/buildroot/support/misc/Buildroot.cmake @@ -1,5 +1,6 @@ # Impersonate a Linux system. Afterall, that's what we are... set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM ${CMAKE_SYSTEM_NAME}) include(Platform/Linux) # Override problematic settings, to avoid RPATH against host lib directories. diff --git a/buildroot/support/scripts/check-kernel-headers.sh b/buildroot/support/scripts/check-kernel-headers.sh index a8cca78b2..a8b94f6a0 100755 --- a/buildroot/support/scripts/check-kernel-headers.sh +++ b/buildroot/support/scripts/check-kernel-headers.sh @@ -1,14 +1,15 @@ #!/bin/sh -SYSROOT="${1}" +BUILDDIR="${1}" +SYSROOT="${2}" # Make sure we have enough version components -HDR_VER="${2}.0.0" +HDR_VER="${3}.0.0" HDR_M="${HDR_VER%%.*}" HDR_V="${HDR_VER#*.}" HDR_m="${HDR_V%%.*}" -EXEC="$(mktemp -t check-headers.XXXXXX)" +EXEC="$(mktemp -p "${BUILDDIR}" -t .check-headers.XXXXXX)" # We do not want to account for the patch-level, since headers are # not supposed to change for different patchlevels, so we mask it out. diff --git a/buildroot/support/testing/infra/emulator.py b/buildroot/support/testing/infra/emulator.py index 802e89d4b..093a643a8 100644 --- a/buildroot/support/testing/infra/emulator.py +++ b/buildroot/support/testing/infra/emulator.py @@ -38,7 +38,8 @@ class Emulator(object): qemu_cmd = ["qemu-system-{}".format(qemu_arch), "-serial", "stdio", - "-display", "none"] + "-display", "none", + "-m", "256"] if options: qemu_cmd += options @@ -60,8 +61,12 @@ class Emulator(object): qemu_cmd += ["-M", "vexpress-a9"] elif arch == "armv5": kernel = infra.download(self.downloaddir, - "kernel-versatile") + "kernel-versatile-4.19") + dtb = infra.download(self.downloaddir, + "versatile-pb-4.19.dtb") + qemu_cmd += ["-dtb", dtb] qemu_cmd += ["-M", "versatilepb"] + qemu_cmd += ["-device", "virtio-rng-pci"] qemu_cmd += ["-kernel", kernel] diff --git a/buildroot/support/testing/tests/package/test_lua.py b/buildroot/support/testing/tests/package/test_lua.py index 77358ba13..66ae85c99 100644 --- a/buildroot/support/testing/tests/package/test_lua.py +++ b/buildroot/support/testing/tests/package/test_lua.py @@ -12,7 +12,7 @@ class TestLuaBase(infra.basetest.BRTest): def login(self): cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") - self.emulator.boot(arch="armv7", + self.emulator.boot(arch="armv5", kernel="builtin", options=["-initrd", cpio_file]) self.emulator.login() diff --git a/buildroot/support/testing/tests/package/test_perl.py b/buildroot/support/testing/tests/package/test_perl.py index 033b7cf34..37e7390a4 100644 --- a/buildroot/support/testing/tests/package/test_perl.py +++ b/buildroot/support/testing/tests/package/test_perl.py @@ -12,7 +12,7 @@ class TestPerlBase(infra.basetest.BRTest): def login(self): cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") - self.emulator.boot(arch="armv7", + self.emulator.boot(arch="armv5", kernel="builtin", options=["-initrd", cpio_file]) self.emulator.login() diff --git a/buildroot/system/Config.in b/buildroot/system/Config.in index 498b56e22..b1aebf4ef 100644 --- a/buildroot/system/Config.in +++ b/buildroot/system/Config.in @@ -481,6 +481,8 @@ config BR2_TARGET_LOCALTIME Pacific/Wallis ... + Set to empty to not install a default time zone. + endif # BR2_TARGET_TZ_INFO config BR2_ROOTFS_USERS_TABLES diff --git a/buildroot/toolchain/Config.in b/buildroot/toolchain/Config.in index 87d7bc30b..c4f333d59 100644 --- a/buildroot/toolchain/Config.in +++ b/buildroot/toolchain/Config.in @@ -124,6 +124,12 @@ config BR2_TOOLCHAIN_HAS_GCC_BUG_64735 default y if !BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS && \ !BR2_TOOLCHAIN_GCC_AT_LEAST_7 +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68485. This bug still +# exists in gcc 9.x +config BR2_TOOLCHAIN_HAS_GCC_BUG_68485 + bool + default y if BR2_microblaze + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180. This bug no # longer exists in gcc 8.x. config BR2_TOOLCHAIN_HAS_GCC_BUG_85180 diff --git a/buildroot/toolchain/helpers.mk b/buildroot/toolchain/helpers.mk index e5520c00c..3c30a8268 100644 --- a/buildroot/toolchain/helpers.mk +++ b/buildroot/toolchain/helpers.mk @@ -158,11 +158,12 @@ copy_toolchain_sysroot = \ # Check the specified kernel headers version actually matches the # version in the toolchain. # -# $1: sysroot directory -# $2: kernel version string, in the form: X.Y +# $1: build directory +# $2: sysroot directory +# $3: kernel version string, in the form: X.Y # check_kernel_headers_version = \ - if ! support/scripts/check-kernel-headers.sh $(1) $(2); then \ + if ! support/scripts/check-kernel-headers.sh $(1) $(2) $(3); then \ exit 1; \ fi diff --git a/buildroot/toolchain/toolchain-buildroot/Config.in b/buildroot/toolchain/toolchain-buildroot/Config.in index beb17a218..d8e39fdce 100644 --- a/buildroot/toolchain/toolchain-buildroot/Config.in +++ b/buildroot/toolchain/toolchain-buildroot/Config.in @@ -94,6 +94,8 @@ config BR2_TOOLCHAIN_BUILDROOT_MUSL This option selects musl as the C library for the cross-compilation toolchain. + https://www.musl-libc.org/ + endchoice config BR2_TOOLCHAIN_BUILDROOT_LIBC diff --git a/buildroot/toolchain/toolchain-external/pkg-toolchain-external.mk b/buildroot/toolchain/toolchain-external/pkg-toolchain-external.mk index db3570d96..df0b68677 100644 --- a/buildroot/toolchain/toolchain-external/pkg-toolchain-external.mk +++ b/buildroot/toolchain/toolchain-external/pkg-toolchain-external.mk @@ -114,6 +114,10 @@ endif TOOLCHAIN_EXTERNAL_LIBS += ld*.so* libgcc_s.so.* libatomic.so.* +ifneq ($(BR2_SSP_NONE),y) +TOOLCHAIN_EXTERNAL_LIBS += libssp.so.* +endif + ifeq ($(BR2_TOOLCHAIN_EXTERNAL_GLIBC)$(BR2_TOOLCHAIN_EXTERNAL_UCLIBC),y) TOOLCHAIN_EXTERNAL_LIBS += libc.so.* libcrypt.so.* libdl.so.* libm.so.* libnsl.so.* libresolv.so.* librt.so.* libutil.so.* ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) @@ -527,6 +531,7 @@ define $(2)_CONFIGURE_CMDS $$(Q)$$(call check_unusable_toolchain,$$(TOOLCHAIN_EXTERNAL_CC)) $$(Q)SYSROOT_DIR="$$(call toolchain_find_sysroot,$$(TOOLCHAIN_EXTERNAL_CC))" ; \ $$(call check_kernel_headers_version,\ + $$(BUILD_DIR)\ $$(call toolchain_find_sysroot,$$(TOOLCHAIN_EXTERNAL_CC)),\ $$(call qstrip,$$(BR2_TOOLCHAIN_HEADERS_AT_LEAST))); \ $$(call check_gcc_version,$$(TOOLCHAIN_EXTERNAL_CC),\ diff --git a/buildroot/utils/check-package b/buildroot/utils/check-package index ce1fe98d6..f09aaeea0 100755 --- a/buildroot/utils/check-package +++ b/buildroot/utils/check-package @@ -33,6 +33,7 @@ def parse_args(): default="http://nightly.buildroot.org/", help="default: %(default)s") parser.add_argument("--verbose", "-v", action="count", default=0) + parser.add_argument("--quiet", "-q", action="count", default=0) # Now the debug options in the order they are processed. parser.add_argument("--include-only", dest="include_list", action="append", @@ -177,8 +178,10 @@ def __main__(): # (e.g. counted by 'wc'), so for stats use stderr. Wait all warnings are # printed, for the case there are many of them, before printing stats. sys.stdout.flush() - print("{} lines processed".format(total_lines), file=sys.stderr) - print("{} warnings generated".format(total_warnings), file=sys.stderr) + + if not flags.quiet: + print("{} lines processed".format(total_lines), file=sys.stderr) + print("{} warnings generated".format(total_warnings), file=sys.stderr) if total_warnings > 0: sys.exit(1) diff --git a/buildroot/utils/genrandconfig b/buildroot/utils/genrandconfig index a2190d6d2..5f7aed021 100755 --- a/buildroot/utils/genrandconfig +++ b/buildroot/utils/genrandconfig @@ -39,14 +39,6 @@ def urlopen_closing(uri): return contextlib.closing(_urllib.urlopen(uri)) -if sys.hexversion >= 0x3000000: - def decode_byte_list(bl): - return [b.decode() for b in bl] -else: - def decode_byte_list(e): - return e - - class SystemInfo: DEFAULT_NEEDED_PROGS = ["make", "git", "gcc", "timeout"] DEFAULT_OPTIONAL_PROGS = ["bzr", "java", "javac", "jar"] @@ -128,7 +120,7 @@ def get_toolchain_configs(toolchains_csv, buildrootdir): with open(toolchains_csv) as r: # filter empty lines and comments lines = [t for t in r.readlines() if len(t.strip()) > 0 and t[0] != '#'] - toolchains = decode_byte_list(lines) + toolchains = lines configs = [] (_, _, _, _, hostarch) = os.uname() diff --git a/buildroot/utils/test-pkg b/buildroot/utils/test-pkg index cce4679b0..a317d8c17 100755 --- a/buildroot/utils/test-pkg +++ b/buildroot/utils/test-pkg @@ -12,18 +12,19 @@ do_clean() { main() { local o O opts - local cfg dir pkg random toolchains_dir toolchain all number mode - local ret nb nb_skip nb_fail nb_legal nb_tc build_dir + local cfg dir pkg random toolchains_csv toolchain all number mode + local ret nb nb_skip nb_fail nb_legal nb_tc build_dir keep local -a toolchains local pkg_br_name - o='hac:d:n:p:r:t:' - O='help,config-snippet:build-dir:package:,random:,toolchains-dir:' + o='hakc:d:n:p:r:t:' + O='help,all,keep,config-snippet:,build-dir:,number:,package:,random:,toolchains-csv:' opts="$(getopt -n "${my_name}" -o "${o}" -l "${O}" -- "${@}")" eval set -- "${opts}" random=0 all=0 + keep=0 number=0 mode=0 toolchains_csv="${TOOLCHAINS_CSV}" @@ -35,6 +36,9 @@ main() { (-a|--all) all=1; shift 1 ;; + (-k|--keep) + keep=1; shift 1 + ;; (-c|--config-snippet) cfg="${2}"; shift 2 ;; @@ -134,6 +138,8 @@ main() { printf "%d builds, %d skipped, %d build failed, %d legal-info failed\n" \ ${nb} ${nb_skip} ${nb_fail} ${nb_legal} + + return $((nb_fail + nb_legal)) } build_one() { @@ -176,6 +182,12 @@ build_one() { if ! make O="${dir}" legal-info >> "${dir}/logfile" 2>&1; then return 3 fi + + # If we get here, the build was successful. Clean up the build/host + # directories to save disk space, unless 'keep' was set. + if [ ${keep} -ne 1 ]; then + make O="${dir}" clean >> "${dir}/logfile" 2>&1 + fi } help() { @@ -236,6 +248,11 @@ Options: try. If not specified, the toolchains in ${TOOLCHAINS_CSV} will be used. + -k, --keep + Keep the build directories even if the build succeeds. + Note: the logfile and configuration is always retained, even without + this option. + Example: Testing libcec would require a config snippet that contains: