summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Korsgaard <peter@korsgaard.com>2018-12-02 08:15:26 +0100
committerPeter Korsgaard <peter@korsgaard.com>2018-12-02 08:16:10 +0100
commit13c43455a05b036002e79808ca1c8e0d91d7871b (patch)
tree147ddbfc5486085018bb527de1a43961fc8ee1ca
parent2e08c7398a47b414c288ea516514adac3edf00fb (diff)
parent0393f5d34433e34e49ff7ce0fb998735453ed4fc (diff)
Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
-rw-r--r--.gitlab-ci.yml33
-rw-r--r--.gitlab-ci.yml.in2
-rw-r--r--Config.in4
-rw-r--r--DEVELOPERS25
-rw-r--r--Makefile61
-rw-r--r--board/aarch64-efi/genimage-efi.cfg30
-rw-r--r--board/aarch64-efi/grub.cfg6
-rwxr-xr-xboard/aarch64-efi/post-image.sh5
-rw-r--r--board/aarch64-efi/readme.txt34
-rw-r--r--board/orangepi/orangepi-pc/linux.fragment2
-rw-r--r--board/orangepi/orangepi-zero/linux-extras.config3
-rw-r--r--board/solidrun/macchiatobin/extlinux.conf4
-rw-r--r--board/solidrun/macchiatobin/linux-extras.config2
-rwxr-xr-xboard/solidrun/macchiatobin/post-build-mainline.sh5
-rw-r--r--board/solidrun/macchiatobin/readme.txt30
-rw-r--r--board/solidrun/macchiatobin/uboot-fragment.config2
-rw-r--r--boot/grub2/Config.in48
-rw-r--r--boot/grub2/grub2.mk74
-rw-r--r--boot/grub2/readme.txt102
-rw-r--r--configs/aarch64_efi_defconfig33
-rw-r--r--configs/olimex_a20_olinuxino_lime2_defconfig13
-rw-r--r--configs/olimex_a20_olinuxino_lime_defconfig13
-rw-r--r--configs/olimex_imx233_olinuxino_defconfig6
-rw-r--r--configs/orangepi_pc_defconfig6
-rw-r--r--configs/orangepi_zero_defconfig6
-rw-r--r--configs/solidrun_macchiatobin_mainline_defconfig13
-rw-r--r--fs/common.mk13
-rw-r--r--linux/Config.in4
-rw-r--r--linux/linux.hash1
-rw-r--r--linux/linux.mk3
-rw-r--r--package/Config.in14
-rw-r--r--package/acpid/acpid.mk8
-rw-r--r--package/acpid/acpid.service9
-rw-r--r--package/alsa-lib/alsa-lib.hash2
-rw-r--r--package/alsa-lib/alsa-lib.mk2
-rw-r--r--package/alsa-utils/alsa-utils.hash2
-rw-r--r--package/alsa-utils/alsa-utils.mk2
-rw-r--r--package/android-tools/0009-Fix-makefiles-for-out-of-tree-ext4_utils-build.patch48
-rw-r--r--package/android-tools/Config.in.host7
-rw-r--r--package/android-tools/android-tools.mk19
-rw-r--r--package/binutils/2.31.1/0002-ld-makefile.patch41
-rw-r--r--package/binutils/2.31.1/0003-check-ldrunpath-length.patch36
-rw-r--r--package/binutils/2.31.1/0004-add-sysroot-fix-from-bug-3049.patch51
-rw-r--r--package/binutils/Config.in.host4
-rw-r--r--package/binutils/arc-2018.03/0002-ld-makefile.patch41
-rw-r--r--package/binutils/arc-2018.03/0003-check-ldrunpath-length.patch36
-rw-r--r--package/binutils/arc-2018.03/0004-add-sysroot-fix-from-bug-3049.patch51
-rw-r--r--package/binutils/arc-2018.09/0005-poison-system-directories.patch (renamed from package/binutils/arc-2018.03/0005-poison-system-directories.patch)60
-rw-r--r--package/binutils/binutils.hash2
-rw-r--r--package/binutils/binutils.mk4
-rw-r--r--package/c-ares/c-ares.hash2
-rw-r--r--package/c-ares/c-ares.mk3
-rw-r--r--package/civetweb/0001-Lua-fix-a-typo-changing-LFS_DIR-to-LFS_DIR.patch27
-rw-r--r--package/civetweb/0001-modlua.ini-include-dlfcn.h.patch34
-rw-r--r--package/civetweb/Config.in12
-rw-r--r--package/civetweb/civetweb.hash3
-rw-r--r--package/civetweb/civetweb.mk53
-rw-r--r--package/cunit/Config.in6
-rw-r--r--package/cunit/cunit.hash3
-rw-r--r--package/cunit/cunit.mk17
-rw-r--r--package/dante/dante.mk7
-rw-r--r--package/dbus-python/dbus-python.hash2
-rw-r--r--package/dbus-python/dbus-python.mk2
-rw-r--r--package/dovecot-pigeonhole/dovecot-pigeonhole.hash2
-rw-r--r--package/dovecot-pigeonhole/dovecot-pigeonhole.mk2
-rw-r--r--package/dovecot/dovecot.hash2
-rw-r--r--package/dovecot/dovecot.mk2
-rw-r--r--package/doxygen/0001-Bug-776791-1.8.13-Regression-Segfault-building-the-b.patch30
-rw-r--r--package/doxygen/0002-build-fix-the-way-lang_cfg.h-is-generated.patch58
-rw-r--r--package/doxygen/doxygen.hash2
-rw-r--r--package/doxygen/doxygen.mk2
-rw-r--r--package/ejabberd/0001-Makefile.in-do-not-download-or-compile-dependencies.patch35
-rw-r--r--package/ejabberd/0001-remove-make-targets-for-deps.patch43
-rw-r--r--package/ejabberd/0002-fix-ejabberdctl.patch (renamed from package/ejabberd/0007-fix-ejabberdctl.patch)0
-rw-r--r--package/ejabberd/0002-remove-dependencies-from-rebar-config.patch106
-rw-r--r--package/ejabberd/0003-remove-checking-erlang-version.patch32
-rw-r--r--package/ejabberd/0004-correct-includes.patch1919
-rw-r--r--package/ejabberd/0005-disable-ERLANG_DEPRECATED_CHECK.patch29
-rw-r--r--package/ejabberd/0006-fix-install-permissions.patch84
-rw-r--r--package/ejabberd/0008-handle-error-case-from-lib_dir.patch32
-rw-r--r--package/ejabberd/0009-disable-mod_avatar.patch32
-rw-r--r--package/ejabberd/Config.in1
-rw-r--r--package/ejabberd/ejabberd.hash2
-rw-r--r--package/ejabberd/ejabberd.mk12
-rw-r--r--package/ell/0001-ell-ell.sym-add-missing-l_genl_family_set_unicast_ha.patch30
-rw-r--r--package/ell/0001-ell-signal.h-use-standard-sigset_t-fixes-musl-compil.patch57
-rw-r--r--package/ell/ell.hash2
-rw-r--r--package/ell/ell.mk2
-rw-r--r--package/erlang-eimp/Config.in12
-rw-r--r--package/erlang-eimp/erlang-eimp.mk13
-rw-r--r--package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash2
-rw-r--r--package/erlang-p1-cache-tab/erlang-p1-cache-tab.mk2
-rw-r--r--package/erlang-p1-iconv/erlang-p1-iconv.hash2
-rw-r--r--package/erlang-p1-iconv/erlang-p1-iconv.mk2
-rw-r--r--package/erlang-p1-oauth2/erlang-p1-oauth2.hash2
-rw-r--r--package/erlang-p1-oauth2/erlang-p1-oauth2.mk2
-rw-r--r--package/erlang-p1-sip/0002-remove-dependencies-from-rebar-config.patch20
-rw-r--r--package/erlang-p1-sip/erlang-p1-sip.hash2
-rw-r--r--package/erlang-p1-sip/erlang-p1-sip.mk2
-rw-r--r--package/erlang-p1-stringprep/erlang-p1-stringprep.hash2
-rw-r--r--package/erlang-p1-stringprep/erlang-p1-stringprep.mk2
-rw-r--r--package/erlang-p1-stun/0001-remove-dependencies-from-rebar-config.patch16
-rw-r--r--package/erlang-p1-stun/erlang-p1-stun.hash2
-rw-r--r--package/erlang-p1-stun/erlang-p1-stun.mk2
-rw-r--r--package/erlang-p1-tls/erlang-p1-tls.hash2
-rw-r--r--package/erlang-p1-tls/erlang-p1-tls.mk2
-rw-r--r--package/erlang-p1-utils/erlang-p1-utils.hash2
-rw-r--r--package/erlang-p1-utils/erlang-p1-utils.mk2
-rw-r--r--package/erlang-p1-xml/0001-remove-dependencies-from-rebar-config.patch18
-rw-r--r--package/erlang-p1-xml/erlang-p1-xml.hash2
-rw-r--r--package/erlang-p1-xml/erlang-p1-xml.mk2
-rw-r--r--package/erlang-p1-xmpp/0002-remove-dependencies-from-rebar-config.patch19
-rw-r--r--package/erlang-p1-xmpp/Config.in2
-rw-r--r--package/erlang-p1-xmpp/erlang-p1-xmpp.hash2
-rw-r--r--package/erlang-p1-xmpp/erlang-p1-xmpp.mk4
-rw-r--r--package/erlang-p1-yaml/0001-remove-dependencies-from-rebar-config.patch18
-rw-r--r--package/erlang-p1-yaml/erlang-p1-yaml.hash2
-rw-r--r--package/erlang-p1-yaml/erlang-p1-yaml.mk2
-rw-r--r--package/erlang-p1-zlib/erlang-p1-zlib.hash2
-rw-r--r--package/erlang-p1-zlib/erlang-p1-zlib.mk2
-rw-r--r--package/ethtool/ethtool.hash2
-rw-r--r--package/ethtool/ethtool.mk2
-rw-r--r--package/eudev/eudev.hash4
-rw-r--r--package/eudev/eudev.mk2
-rw-r--r--package/fail2ban/Config.in15
-rw-r--r--package/fail2ban/S60fail2ban23
-rw-r--r--package/fail2ban/fail2ban.hash3
-rw-r--r--package/fail2ban/fail2ban.mk27
-rw-r--r--package/fontconfig/Config.in2
-rw-r--r--package/fontconfig/fontconfig.hash4
-rw-r--r--package/fontconfig/fontconfig.mk7
-rw-r--r--package/gcc/Config.in.host6
-rw-r--r--package/gcc/arc-2018.03/0860-cilk-fix-build-without-wchar.patch64
-rw-r--r--package/gcc/arc-2018.09/0100-uclibc-conf.patch (renamed from package/gcc/arc-2018.03/0100-uclibc-conf.patch)0
-rw-r--r--package/gcc/gcc.hash2
-rw-r--r--package/gcc/gcc.mk2
-rw-r--r--package/gdb/Config.in.host2
-rw-r--r--package/gdb/gdb.hash2
-rw-r--r--package/glibc/arc-2018.09-release/glibc.hash (renamed from package/glibc/arc-2018.03-release/glibc.hash)4
-rw-r--r--package/glibc/glibc.mk2
-rw-r--r--package/grpc/0001-target-build-using-host-plugin.patch52
-rw-r--r--package/grpc/Config.in23
-rw-r--r--package/grpc/grpc.hash3
-rw-r--r--package/grpc/grpc.mk35
-rw-r--r--package/gzip/gzip.mk2
-rw-r--r--package/intel-microcode/intel-microcode.hash4
-rw-r--r--package/intel-microcode/intel-microcode.mk16
-rw-r--r--package/ipset/ipset.hash6
-rw-r--r--package/ipset/ipset.mk2
-rw-r--r--package/iptables/0001-ebtables-vlan-fix-userspace-kernel-headers-collision.patch45
-rw-r--r--package/iptables/0001-extensions-libxt_bpf-Fix-build-with-old-kernel-versi.patch49
-rw-r--r--package/iptables/0002-xtables-monitor-fix-build-with-older-glibc.patch77
-rw-r--r--package/iptables/0003-include-fix-build-with-kernel-headers-before-4.2.patch51
-rw-r--r--package/iptables/0004-xtables-monitor-fix-build-with-musl-libc.patch44
-rw-r--r--package/iptables/0005-include-extend-the-headers-conflict-workaround-to-in.patch37
-rw-r--r--package/iptables/iptables.hash7
-rw-r--r--package/iptables/iptables.mk4
-rw-r--r--package/iucode-tool/S00iucode-tool35
-rw-r--r--package/iucode-tool/iucode-tool.hash2
-rw-r--r--package/iucode-tool/iucode-tool.mk2
-rw-r--r--package/iwd/0001-monitor-pcap.c-add-missing-sys-stat.h-include.patch46
-rw-r--r--package/iwd/0002-Fix-__iwd_backtrace_init-availability-detection.patch62
-rw-r--r--package/iwd/Config.in14
-rw-r--r--package/iwd/iwd.hash5
-rw-r--r--package/iwd/iwd.mk47
-rw-r--r--package/jpeg-turbo/0001-fix-install-of-binaries-with-a-static-only-library.patch42
-rw-r--r--package/jpeg-turbo/jpeg-turbo.hash8
-rw-r--r--package/jpeg-turbo/jpeg-turbo.mk2
-rw-r--r--package/keepalived/0001-Rename-TIMER_MAX-to-TIMER_MAXIMUM.patch61
-rw-r--r--package/keepalived/0001-configure.ac-do-not-force-PIE.patch38
-rw-r--r--package/keepalived/Config.in1
-rw-r--r--package/keepalived/keepalived.hash2
-rw-r--r--package/keepalived/keepalived.mk20
-rw-r--r--package/libcurl/Config.in32
-rw-r--r--package/libcurl/libcurl.mk28
-rw-r--r--package/libdrm/libdrm.mk3
-rw-r--r--package/libid3tag/id3tag.pc11
-rw-r--r--package/libid3tag/libid3tag.mk7
-rw-r--r--package/libkrb5/libkrb5.hash2
-rw-r--r--package/libkrb5/libkrb5.mk2
-rw-r--r--package/libmicrohttpd/libmicrohttpd.hash2
-rw-r--r--package/libmicrohttpd/libmicrohttpd.mk2
-rw-r--r--package/libnfs/0002-libnfs.c-include-time.h-in-libnfs.c.patch35
-rw-r--r--package/libnfs/libnfs.hash4
-rw-r--r--package/libnfs/libnfs.mk2
-rw-r--r--package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch297
-rw-r--r--package/libnftnl/libnftnl.hash5
-rw-r--r--package/libnftnl/libnftnl.mk4
-rw-r--r--package/libostree/libostree.hash2
-rw-r--r--package/libostree/libostree.mk14
-rw-r--r--package/libpng/libpng.hash10
-rw-r--r--package/libpng/libpng.mk2
-rw-r--r--package/libressl/libressl.hash2
-rw-r--r--package/libressl/libressl.mk2
-rw-r--r--package/libsigrok/Config.in3
-rw-r--r--package/libsigrok/libsigrok.hash2
-rw-r--r--package/libsigrok/libsigrok.mk2
-rw-r--r--package/libsigrokdecode/libsigrokdecode.hash2
-rw-r--r--package/libsigrokdecode/libsigrokdecode.mk2
-rw-r--r--package/libtirpc/libtirpc.hash4
-rw-r--r--package/libtirpc/libtirpc.mk2
-rw-r--r--package/libtool/libtool.mk16
-rw-r--r--package/libtorrent-rasterbar/Config.in21
-rw-r--r--package/libtorrent-rasterbar/libtorrent-rasterbar.hash3
-rw-r--r--package/libtorrent-rasterbar/libtorrent-rasterbar.mk25
-rw-r--r--package/libuv/libuv.hash2
-rw-r--r--package/libuv/libuv.mk2
-rw-r--r--package/linux-firmware/linux-firmware.hash6
-rw-r--r--package/linux-firmware/linux-firmware.mk2
-rw-r--r--package/linux-headers/Config.in.host11
-rw-r--r--package/linux-tools/Config.in9
-rw-r--r--package/linux-tools/linux-tool-pci.mk.in27
-rw-r--r--package/linuxptp/linuxptp.hash9
-rw-r--r--package/linuxptp/linuxptp.mk6
-rw-r--r--package/lldpd/0001-build-ability-to-disable-libbsd-with-without-libbsd.patch106
-rw-r--r--package/lldpd/0001-build-make-generation-of-atom-glue-compatible-with-o.patch43
-rw-r--r--package/lldpd/0002-configure-do-not-check-for-libbsd.patch61
-rw-r--r--package/lldpd/0003-configure-remove-check-on-CXX-compiler.patch35
-rw-r--r--package/lldpd/lldpd.hash2
-rw-r--r--package/lldpd/lldpd.mk11
-rw-r--r--package/luarocks/luarocks-br-config.lua13
-rw-r--r--package/luarocks/luarocks.mk19
-rw-r--r--package/memcached/memcached.hash6
-rw-r--r--package/memcached/memcached.mk2
-rw-r--r--package/mesa3d-headers/mesa3d-headers.mk2
-rw-r--r--package/mesa3d/mesa3d.hash10
-rw-r--r--package/mesa3d/mesa3d.mk2
-rw-r--r--package/mini-snmpd/0001-Prepend-zero-byte-before-unsigned-integers.patch31
-rw-r--r--package/mini-snmpd/0002-mib.c-allow-unsigned-integers-to-have-an-extra-byte.patch28
-rw-r--r--package/mini-snmpd/Config.in7
-rw-r--r--package/mini-snmpd/mini-snmpd.hash3
-rw-r--r--package/mini-snmpd/mini-snmpd.mk21
-rw-r--r--package/mini-snmpd/mini-snmpd.service12
-rw-r--r--package/mmc-utils/0002-fix-overlapping-with-strncpy.patch2
-rw-r--r--package/msgpack/msgpack.hash4
-rw-r--r--package/msgpack/msgpack.mk2
-rw-r--r--package/msmtp/Config.in2
-rw-r--r--package/msmtp/msmtp.hash7
-rw-r--r--package/msmtp/msmtp.mk15
-rw-r--r--package/netsnmp/netsnmp.mk8
-rw-r--r--package/nftables/nftables.hash7
-rw-r--r--package/nftables/nftables.mk11
-rw-r--r--package/paho-mqtt-c/0001-Declare-mqtt-tests-as-a-C-only-project.patch27
-rw-r--r--package/paho-mqtt-c/paho-mqtt-c.hash2
-rw-r--r--package/paho-mqtt-c/paho-mqtt-c.mk2
-rw-r--r--package/perl-time-hires/Config.in10
-rw-r--r--package/perl-time-hires/perl-time-hires.hash6
-rw-r--r--package/perl-time-hires/perl-time-hires.mk14
-rw-r--r--package/pkg-download.mk1
-rw-r--r--package/pkg-generic.mk18
-rw-r--r--package/pkg-luarocks.mk9
-rw-r--r--package/pkg-python.mk14
-rw-r--r--package/pkg-rebar.mk12
-rw-r--r--package/proftpd/Config.in13
-rw-r--r--package/proftpd/proftpd.mk5
-rw-r--r--package/pulseview/pulseview.hash2
-rw-r--r--package/pulseview/pulseview.mk2
-rw-r--r--package/python-aiodns/Config.in8
-rw-r--r--package/python-aiodns/python-aiodns.hash5
-rw-r--r--package/python-aiodns/python-aiodns.mk14
-rw-r--r--package/python-aiohttp/Config.in14
-rw-r--r--package/python-aiohttp/python-aiohttp.hash5
-rw-r--r--package/python-aiohttp/python-aiohttp.mk14
-rw-r--r--package/python-autobahn/python-autobahn.hash4
-rw-r--r--package/python-autobahn/python-autobahn.mk4
-rw-r--r--package/python-cchardet/Config.in11
-rw-r--r--package/python-cchardet/python-cchardet.hash5
-rw-r--r--package/python-cchardet/python-cchardet.mk14
-rw-r--r--package/python-certifi/python-certifi.hash4
-rw-r--r--package/python-certifi/python-certifi.mk4
-rw-r--r--package/python-crossbar/python-crossbar.hash4
-rw-r--r--package/python-crossbar/python-crossbar.mk4
-rw-r--r--package/python-cython/python-cython.hash4
-rw-r--r--package/python-cython/python-cython.mk4
-rw-r--r--package/python-engineio/python-engineio.hash4
-rw-r--r--package/python-engineio/python-engineio.mk4
-rw-r--r--package/python-jsonmodels/python-jsonmodels.hash7
-rw-r--r--package/python-jsonmodels/python-jsonmodels.mk4
-rw-r--r--package/python-msgpack/python-msgpack.hash6
-rw-r--r--package/python-msgpack/python-msgpack.mk6
-rw-r--r--package/python-multidict/python-multidict.hash4
-rw-r--r--package/python-multidict/python-multidict.mk4
-rw-r--r--package/python-networkmanager/python-networkmanager.hash6
-rw-r--r--package/python-networkmanager/python-networkmanager.mk4
-rw-r--r--package/python-pathlib2/python-pathlib2.hash4
-rw-r--r--package/python-pathlib2/python-pathlib2.mk4
-rw-r--r--package/python-pycares/Config.in6
-rw-r--r--package/python-pycares/python-pycares.hash5
-rw-r--r--package/python-pycares/python-pycares.mk14
-rw-r--r--package/python-pycryptodomex/python-pycryptodomex.hash6
-rw-r--r--package/python-pycryptodomex/python-pycryptodomex.mk4
-rw-r--r--package/python-pydal/python-pydal.hash3
-rw-r--r--package/python-pydal/python-pydal.mk5
-rw-r--r--package/python-setuptools/python-setuptools.hash4
-rw-r--r--package/python-setuptools/python-setuptools.mk4
-rw-r--r--package/python-sortedcontainers/python-sortedcontainers.hash4
-rw-r--r--package/python-sortedcontainers/python-sortedcontainers.mk4
-rw-r--r--package/python-web2py/python-web2py.hash3
-rw-r--r--package/python-web2py/python-web2py.mk2
-rw-r--r--package/qemu/Config.in.host6
-rw-r--r--package/qemu/qemu.mk12
-rw-r--r--package/qt5/qt5base/qt5base.mk8
-rw-r--r--package/quagga/0002-configure-fix-static-linking-with-readline.patch41
-rw-r--r--package/quagga/0003-lib-memory-fix-indirect-static-link-with-zlib.patch108
-rw-r--r--package/quagga/0004-bgpd-Fix-AS_PATH-size-calculation-for-long-paths.patch33
-rw-r--r--package/quagga/0005-bgpd-security-invalid-attr-length-sends-NOTIFY-with-.patch69
-rw-r--r--package/quagga/0006-bgpd-security-Fix-double-free-of-unknown-attribute.patch112
-rw-r--r--package/quagga/0007-bgpd-security-debug-print-of-received-NOTIFY-data-ca.patch114
-rw-r--r--package/quagga/0008-bgpd-security-fix-infinite-loop-on-certain-invalid-O.patch43
-rw-r--r--package/quagga/Config.in6
-rw-r--r--package/quagga/quagga.hash5
-rw-r--r--package/quagga/quagga.mk12
-rw-r--r--package/sdl2/0001-Fixed-the-DirectFB-renderer-not-being-enabled-in-aut.patch42
-rw-r--r--package/sdl2/0001-fix-build-with-disable-threads.patch63
-rw-r--r--package/sdl2/sdl2.hash4
-rw-r--r--package/sdl2/sdl2.mk2
-rw-r--r--package/setools/0003-setup.py-drop-path-prefix-from-man-install.patch42
-rw-r--r--package/shadowsocks-libev/Config.in12
-rw-r--r--package/shadowsocks-libev/shadowsocks-libev.hash2
-rw-r--r--package/shadowsocks-libev/shadowsocks-libev.mk9
-rw-r--r--package/squid/Config.in2
-rw-r--r--package/squid/squid.mk9
-rw-r--r--package/strace/strace.hash4
-rw-r--r--package/strace/strace.mk4
-rw-r--r--package/stress-ng/Config.in7
-rw-r--r--package/stress-ng/stress-ng.hash2
-rw-r--r--package/stress-ng/stress-ng.mk2
-rw-r--r--package/tpm2-abrmd/Config.in9
-rwxr-xr-xpackage/tpm2-abrmd/S80tpm2-abrmd2
-rw-r--r--package/tpm2-abrmd/tpm2-abrmd.hash2
-rw-r--r--package/tpm2-abrmd/tpm2-abrmd.mk2
-rw-r--r--package/tpm2-tools/0001-Fix-build-with-LibreSSL.patch64
-rw-r--r--package/tpm2-tools/0001-tpm2_certify-fix-type-may-be-used-uninitialized-warn.patch14
-rw-r--r--package/tpm2-tools/Config.in9
-rw-r--r--package/tpm2-tools/tpm2-tools.hash2
-rw-r--r--package/tpm2-tools/tpm2-tools.mk2
-rw-r--r--package/tpm2-tss/0001-tcti-tcti_socket.cpp-add-missing-inclusion-of-sys-se.patch33
-rw-r--r--package/tpm2-tss/Config.in8
-rw-r--r--package/tpm2-tss/tpm2-tss.hash4
-rw-r--r--package/tpm2-tss/tpm2-tss.mk5
-rw-r--r--package/trace-cmd/trace-cmd.hash4
-rw-r--r--package/trace-cmd/trace-cmd.mk2
-rw-r--r--package/trinity/0004-Check-if-VIDIOC_RESERVED-is-defined.patch56
-rw-r--r--package/tslib/tslib.hash4
-rw-r--r--package/tslib/tslib.mk2
-rw-r--r--package/uclibc/0001-Revert-ldconfig-add-glibc-compatibility-fix.patch54
-rw-r--r--package/uclibc/0002-librt-declare-clock_nanosleep-independent-of-thread-.patch34
-rw-r--r--package/uclibc/0003-ldso-arc-fix-LD_DEBUG-segv-when-printing-R_ARC_NONE.patch45
-rw-r--r--package/uclibc/0004-mkostemp64-clear-flags-as-mkostemp-does.patch38
-rw-r--r--package/uclibc/uclibc.hash6
-rw-r--r--package/uclibc/uclibc.mk4
-rw-r--r--package/util-linux/0001-rtcwake-use-poweroff-if-shutdown-is-not-found.patch86
-rw-r--r--package/util-linux/0002-agetty-fix-output-of-escaped-characters.patch26
-rw-r--r--package/util-linux/0003-setarch-fix-obscure-sparc32bash-use-case.patch84
-rw-r--r--package/util-linux/Config.in2
-rw-r--r--package/util-linux/util-linux.hash14
-rw-r--r--package/util-linux/util-linux.mk11
-rw-r--r--package/vmtouch/Config.in11
-rw-r--r--package/vmtouch/vmtouch.hash5
-rw-r--r--package/vmtouch/vmtouch.mk21
-rw-r--r--package/websocketpp/Config.in15
-rw-r--r--package/websocketpp/websocketpp.hash3
-rw-r--r--package/websocketpp/websocketpp.mk15
-rw-r--r--package/weston/weston.mk6
-rw-r--r--package/wireguard/wireguard.hash4
-rw-r--r--package/wireguard/wireguard.mk2
-rw-r--r--package/wolfssl/wolfssl.hash2
-rw-r--r--package/wolfssl/wolfssl.mk14
-rw-r--r--support/dependencies/check-host-gzip.mk3
-rwxr-xr-xsupport/dependencies/check-host-gzip.sh21
-rwxr-xr-xsupport/dependencies/check-host-tar.sh9
-rwxr-xr-xsupport/kconfig/merge_config.sh12
-rw-r--r--support/kconfig/patches/20-merge_config.sh-Allow-to-define-config-prefix.patch31
-rw-r--r--support/kconfig/patches/21-Avoid-false-positive-matches-from-comment-lines.patch32
-rw-r--r--support/kconfig/patches/series2
-rwxr-xr-xsupport/scripts/check-bin-arch4
-rwxr-xr-xsupport/scripts/check-host-rpath3
-rwxr-xr-xsupport/testing/tests/package/copy-sample-script-to-target.sh7
-rw-r--r--support/testing/tests/package/sample_python_argh.py10
-rw-r--r--support/testing/tests/package/sample_python_attrs.py15
-rw-r--r--support/testing/tests/package/sample_python_autobahn.py1
-rw-r--r--support/testing/tests/package/sample_python_automat.py27
-rw-r--r--support/testing/tests/package/sample_python_bitstring.py6
-rw-r--r--support/testing/tests/package/sample_python_cbor_dec.py10
-rw-r--r--support/testing/tests/package/sample_python_cbor_enc.py14
-rw-r--r--support/testing/tests/package/sample_python_click.py12
-rw-r--r--support/testing/tests/package/sample_python_constantly.py19
-rw-r--r--support/testing/tests/package/sample_python_crossbar.py3
-rw-r--r--support/testing/tests/package/sample_python_cryptography.py3
-rw-r--r--support/testing/tests/package/sample_python_incremental.py3
-rw-r--r--support/testing/tests/package/sample_python_passlib.py5
-rw-r--r--support/testing/tests/package/sample_python_pexpect.py8
-rw-r--r--support/testing/tests/package/sample_python_pynacl.py3
-rw-r--r--support/testing/tests/package/sample_python_pyyaml_dec.py10
-rw-r--r--support/testing/tests/package/sample_python_pyyaml_enc.py14
-rw-r--r--support/testing/tests/package/sample_python_service_identity.py2
-rw-r--r--support/testing/tests/package/sample_python_subprocess32.py6
-rw-r--r--support/testing/tests/package/sample_python_treq.py16
-rw-r--r--support/testing/tests/package/sample_python_twisted.py9
-rw-r--r--support/testing/tests/package/sample_python_txaio_asyncio.py3
-rw-r--r--support/testing/tests/package/sample_python_txaio_twisted.py3
-rw-r--r--support/testing/tests/package/sample_python_txtorcon.py1
-rw-r--r--support/testing/tests/package/sample_python_ubjson_dec.py10
-rw-r--r--support/testing/tests/package/sample_python_ubjson_enc.py14
-rw-r--r--support/testing/tests/package/test_python.py56
-rw-r--r--support/testing/tests/package/test_python_argh.py45
-rw-r--r--support/testing/tests/package/test_python_attrs.py21
-rw-r--r--support/testing/tests/package/test_python_autobahn.py29
-rw-r--r--support/testing/tests/package/test_python_automat.py23
-rw-r--r--support/testing/tests/package/test_python_bitstring.py21
-rw-r--r--support/testing/tests/package/test_python_cbor.py23
-rw-r--r--support/testing/tests/package/test_python_click.py44
-rw-r--r--support/testing/tests/package/test_python_constantly.py21
-rw-r--r--support/testing/tests/package/test_python_crossbar.py14
-rw-r--r--support/testing/tests/package/test_python_cryptography.py33
-rw-r--r--support/testing/tests/package/test_python_incremental.py33
-rw-r--r--support/testing/tests/package/test_python_passlib.py23
-rw-r--r--support/testing/tests/package/test_python_pexpect.py21
-rw-r--r--support/testing/tests/package/test_python_pynacl.py27
-rw-r--r--support/testing/tests/package/test_python_pyyaml.py23
-rw-r--r--support/testing/tests/package/test_python_service_identity.py23
-rw-r--r--support/testing/tests/package/test_python_subprocess32.py11
-rw-r--r--support/testing/tests/package/test_python_treq.py29
-rw-r--r--support/testing/tests/package/test_python_twisted.py35
-rw-r--r--support/testing/tests/package/test_python_txaio.py30
-rw-r--r--support/testing/tests/package/test_python_txtorcon.py31
-rw-r--r--support/testing/tests/package/test_python_ubjson.py23
-rw-r--r--support/testing/tests/package/test_rust.py78
-rw-r--r--toolchain/Config.in5
-rw-r--r--toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in14
-rw-r--r--toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.hash8
-rw-r--r--toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.mk8
-rw-r--r--toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in14
-rw-r--r--toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.hash8
-rw-r--r--toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.mk8
-rw-r--r--toolchain/toolchain-external/toolchain-external-custom/Config.in.options4
-rw-r--r--toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in6
-rw-r--r--toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.hash10
-rw-r--r--toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.mk2
-rwxr-xr-xutils/test-pkg2
440 files changed, 4151 insertions, 4881 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c78f2ea581..bd2d5ecad7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -51,6 +51,7 @@ check-package:
only:
- triggers
- tags
+ - /-defconfigs$/
script: *defconfig_script
artifacts:
when: always
@@ -67,6 +68,7 @@ check-package:
only:
- triggers
- tags
+ - /-runtime-tests$/
# Keep build directories so the rootfs can be an artifact of the job. The
# runner will clean up those files for us.
# Multiply every emulator timeout by 10 to avoid sporadic failures in
@@ -79,6 +81,7 @@ check-package:
- test-output/*.log
- test-output/*/.config
- test-output/*/images/*
+aarch64_efi_defconfig: *defconfig
acmesystems_aria_g25_128mb_defconfig: *defconfig
acmesystems_aria_g25_256mb_defconfig: *defconfig
acmesystems_arietta_g25_128mb_defconfig: *defconfig
@@ -314,18 +317,48 @@ tests.package.test_ipython.TestIPythonPy2: *runtime_test
tests.package.test_ipython.TestIPythonPy3: *runtime_test
tests.package.test_python.TestPython2: *runtime_test
tests.package.test_python.TestPython3: *runtime_test
+tests.package.test_python_argh.TestPythonPy2Argh: *runtime_test
+tests.package.test_python_argh.TestPythonPy3Argh: *runtime_test
+tests.package.test_python_attrs.TestPythonPy2Attrs: *runtime_test
+tests.package.test_python_attrs.TestPythonPy3Attrs: *runtime_test
tests.package.test_python_autobahn.TestPythonPy2Autobahn: *runtime_test
tests.package.test_python_autobahn.TestPythonPy3Autobahn: *runtime_test
+tests.package.test_python_automat.TestPythonPy2Automat: *runtime_test
+tests.package.test_python_automat.TestPythonPy3Automat: *runtime_test
+tests.package.test_python_bitstring.TestPythonPy2Bitstring: *runtime_test
+tests.package.test_python_bitstring.TestPythonPy3Bitstring: *runtime_test
+tests.package.test_python_cbor.TestPythonPy2Cbor: *runtime_test
+tests.package.test_python_cbor.TestPythonPy3Cbor: *runtime_test
+tests.package.test_python_click.TestPythonPy2Click: *runtime_test
+tests.package.test_python_click.TestPythonPy3Click: *runtime_test
+tests.package.test_python_constantly.TestPythonPy2Constantly: *runtime_test
+tests.package.test_python_constantly.TestPythonPy3Constantly: *runtime_test
+tests.package.test_python_crossbar.TestPythonPy3Crossbar: *runtime_test
tests.package.test_python_cryptography.TestPythonPy2Cryptography: *runtime_test
tests.package.test_python_cryptography.TestPythonPy3Cryptography: *runtime_test
tests.package.test_python_incremental.TestPythonPy2Incremental: *runtime_test
tests.package.test_python_incremental.TestPythonPy3Incremental: *runtime_test
+tests.package.test_python_passlib.TestPythonPy2Passlib: *runtime_test
+tests.package.test_python_passlib.TestPythonPy3Passlib: *runtime_test
+tests.package.test_python_pexpect.TestPythonPy2Pexpect: *runtime_test
+tests.package.test_python_pexpect.TestPythonPy3Pexpect: *runtime_test
+tests.package.test_python_pynacl.TestPythonPy2Pynacl: *runtime_test
+tests.package.test_python_pynacl.TestPythonPy3Pynacl: *runtime_test
+tests.package.test_python_pyyaml.TestPythonPy2Pyyaml: *runtime_test
+tests.package.test_python_pyyaml.TestPythonPy3Pyyaml: *runtime_test
+tests.package.test_python_service_identity.TestPythonPy2ServiceIdentity: *runtime_test
+tests.package.test_python_service_identity.TestPythonPy3ServiceIdentity: *runtime_test
+tests.package.test_python_subprocess32.TestPythonPy2Subprocess32: *runtime_test
+tests.package.test_python_treq.TestPythonPy2Treq: *runtime_test
+tests.package.test_python_treq.TestPythonPy3Treq: *runtime_test
tests.package.test_python_twisted.TestPythonPy2Twisted: *runtime_test
tests.package.test_python_twisted.TestPythonPy3Twisted: *runtime_test
tests.package.test_python_txaio.TestPythonPy2Txaio: *runtime_test
tests.package.test_python_txaio.TestPythonPy3Txaio: *runtime_test
tests.package.test_python_txtorcon.TestPythonPy2Txtorcon: *runtime_test
tests.package.test_python_txtorcon.TestPythonPy3Txtorcon: *runtime_test
+tests.package.test_python_ubjson.TestPythonPy2Ubjson: *runtime_test
+tests.package.test_python_ubjson.TestPythonPy3Ubjson: *runtime_test
tests.package.test_rust.TestRust: *runtime_test
tests.package.test_rust.TestRustBin: *runtime_test
tests.package.test_syslog_ng.TestSyslogNg: *runtime_test
diff --git a/.gitlab-ci.yml.in b/.gitlab-ci.yml.in
index db526c4b5a..ebca29ca1f 100644
--- a/.gitlab-ci.yml.in
+++ b/.gitlab-ci.yml.in
@@ -51,6 +51,7 @@ check-package:
only:
- triggers
- tags
+ - /-defconfigs$/
script: *defconfig_script
artifacts:
when: always
@@ -67,6 +68,7 @@ check-package:
only:
- triggers
- tags
+ - /-runtime-tests$/
# Keep build directories so the rootfs can be an artifact of the job. The
# runner will clean up those files for us.
# Multiply every emulator timeout by 10 to avoid sporadic failures in
diff --git a/Config.in b/Config.in
index 03e4eb3928..f965e9d6d8 100644
--- a/Config.in
+++ b/Config.in
@@ -136,10 +136,6 @@ config BR2_SCP
string "Secure copy (scp) command"
default "scp"
-config BR2_SSH
- string "Secure shell (ssh) command"
- default "ssh"
-
config BR2_HG
string "Mercurial (hg) command"
default "hg"
diff --git a/DEVELOPERS b/DEVELOPERS
index 53467da489..ad80d365dd 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -98,6 +98,9 @@ F: package/openpgm/
N: Alexander Mukhin <alexander.i.mukhin@gmail.com>
F: package/hostapd/
+N: Alexander Sverdlin <alexander.sverdlin@gmail.com>
+F: package/mini-snmpd/
+
N: Alexander Varnin <fenixk19@mail.ru>
F: package/liblog4c-localtime/
@@ -146,6 +149,7 @@ F: package/libunwind/
N: Angelo Compagnucci <angelo.compagnucci@gmail.com>
F: package/corkscrew/
+F: package/fail2ban/
F: package/i2c-tools/
F: package/mender/
F: package/mono/
@@ -351,7 +355,6 @@ F: package/perl-mime-base64/
F: package/perl-net-dns/
F: package/perl-net-http/
F: package/perl-netaddr-ip/
-F: package/perl-time-hires/
F: package/perl-timedate/
F: package/perl-uri/
F: package/perl-www-robotrules/
@@ -403,6 +406,9 @@ N: Bogdan Radulescu <bogdan@nimblex.net>
F: package/iftop/
F: package/ncdu/
+N: Brandon Maier <brandon.maier@rockwellcollins.com>
+F: package/vmtouch/
+
N: Brock Williams <brock@cottonwoodcomputer.com>
F: package/pdmenu/
@@ -984,8 +990,12 @@ F: configs/pine64_defconfig
F: configs/pine64_sopine_defconfig
N: James Hilliard <james.hilliard1@gmail.com>
+F: package/python-aiodns/
+F: package/python-aiohttp/
F: package/python-async-timeout/
+F: package/python-cchardet/
F: package/python-multidict/
+F: package/python-pycares/
F: package/python-yarl/
N: James Knight <james.knight@rockwellcollins.com>
@@ -1066,6 +1076,7 @@ F: package/python-libconfig/
N: Johan Oudinet <johan.oudinet@gmail.com>
F: package/ejabberd/
+F: package/erlang-eimp/
F: package/erlang-goldrush/
F: package/erlang-jiffy/
F: package/erlang-lager/
@@ -1167,6 +1178,9 @@ F: package/qt5/
N: Julien Floret <julien.floret@6wind.com>
F: package/lldpd/
+N: Julien Grossholtz <julien.grossholtz@openest.io>
+F: package/paho-mqtt-c
+
N: Julien Viard de Galbert <julien@vdg.name>
F: package/dieharder/
F: package/easy-rsa/
@@ -1361,6 +1375,7 @@ F: package/checkpolicy/
F: package/checksec/
F: package/cgroupfs-mount/
F: package/crda/
+F: package/cunit/
F: package/devmem2/
F: package/dnsmasq/
F: package/dosfstools/
@@ -1660,6 +1675,7 @@ F: package/ghostscript-fonts/
F: package/gstreamer1/gst1-interpipe/
F: package/gstreamer1/gst1-validate/
F: package/gstreamer1/gstreamer1-editing-services/
+F: package/iwd/
F: package/libevdev/
F: package/log4cplus/
F: package/postgresql/
@@ -1698,6 +1714,9 @@ F: package/psplash/
F: package/sispmctl/
F: package/zsh/
+N: Philipp Richter <richterphilipp.pops@gmail.com>
+F: package/libtorrent-rasterbar/
+
N: Philippe Proulx <eeppeliteloop@gmail.com>
F: package/lttng-babeltrace/
F: package/lttng-libust/
@@ -1772,6 +1791,9 @@ F: package/subversion/
N: RJ Ascani <rj.ascani@gmail.com>
F: package/azmq/
+N: Robert Rose <robertroyrose@gmail.com>
+F: package/grpc/
+
N: Rodrigo Rebello <rprebello@gmail.com>
F: package/chocolate-doom/
F: package/irssi/
@@ -1822,6 +1844,7 @@ F: package/python-pysnmp/
F: package/python-pysnmp-apps/
F: package/python-pysnmp-mibs/
F: package/python-tornado/
+F: package/websocketpp/
N: Ryan Coe <bluemrp9@gmail.com>
F: package/inadyn/
diff --git a/Makefile b/Makefile
index e1e7e53068..37df98520e 100644
--- a/Makefile
+++ b/Makefile
@@ -105,22 +105,6 @@ ifneq ($(firstword $(sort $(RUNNING_MAKE_VERSION) $(MIN_MAKE_VERSION))),$(MIN_MA
$(error You have make '$(RUNNING_MAKE_VERSION)' installed. GNU make >= $(MIN_MAKE_VERSION) is required)
endif
-# Parallel execution of this Makefile is disabled because it changes
-# the packages building order, that can be a problem for two reasons:
-# - If a package has an unspecified optional dependency and that
-# dependency is present when the package is built, it is used,
-# otherwise it isn't (but compilation happily proceeds) so the end
-# result will differ if the order is swapped due to parallel
-# building.
-# - Also changing the building order can be a problem if two packages
-# manipulate the same file in the target directory.
-#
-# Taking into account the above considerations, if you still want to execute
-# this top-level Makefile in parallel comment the ".NOTPARALLEL" line and
-# use the -j<jobs> option when building, e.g:
-# make -j$((`getconf _NPROCESSORS_ONLN`+1))
-.NOTPARALLEL:
-
# absolute path
TOPDIR := $(CURDIR)
CONFIG_CONFIG_IN = Config.in
@@ -246,6 +230,22 @@ ifeq ($(filter $(noconfig_targets),$(MAKECMDGOALS)),)
-include $(BR2_CONFIG)
endif
+# Parallel execution of this Makefile is disabled because it changes
+# the packages building order, that can be a problem for two reasons:
+# - If a package has an unspecified optional dependency and that
+# dependency is present when the package is built, it is used,
+# otherwise it isn't (but compilation happily proceeds) so the end
+# result will differ if the order is swapped due to parallel
+# building.
+# - Also changing the building order can be a problem if two packages
+# manipulate the same file in the target directory.
+#
+# Taking into account the above considerations, if you still want to execute
+# this top-level Makefile in parallel comment the ".NOTPARALLEL" line and
+# use the -j<jobs> option when building, e.g:
+# make -j$((`getconf _NPROCESSORS_ONLN`+1))
+.NOTPARALLEL:
+
# timezone and locale may affect build output
ifeq ($(BR2_REPRODUCIBLE),y)
export TZ = UTC
@@ -468,14 +468,14 @@ BR_PATH = "$(HOST_DIR)/bin:$(HOST_DIR)/sbin:$(PATH)"
# Location of a file giving a big fat warning that output/target
# should not be used as the root filesystem.
-TARGET_DIR_WARNING_FILE = $(BASE_TARGET_DIR)/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
+TARGET_DIR_WARNING_FILE = $(TARGET_DIR)/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
ifeq ($(BR2_CCACHE),y)
-CCACHE := $(HOST_DIR)/bin/ccache
+CCACHE = $(HOST_DIR)/bin/ccache
BR_CACHE_DIR ?= $(call qstrip,$(BR2_CCACHE_DIR))
export BR_CACHE_DIR
-HOSTCC := $(CCACHE) $(HOSTCC)
-HOSTCXX := $(CCACHE) $(HOSTCXX)
+HOSTCC = $(CCACHE) $(HOSTCC_NOCCACHE)
+HOSTCXX = $(CCACHE) $(HOSTCXX_NOCCACHE)
else
export BR_NO_CCACHE
endif
@@ -572,10 +572,6 @@ $(foreach pkg,$(call UPPERCASE,$(PACKAGES)),\
endif
-.PHONY: dirs
-dirs: $(BUILD_DIR) $(STAGING_DIR) $(BASE_TARGET_DIR) \
- $(HOST_DIR) $(HOST_DIR_SYMLINK) $(BINARIES_DIR)
-
$(BUILD_DIR)/buildroot-config/auto.conf: $(BR2_CONFIG)
$(MAKE1) $(EXTRAMAKEARGS) HOSTCC="$(HOSTCC_NOCCACHE)" HOSTCXX="$(HOSTCXX_NOCCACHE)" syncconfig
@@ -605,11 +601,6 @@ sdk: prepare-sdk $(BR2_TAR_HOST_DEPENDENCY)
--transform='s#^\.#$(BR2_SDK_PREFIX)#' \
-C $(HOST_DIR) "."
-# Populating the staging with the base directories is handled by the skeleton package
-$(STAGING_DIR):
- @mkdir -p $(STAGING_DIR)
- @ln -snf $(STAGING_DIR) $(BASE_DIR)/staging
-
RSYNC_VCS_EXCLUSIONS = \
--exclude .svn --exclude .git --exclude .hg --exclude .bzr \
--exclude CVS
@@ -710,8 +701,14 @@ $(TARGETS_ROOTFS): target-finalize
# Avoid the rootfs name leaking down the dependency chain
target-finalize: ROOTFS=
+host-finalize: $(HOST_DIR_SYMLINK)
+
+.PHONY: staging-finalize
+staging-finalize:
+ @ln -snf $(STAGING_DIR) $(BASE_DIR)/staging
+
.PHONY: target-finalize
-target-finalize: $(PACKAGES)
+target-finalize: $(PACKAGES) host-finalize
@$(call MESSAGE,"Finalizing target directory")
# Check files that are touched by more than one package
./support/scripts/check-uniq-files -t target $(BUILD_DIR)/packages-file-list.txt
@@ -782,7 +779,7 @@ endif
touch $(TARGET_DIR)/usr
.PHONY: target-post-image
-target-post-image: $(TARGETS_ROOTFS) target-finalize
+target-post-image: $(TARGETS_ROOTFS) target-finalize staging-finalize
@rm -f $(ROOTFS_COMMON_TAR)
@$(foreach s, $(call qstrip,$(BR2_ROOTFS_POST_IMAGE_SCRIPT)), \
$(call MESSAGE,"Executing post-image script $(s)"); \
@@ -811,7 +808,7 @@ legal-info-prepare: $(LEGAL_INFO_DIR)
@cp $(BR2_CONFIG) $(LEGAL_INFO_DIR)/buildroot.config
.PHONY: legal-info
-legal-info: dirs legal-info-clean legal-info-prepare $(foreach p,$(PACKAGES),$(p)-all-legal-info) \
+legal-info: legal-info-clean legal-info-prepare $(foreach p,$(PACKAGES),$(p)-all-legal-info) \
$(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST)
@cat support/legal-info/README.header >>$(LEGAL_REPORT)
@if [ -r $(LEGAL_WARNINGS) ]; then \
diff --git a/board/aarch64-efi/genimage-efi.cfg b/board/aarch64-efi/genimage-efi.cfg
new file mode 100644
index 0000000000..f93ab9d64f
--- /dev/null
+++ b/board/aarch64-efi/genimage-efi.cfg
@@ -0,0 +1,30 @@
+image efi-part.vfat {
+ vfat {
+ file startup.nsh {
+ image = "efi-part/startup.nsh"
+ }
+ file EFI {
+ image = "efi-part/EFI"
+ }
+ file Image {
+ image = "Image"
+ }
+ }
+ size = 32M
+}
+
+image disk.img {
+
+ hdimage {
+ }
+
+ partition boot {
+ partition-type = 0xEF
+ image = "efi-part.vfat"
+ }
+
+ partition root {
+ partition-type = 0x83
+ image = "rootfs.ext2"
+ }
+}
diff --git a/board/aarch64-efi/grub.cfg b/board/aarch64-efi/grub.cfg
new file mode 100644
index 0000000000..ab88da91b9
--- /dev/null
+++ b/board/aarch64-efi/grub.cfg
@@ -0,0 +1,6 @@
+set default="0"
+set timeout="5"
+
+menuentry "Buildroot" {
+ linux /Image root=/dev/vda2 rootwait console=ttyAMA0
+}
diff --git a/board/aarch64-efi/post-image.sh b/board/aarch64-efi/post-image.sh
new file mode 100755
index 0000000000..f0214dc866
--- /dev/null
+++ b/board/aarch64-efi/post-image.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+BOARD_DIR="$(dirname $0)"
+
+cp -f ${BOARD_DIR}/grub.cfg ${BINARIES_DIR}/efi-part/EFI/BOOT/grub.cfg
diff --git a/board/aarch64-efi/readme.txt b/board/aarch64-efi/readme.txt
new file mode 100644
index 0000000000..65a6345b6c
--- /dev/null
+++ b/board/aarch64-efi/readme.txt
@@ -0,0 +1,34 @@
+
+The aarch64_efi_defconfig allows to build a minimal Linux system that
+can boot on all AArch64 servers providing an EFI firmware and ACPI.
+
+Building and booting
+====================
+
+$ make aarch64_efi_defconfig
+$ make
+
+The file output/images/disk.img is a complete disk image that can be
+booted, it includes the grub2 bootloader, Linux kernel and root
+filesystem.
+
+Testing under Qemu
+==================
+
+This image can also be tested using Qemu:
+
+qemu-system-aarch64 \
+ -M virt \
+ -cpu cortex-a57 \
+ -m 512 \
+ -nographic \
+ -bios </path/to/QEMU_EFI.fd> \
+ -drive file=output/images/disk.img,if=none,format=raw,id=hd0 \
+ -device virtio-blk-device,drive=hd0 \
+ -netdev user,id=eth0 \
+ -device virtio-net-device,netdev=eth0
+
+Note that </path/to/QEMU_EFI.fd> needs to point to a valid aarch64 UEFI
+firmware image for qemu.
+It may be provided by your distribution as a edk2-aarch64 or AAVMF
+package, in path such as /usr/share/edk2/aarch64/QEMU_EFI.fd .
diff --git a/board/orangepi/orangepi-pc/linux.fragment b/board/orangepi/orangepi-pc/linux.fragment
index cdd522452a..581b715bd5 100644
--- a/board/orangepi/orangepi-pc/linux.fragment
+++ b/board/orangepi/orangepi-pc/linux.fragment
@@ -1,3 +1,5 @@
+CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
+CONFIG_REGULATOR_SY8106A=y
CONFIG_DRM_SUN8I_DW_HDMI=y
CONFIG_SUN8I_DE2_CCU=y
CONFIG_SND_SUN8I_CODEC_ANALOG=y
diff --git a/board/orangepi/orangepi-zero/linux-extras.config b/board/orangepi/orangepi-zero/linux-extras.config
index fe00af5ef7..2db241de28 100644
--- a/board/orangepi/orangepi-zero/linux-extras.config
+++ b/board/orangepi/orangepi-zero/linux-extras.config
@@ -15,3 +15,6 @@ CONFIG_CFG80211_WEXT=y
# wireless drivers
CONFIG_WLAN=y
+
+# ondemand cpufreq governor
+CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
diff --git a/board/solidrun/macchiatobin/extlinux.conf b/board/solidrun/macchiatobin/extlinux.conf
new file mode 100644
index 0000000000..1008af1af0
--- /dev/null
+++ b/board/solidrun/macchiatobin/extlinux.conf
@@ -0,0 +1,4 @@
+label Macchiatobin Linux
+ kernel /boot/Image
+ devicetree /boot/armada-8040-mcbin.dtb
+ append console=ttyS0,115200n8 root=/dev/mmcblk1p1 rootwait
diff --git a/board/solidrun/macchiatobin/linux-extras.config b/board/solidrun/macchiatobin/linux-extras.config
index 11267d2f80..29fd630626 100644
--- a/board/solidrun/macchiatobin/linux-extras.config
+++ b/board/solidrun/macchiatobin/linux-extras.config
@@ -1,3 +1,3 @@
CONFIG_MARVELL_PHY=y
CONFIG_MARVELL_10G_PHY=y
-CONFIG_PHY_MVEBU_CP110_COMPHY=y
+CONFIG_SFP=y
diff --git a/board/solidrun/macchiatobin/post-build-mainline.sh b/board/solidrun/macchiatobin/post-build-mainline.sh
new file mode 100755
index 0000000000..1f5ff6a611
--- /dev/null
+++ b/board/solidrun/macchiatobin/post-build-mainline.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+BOARD_DIR="$(dirname $0)"
+
+install -m 0644 -D $BOARD_DIR/extlinux.conf $TARGET_DIR/boot/extlinux/extlinux.conf
diff --git a/board/solidrun/macchiatobin/readme.txt b/board/solidrun/macchiatobin/readme.txt
index dfbd6e793b..dc5d6c794d 100644
--- a/board/solidrun/macchiatobin/readme.txt
+++ b/board/solidrun/macchiatobin/readme.txt
@@ -15,19 +15,20 @@ How to build
There are two build options: mainline support and vendor support.
For the mainline BSP, we use:
- - Linux v4.15
- - U-Boot v2018.01
+ - Linux v4.19.2
+ - U-Boot v2018.11
For the vendor BSP, we use the sources available from Marvell Github
page at https://github.com/MarvellEmbeddedProcessors, which uses:
- - Linux v4.4.52
- - U-Boot v2017.03
+ - Linux v4.4.120
+ - U-Boot v2018.03
-At the moment mainline support for the board is a work in progress.
-Mainline kernel 4.15 enables eth2 in 1Gb (RJ45 connector J5) and
-eth0 in 10Gb (SFP connector CON15 and RJ45 connector CON16).
-The vendor BSP enables more hardware features out of the box,
-e.g. all the network interfaces.
+At the moment mainline support for the board is a work in
+progress. Mainline kernel 4.19 enables eth2 in 1Gb (RJ45 connector J5),
+copper 10Gb interfaces, and automatic configuration of select SFP
+modules on the SFP cages. The vendor BSP enables more hardware features
+out of the box, but lacks support for SFP detection and automatic
+configuration.
To use the mainline BSP run the following commands:
@@ -73,10 +74,13 @@ Insert the micro SDcard in the MacchiatoBin board and power it up.
The serial console is accessible at the micro-USB Type-B connector
marked CON9. The serial line settings are 115200 8N1.
-By default U-Boot will load its environment from the SPI flash. On the
-first boot SPI flash may be empty or it may contain a legacy
-environment incompatible with up-to-date mainline U-Boot and
-kernel. Then the following commands can be used to boot the board:
+Note: the following text only applies to the vendor BSP from
+solidrun_macchiatobin_marvell_defconfig.
+
+By default Marvell provided U-Boot will load its environment from the
+SPI flash. On the first boot SPI flash may be empty or it may contain a
+legacy environment that prevents proper boot. Then the following
+commands can be used to boot the board:
=> ext4load mmc 1:1 0x01700000 /boot/uEnv-example.txt
=> env import -t 0x01700000 $filesize
diff --git a/board/solidrun/macchiatobin/uboot-fragment.config b/board/solidrun/macchiatobin/uboot-fragment.config
new file mode 100644
index 0000000000..717a094247
--- /dev/null
+++ b/board/solidrun/macchiatobin/uboot-fragment.config
@@ -0,0 +1,2 @@
+CONFIG_ENV_IS_IN_MMC=y
+# CONFIG_ENV_IS_IN_SPI_FLASH is not set
diff --git a/boot/grub2/Config.in b/boot/grub2/Config.in
index 9a61b3b633..e45133999e 100644
--- a/boot/grub2/Config.in
+++ b/boot/grub2/Config.in
@@ -2,6 +2,9 @@ config BR2_TARGET_GRUB2_ARCH_SUPPORTS
bool
default y if BR2_i386
default y if BR2_x86_64
+ default y if BR2_arm
+ default y if BR2_aarch64
+ depends on BR2_USE_MMU
config BR2_TARGET_GRUB2
bool "grub2"
@@ -29,12 +32,14 @@ choice
config BR2_TARGET_GRUB2_I386_PC
bool "i386-pc"
+ depends on BR2_i386 || BR2_x86_64
help
Select this option if the platform you're targetting is a
x86 or x86-64 legacy BIOS based platform.
config BR2_TARGET_GRUB2_I386_EFI
bool "i386-efi"
+ depends on BR2_i386 || BR2_x86_64
help
Select this option if the platform you're targetting has a
32 bits EFI BIOS. Note that some x86-64 platforms use a 32
@@ -42,14 +47,38 @@ config BR2_TARGET_GRUB2_I386_EFI
config BR2_TARGET_GRUB2_X86_64_EFI
bool "x86-64-efi"
- depends on BR2_ARCH_IS_64
+ depends on BR2_x86_64
help
Select this option if the platform you're targetting has a
64 bits EFI BIOS.
+config BR2_TARGET_GRUB2_ARM_UBOOT
+ bool "arm-uboot"
+ depends on BR2_arm
+ help
+ Select this option if the platform you're targetting is an
+ ARM u-boot platform, and you want to boot Grub 2 as an u-boot
+ compatible image.
+
+config BR2_TARGET_GRUB2_ARM_EFI
+ bool "arm-efi"
+ depends on BR2_arm
+ help
+ Select this option if the platform you're targetting is an
+ ARM platform and you want to boot Grub 2 as an EFI
+ application.
+
+config BR2_TARGET_GRUB2_ARM64_EFI
+ bool "arm64-efi"
+ depends on BR2_aarch64
+ help
+ Select this option if the platform you're targetting is an
+ Aarch64 platform and you want to boot Grub 2 as an EFI
+ application.
+
endchoice
-if BR2_TARGET_GRUB2_I386_PC
+if BR2_TARGET_GRUB2_I386_PC || BR2_TARGET_GRUB2_ARM_UBOOT
config BR2_TARGET_GRUB2_BOOT_PARTITION
string "boot partition"
@@ -60,13 +89,15 @@ config BR2_TARGET_GRUB2_BOOT_PARTITION
first disk if using a legacy partition table, or 'hd0,gpt1'
if using GPT partition table.
-endif # BR2_TARGET_GRUB2_I386_PC
+endif # BR2_TARGET_GRUB2_I386_PC || BR2_TARGET_GRUB2_ARM_UBOOT
config BR2_TARGET_GRUB2_BUILTIN_MODULES
string "builtin modules"
default "boot linux ext2 fat squash4 part_msdos part_gpt normal biosdisk" if BR2_TARGET_GRUB2_I386_PC
default "boot linux ext2 fat squash4 part_msdos part_gpt normal efi_gop" \
- if BR2_TARGET_GRUB2_I386_EFI || BR2_TARGET_GRUB2_X86_64_EFI
+ if BR2_TARGET_GRUB2_I386_EFI || BR2_TARGET_GRUB2_X86_64_EFI || \
+ BR2_TARGET_GRUB2_ARM_EFI || BR2_TARGET_GRUB2_ARM64_EFI
+ default "linux ext2 fat part_msdos normal" if BR2_TARGET_GRUB2_ARM_UBOOT
config BR2_TARGET_GRUB2_BUILTIN_CONFIG
string "builtin config"
@@ -76,6 +107,15 @@ config BR2_TARGET_GRUB2_BUILTIN_CONFIG
device and other configuration parameters, but however menu
entries cannot be described in this embedded configuration.
+config BR2_TARGET_GRUB2_INSTALL_TOOLS
+ bool "install tools"
+ help
+ Install support tools to interact with GNU GRUB Multiboot
+ boot loader.
+
+ This will also install the Grub 2 loadable modules to the
+ target.
+
endif # BR2_TARGET_GRUB2
comment "grub2 needs a toolchain w/ wchar"
diff --git a/boot/grub2/grub2.mk b/boot/grub2/grub2.mk
index 35aea41287..65371f0170 100644
--- a/boot/grub2/grub2.mk
+++ b/boot/grub2/grub2.mk
@@ -9,7 +9,15 @@ GRUB2_SITE = http://ftp.gnu.org/gnu/grub
GRUB2_SOURCE = grub-$(GRUB2_VERSION).tar.xz
GRUB2_LICENSE = GPL-3.0+
GRUB2_LICENSE_FILES = COPYING
-GRUB2_DEPENDENCIES = host-bison host-flex
+GRUB2_DEPENDENCIES = host-bison host-flex host-grub2
+HOST_GRUB2_DEPENDENCIES = host-bison host-flex
+GRUB2_INSTALL_IMAGES = YES
+
+ifeq ($(BR2_TARGET_GRUB2_INSTALL_TOOLS),y)
+GRUB2_INSTALL_TARGET = YES
+else
+GRUB2_INSTALL_TARGET = NO
+endif
GRUB2_BUILTIN_MODULES = $(call qstrip,$(BR2_TARGET_GRUB2_BUILTIN_MODULES))
GRUB2_BUILTIN_CONFIG = $(call qstrip,$(BR2_TARGET_GRUB2_BUILTIN_CONFIG))
@@ -36,29 +44,48 @@ GRUB2_PREFIX = /EFI/BOOT
GRUB2_TUPLE = x86_64-efi
GRUB2_TARGET = x86_64
GRUB2_PLATFORM = efi
+else ifeq ($(BR2_TARGET_GRUB2_ARM_UBOOT),y)
+GRUB2_IMAGE = $(BINARIES_DIR)/boot-part/grub/grub.img
+GRUB2_CFG = $(BINARIES_DIR)/boot-part/grub/grub.cfg
+GRUB2_PREFIX = ($(GRUB2_BOOT_PARTITION))/boot/grub
+GRUB2_TUPLE = arm-uboot
+GRUB2_TARGET = arm
+GRUB2_PLATFORM = uboot
+else ifeq ($(BR2_TARGET_GRUB2_ARM_EFI),y)
+GRUB2_IMAGE = $(BINARIES_DIR)/efi-part/EFI/BOOT/bootarm.efi
+GRUB2_CFG = $(BINARIES_DIR)/efi-part/EFI/BOOT/grub.cfg
+GRUB2_PREFIX = /EFI/BOOT
+GRUB2_TUPLE = arm-efi
+GRUB2_TARGET = arm
+GRUB2_PLATFORM = efi
+else ifeq ($(BR2_TARGET_GRUB2_ARM64_EFI),y)
+GRUB2_IMAGE = $(BINARIES_DIR)/efi-part/EFI/BOOT/bootaa64.efi
+GRUB2_CFG = $(BINARIES_DIR)/efi-part/EFI/BOOT/grub.cfg
+GRUB2_PREFIX = /EFI/BOOT
+GRUB2_TUPLE = arm64-efi
+GRUB2_TARGET = aarch64
+GRUB2_PLATFORM = efi
endif
# Grub2 is kind of special: it considers CC, LD and so on to be the
-# tools to build the native tools (i.e to be executed on the build
-# machine), and uses TARGET_CC, TARGET_CFLAGS, TARGET_CPPFLAGS,
-# TARGET_LDFLAGS to build the bootloader itself. However, to add to
-# the confusion, it also uses NM, OBJCOPY and STRIP to build the
-# bootloader itself; none of these are used to build the native
-# tools.
+# tools to build the host programs and uses TARGET_CC, TARGET_CFLAGS,
+# TARGET_CPPFLAGS, TARGET_LDFLAGS to build the bootloader itself.
#
# NOTE: TARGET_STRIP is overridden by !BR2_STRIP_strip, so always
# use the cross compile variant to ensure grub2 builds
+HOST_GRUB2_CONF_ENV = \
+ CPP="$(HOSTCC) -E"
+
GRUB2_CONF_ENV = \
- $(HOST_CONFIGURE_OPTS) \
- CPP="$(HOSTCC) -E" \
+ CPP="$(TARGET_CC) -E" \
TARGET_CC="$(TARGET_CC)" \
TARGET_CFLAGS="$(TARGET_CFLAGS)" \
TARGET_CPPFLAGS="$(TARGET_CPPFLAGS) -fno-stack-protector" \
TARGET_LDFLAGS="$(TARGET_LDFLAGS)" \
- NM="$(TARGET_NM)" \
- OBJCOPY="$(TARGET_OBJCOPY)" \
- STRIP="$(TARGET_CROSS)strip"
+ TARGET_NM="$(TARGET_NM)" \
+ TARGET_OBJCOPY="$(TARGET_OBJCOPY)" \
+ TARGET_STRIP="$(TARGET_CROSS)strip"
GRUB2_CONF_OPTS = \
--target=$(GRUB2_TARGET) \
@@ -72,12 +99,13 @@ GRUB2_CONF_OPTS = \
--enable-libzfs=no \
--disable-werror
-# We don't want all the native tools and Grub2 modules to be installed
-# in the target. So we in fact install everything into the host
-# directory, and the image generation process (below) will use the
-# grub-mkimage tool and Grub2 modules from the host directory.
-
-GRUB2_INSTALL_TARGET_OPTS = DESTDIR=$(HOST_DIR) install
+HOST_GRUB2_CONF_OPTS = \
+ --disable-grub-mkfont \
+ --enable-efiemu=no \
+ ac_cv_lib_lzma_lzma_code=no \
+ --enable-device-mapper=no \
+ --enable-libzfs=no \
+ --disable-werror
ifeq ($(BR2_TARGET_GRUB2_I386_PC),y)
define GRUB2_IMAGE_INSTALL_ELTORITO
@@ -86,10 +114,10 @@ define GRUB2_IMAGE_INSTALL_ELTORITO
endef
endif
-define GRUB2_IMAGE_INSTALLATION
+define GRUB2_INSTALL_IMAGES_CMDS
mkdir -p $(dir $(GRUB2_IMAGE))
- $(HOST_DIR)/bin/grub-mkimage \
- -d $(HOST_DIR)/lib/grub/$(GRUB2_TUPLE) \
+ $(HOST_DIR)/usr/bin/grub-mkimage \
+ -d $(@D)/grub-core/ \
-O $(GRUB2_TUPLE) \
-o $(GRUB2_IMAGE) \
-p "$(GRUB2_PREFIX)" \
@@ -99,14 +127,14 @@ define GRUB2_IMAGE_INSTALLATION
$(INSTALL) -D -m 0644 boot/grub2/grub.cfg $(GRUB2_CFG)
$(GRUB2_IMAGE_INSTALL_ELTORITO)
endef
-GRUB2_POST_INSTALL_TARGET_HOOKS += GRUB2_IMAGE_INSTALLATION
ifeq ($(GRUB2_PLATFORM),efi)
define GRUB2_EFI_STARTUP_NSH
echo $(notdir $(GRUB2_IMAGE)) > \
$(BINARIES_DIR)/efi-part/startup.nsh
endef
-GRUB2_POST_INSTALL_TARGET_HOOKS += GRUB2_EFI_STARTUP_NSH
+GRUB2_POST_INSTALL_IMAGES_HOOKS += GRUB2_EFI_STARTUP_NSH
endif
$(eval $(autotools-package))
+$(eval $(host-autotools-package))
diff --git a/boot/grub2/readme.txt b/boot/grub2/readme.txt
index f6fd4566fe..0282fbdd13 100644
--- a/boot/grub2/readme.txt
+++ b/boot/grub2/readme.txt
@@ -53,8 +53,8 @@ To test your BIOS image in Qemu
qemu-system-{i386,x86-64} -hda disk.img
-Notes on using Grub2 for EFI-based platforms
-============================================
+Notes on using Grub2 for x86/x86_64 EFI-based platforms
+=======================================================
1. Create a disk image
dd if=/dev/zero of=disk.img bs=1M count=32
@@ -83,16 +83,108 @@ Notes on using Grub2 for EFI-based platforms
sudo losetup -d /dev/loop0
7. Your disk.img is ready!
-To test your EFI image in Qemu
-------------------------------
+To test your i386/x86-64 EFI image in Qemu
+------------------------------------------
1. Download the EFI BIOS for Qemu
Version IA32 or X64 depending on the chosen Grub2
platform (i386-efi vs. x86-64-efi)
- http://sourceforge.net/projects/edk2/files/OVMF/
+ https://www.kraxel.org/repos/jenkins/edk2/
+ (or use one provided by your distribution as OVMF)
2. Extract, and rename OVMF.fd to bios.bin and
CirrusLogic5446.rom to vgabios-cirrus.bin.
3. qemu-system-{i386,x86-64} -L ovmf-dir/ -hda disk.img
4. Make sure to pass pci=nocrs to the kernel command line,
to workaround a bug in the EFI BIOS regarding the
EFI framebuffer.
+
+Notes on using Grub2 for ARM u-boot-based platforms
+===================================================
+
+The following steps show how to use the Grub2 arm-uboot platform
+support in the simplest way possible and with a single
+buildroot-generated filesystem.
+
+ 1. Load qemu_arm_vexpress_defconfig
+
+ 2. Enable u-boot with the vexpress_ca9x4 board name and with
+ u-boot.elf image format.
+
+ 3. Enable grub2 for the arm-uboot platform.
+
+ 4. Enable "Install kernel image to /boot in target" in the kernel
+ menu to populate a /boot directory with zImage in it.
+
+ 5. The upstream u-boot vexpress_ca9x4 doesn't have CONFIG_API enabled
+ by default, which is required.
+
+ Before building, patch u-boot (for example, make u-boot-extract to
+ edit the source before building) file
+ include/configs/vexpress_common.h to define:
+
+ #define CONFIG_API
+ #define CONFIG_SYS_MMC_MAX_DEVICE 1
+
+ 6. Create a custom grub2 config file with the following contents and
+ set its path in BR2_TARGET_GRUB2_CFG:
+
+ set default="0"
+ set timeout="5"
+
+ menuentry "Buildroot" {
+ set root='(hd0)'
+ linux /boot/zImage root=/dev/mmcblk0 console=ttyAMA0
+ devicetree /boot/vexpress-v2p-ca9.dtb
+ }
+
+ 7. Create a custom builtin config file with the following contents
+ and set its path in BR2_TARGET_GRUB2_BUILTIN_CONFIG:
+
+ set root=(hd0)
+ set prefix=/boot/grub
+
+ 8. Create a custom post-build script which copies files from
+ ${BINARIES_DIR}/boot-part to $(TARGET_DIR)/boot (set its path in
+ BR2_ROOTFS_POST_BUILD_SCRIPT):
+
+ #!/bin/sh
+ cp -r ${BINARIES_DIR}/boot-part/* ${TARGET_DIR}/boot/
+
+ 9. make
+
+10. Run qemu with:
+
+ qemu-system-arm -M vexpress-a9 -kernel output/images/u-boot -m 1024 \
+ -nographic -sd output/images/rootfs.ext2
+
+11. In u-boot, stop at the prompt and run grub2 with:
+
+ => ext2load mmc 0:0 ${loadaddr} /boot/grub/grub.img
+ => bootm
+
+12. This should bring the grub2 menu, upon which selecting the "Buildroot"
+ entry should boot Linux.
+
+
+Notes on using Grub2 for Aarch64 EFI-based platforms
+====================================================
+
+The following steps show how to use the Grub2 arm64-efi platform,
+using qemu and EFI firmware built for qemu.
+
+ 1. Load aarch64_efi_defconfig
+
+ 2. make
+
+ 3. Download the EFI firmware for qemu aarch64
+ https://www.kraxel.org/repos/jenkins/edk2/
+ (or use one provided by your distribution as OVMF-aarch64 or AAVMF)
+
+ 4. Run qemu with:
+
+ qemu-system-aarch64 -M virt -cpu cortex-a57 -m 512 -nographic \
+ -bios <path/to/EDK2>/QEMU_EFI.fd -hda output/images/disk.img \
+ -netdev user,id=eth0 -device virtio-net-device,netdev=eth0
+
+ 5. This should bring the grub2 menu, upon which selecting the
+ "Buildroot" entry should boot Linux.
diff --git a/configs/aarch64_efi_defconfig b/configs/aarch64_efi_defconfig
new file mode 100644
index 0000000000..e4e20b09ba
--- /dev/null
+++ b/configs/aarch64_efi_defconfig
@@ -0,0 +1,33 @@
+# Architecture
+BR2_aarch64=y
+
+# Toolchain, required for eudev and grub
+BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
+
+# System
+BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
+BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
+
+## Required tools to create bootable media
+BR2_PACKAGE_HOST_GENIMAGE=y
+
+# Bootloader
+BR2_TARGET_GRUB2=y
+BR2_TARGET_GRUB2_AARCH64_EFI=y
+
+# Filesystem / image
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="200M"
+# BR2_TARGET_ROOTFS_TAR is not set
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/aarch64-efi/post-image.sh support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/aarch64-efi/genimage-efi.cfg"
+
+# Linux headers same as kernel, a 4.18 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y
+
+# Kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.18.10"
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
diff --git a/configs/olimex_a20_olinuxino_lime2_defconfig b/configs/olimex_a20_olinuxino_lime2_defconfig
index 716995aa7a..7851314a25 100644
--- a/configs/olimex_a20_olinuxino_lime2_defconfig
+++ b/configs/olimex_a20_olinuxino_lime2_defconfig
@@ -3,8 +3,8 @@ BR2_arm=y
BR2_cortex_a7=y
BR2_ARM_EABIHF=y
-# Linux headers same as kernel, a 4.18 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y
+# Linux headers same as kernel, a 4.19 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
# System configuration
BR2_TARGET_GENERIC_HOSTNAME="a20-olinuxino"
@@ -18,13 +18,18 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/olimex/a20_olinuxino/genimage.cfg"
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.18.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.2"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun7i-a20-olinuxino-lime2"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
+# sunxi packages
+BR2_PACKAGE_SUNXI_TOOLS=y
+BR2_PACKAGE_SUNXI_MALI_MAINLINE=y
+BR2_PACKAGE_SUNXI_MALI_MAINLINE_DRIVER=y
+
# Filesystem
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
@@ -34,7 +39,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.09"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.11"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="A20-OLinuXino-Lime2"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
diff --git a/configs/olimex_a20_olinuxino_lime_defconfig b/configs/olimex_a20_olinuxino_lime_defconfig
index ed8ea86233..be09c5d46a 100644
--- a/configs/olimex_a20_olinuxino_lime_defconfig
+++ b/configs/olimex_a20_olinuxino_lime_defconfig
@@ -3,8 +3,8 @@ BR2_arm=y
BR2_cortex_a7=y
BR2_ARM_EABIHF=y
-# Linux headers same as kernel, a 4.18 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y
+# Linux headers same as kernel, a 4.19 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
# System configuration
BR2_TARGET_GENERIC_HOSTNAME="a20-olinuxino"
@@ -18,13 +18,18 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/olimex/a20_olinuxino/genimage.cfg"
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.18.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.2"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun7i-a20-olinuxino-lime"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
+# sunxi packages
+BR2_PACKAGE_SUNXI_TOOLS=y
+BR2_PACKAGE_SUNXI_MALI_MAINLINE=y
+BR2_PACKAGE_SUNXI_MALI_MAINLINE_DRIVER=y
+
# Filesystem
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
@@ -34,7 +39,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.09"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.11"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="A20-OLinuXino-Lime"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
diff --git a/configs/olimex_imx233_olinuxino_defconfig b/configs/olimex_imx233_olinuxino_defconfig
index 89ab5952cb..232d9d0dce 100644
--- a/configs/olimex_imx233_olinuxino_defconfig
+++ b/configs/olimex_imx233_olinuxino_defconfig
@@ -2,8 +2,8 @@
BR2_arm=y
BR2_arm926t=y
-# Linux headers same as kernel, a 4.14 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y
+# Linux headers same as kernel, a 4.19 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
# System
BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
@@ -14,7 +14,7 @@ BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.14"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.2"
BR2_LINUX_KERNEL_DEFCONFIG="mxs"
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/olimex/imx233_olinuxino/linux-wifi.fragment"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
diff --git a/configs/orangepi_pc_defconfig b/configs/orangepi_pc_defconfig
index 313b7ab3a4..130a4e7088 100644
--- a/configs/orangepi_pc_defconfig
+++ b/configs/orangepi_pc_defconfig
@@ -1,7 +1,7 @@
BR2_arm=y
BR2_cortex_a7=y
BR2_ARM_FPU_VFPV4=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_17=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
BR2_TARGET_GENERIC_HOSTNAME="OrangePi_PC"
BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi PC"
BR2_SYSTEM_DHCP="eth0"
@@ -9,7 +9,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/orangepi/orangepi-pc/genimage.cfg"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.17.15"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.3"
BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/orangepi/orangepi-pc/linux.fragment"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
@@ -20,7 +20,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.07"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.11"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_pc"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
diff --git a/configs/orangepi_zero_defconfig b/configs/orangepi_zero_defconfig
index 87962152f3..3c65665cd1 100644
--- a/configs/orangepi_zero_defconfig
+++ b/configs/orangepi_zero_defconfig
@@ -3,13 +3,13 @@ BR2_cortex_a7=y
BR2_ARM_FPU_VFPV4=y
BR2_GLOBAL_PATCH_DIR="board/orangepi/orangepi-zero/patches"
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_17=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
BR2_TARGET_GENERIC_HOSTNAME="OrangePi_Zero"
BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi Zero"
BR2_SYSTEM_DHCP="eth0"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.17.15"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.3"
BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h2-plus-orangepi-zero"
@@ -21,7 +21,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.07"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.11"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_zero"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
diff --git a/configs/solidrun_macchiatobin_mainline_defconfig b/configs/solidrun_macchiatobin_mainline_defconfig
index d303b2f75e..8e5fbfa4e8 100644
--- a/configs/solidrun_macchiatobin_mainline_defconfig
+++ b/configs/solidrun_macchiatobin_mainline_defconfig
@@ -1,5 +1,5 @@
BR2_aarch64=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
BR2_TARGET_GENERIC_HOSTNAME="mcbin"
BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for Marvell MacchiatoBin"
@@ -19,14 +19,17 @@ BR2_TARGET_MV_DDR_MARVELL=y
# U-Boot
BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="mvebu_mcbin-88f8040"
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.09"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.11"
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_USE_DEFCONFIG=y
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="mvebu_mcbin-88f8040"
+BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/solidrun/macchiatobin/uboot-fragment.config"
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.18"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.2"
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="marvell/armada-8040-mcbin"
@@ -41,4 +44,4 @@ BR2_TARGET_ROOTFS_EXT2_4=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/solidrun/macchiatobin/genimage.cfg"
-BR2_ROOTFS_POST_BUILD_SCRIPT="board/solidrun/macchiatobin/post-build.sh"
+BR2_ROOTFS_POST_BUILD_SCRIPT="board/solidrun/macchiatobin/post-build-mainline.sh"
diff --git a/fs/common.mk b/fs/common.mk
index e4a6a4897b..1625b65d0e 100644
--- a/fs/common.mk
+++ b/fs/common.mk
@@ -70,6 +70,8 @@ rootfs-common-show-depends:
# all variable references except the arguments must be $$-quoted.
define inner-rootfs
+ROOTFS_$(2)_IMAGE_NAME ?= rootfs.$(1)
+ROOTFS_$(2)_FINAL_IMAGE_NAME = $$(strip $$(ROOTFS_$(2)_IMAGE_NAME))
ROOTFS_$(2)_DIR = $$(FS_DIR)/$(1)
ROOTFS_$(2)_TARGET_DIR = $$(ROOTFS_$(2)_DIR)/target
@@ -104,10 +106,11 @@ ROOTFS_$(2)_COMPRESS_EXT = .xz
ROOTFS_$(2)_COMPRESS_CMD = xz -9 -C crc32 -c
endif
-$$(BINARIES_DIR)/rootfs.$(1): ROOTFS=$(2)
-$$(BINARIES_DIR)/rootfs.$(1): FAKEROOT_SCRIPT=$$(ROOTFS_$(2)_DIR)/fakeroot
-$$(BINARIES_DIR)/rootfs.$(1): $$(ROOTFS_$(2)_DEPENDENCIES)
- @$$(call MESSAGE,"Generating root filesystem image rootfs.$(1)")
+$$(BINARIES_DIR)/$$(ROOTFS_$(2)_FINAL_IMAGE_NAME): ROOTFS=$(2)
+$$(BINARIES_DIR)/$$(ROOTFS_$(2)_FINAL_IMAGE_NAME): FAKEROOT_SCRIPT=$$(ROOTFS_$(2)_DIR)/fakeroot
+$$(BINARIES_DIR)/$$(ROOTFS_$(2)_FINAL_IMAGE_NAME): $$(ROOTFS_$(2)_DEPENDENCIES)
+ @$$(call MESSAGE,"Generating filesystem image $$(ROOTFS_$(2)_FINAL_IMAGE_NAME)")
+ mkdir -p $$(@D)
rm -rf $$(ROOTFS_$(2)_DIR)
mkdir -p $$(ROOTFS_$(2)_DIR)
rsync -auH \
@@ -142,7 +145,7 @@ endif
rootfs-$(1)-show-depends:
@echo $$(ROOTFS_$(2)_DEPENDENCIES)
-rootfs-$(1): $$(BINARIES_DIR)/rootfs.$(1)
+rootfs-$(1): $$(BINARIES_DIR)/$$(ROOTFS_$(2)_FINAL_IMAGE_NAME)
.PHONY: rootfs-$(1) rootfs-$(1)-show-depends
diff --git a/linux/Config.in b/linux/Config.in
index efce31c7e1..74f4321e43 100644
--- a/linux/Config.in
+++ b/linux/Config.in
@@ -30,7 +30,7 @@ choice
prompt "Kernel version"
config BR2_LINUX_KERNEL_LATEST_VERSION
- bool "Latest version (4.18)"
+ bool "Latest version (4.19)"
config BR2_LINUX_KERNEL_LATEST_CIP_VERSION
bool "Latest CIP SLTS version (v4.4.154-cip28)"
@@ -120,7 +120,7 @@ endif
config BR2_LINUX_KERNEL_VERSION
string
- default "4.18.20" if BR2_LINUX_KERNEL_LATEST_VERSION
+ default "4.19.2" if BR2_LINUX_KERNEL_LATEST_VERSION
default "v4.4.154-cip28" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION
default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
if BR2_LINUX_KERNEL_CUSTOM_VERSION
diff --git a/linux/linux.hash b/linux/linux.hash
index 12da19e043..8148315c06 100644
--- a/linux/linux.hash
+++ b/linux/linux.hash
@@ -1,5 +1,6 @@
# From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc
sha256 68ac319e0fb7edd6b6051541d9cf112cd4f77a29e16a69ae1e133ff51117f653 linux-4.18.20.tar.xz
+sha256 c10c7f81019bd782ea77a25725f6d53e9affa4a0cfd3985c161f3a2a22f2df73 linux-4.19.2.tar.xz
sha256 41026d713ba4f7a5e9d514b876ce4ed28a1d993c0c58b42b2a2597d6a0e83021 linux-4.16.18.tar.xz
sha256 701728de924e0ec4a6b7cf59252011f8268a1b70aaf02b8487c1b2190feb3f20 linux-4.14.83.tar.xz
sha256 f888aef58c2c4d82c81511ad6a4528ee9a8241bb96c05c65e71224988782f943 linux-4.9.140.tar.xz
diff --git a/linux/linux.mk b/linux/linux.mk
index 864fa772bb..c00b326e8a 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -323,6 +323,9 @@ define LINUX_KCONFIG_FIXUP_CMDS
$(if $(BR2_PACKAGE_AUDIT),
$(call KCONFIG_ENABLE_OPT,CONFIG_NET,$(@D)/.config)
$(call KCONFIG_ENABLE_OPT,CONFIG_AUDIT,$(@D)/.config))
+ $(if $(BR2_PACKAGE_INTEL_MICROCODE),
+ $(call KCONFIG_ENABLE_OPT,CONFIG_MICROCODE,$(@D)/.config)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_MICROCODE_INTEL,$(@D)/.config))
$(if $(BR2_PACKAGE_KTAP),
$(call KCONFIG_ENABLE_OPT,CONFIG_DEBUG_FS,$(@D)/.config)
$(call KCONFIG_ENABLE_OPT,CONFIG_ENABLE_DEFAULT_TRACERS,$(@D)/.config)
diff --git a/package/Config.in b/package/Config.in
index b60e7700ad..0339ec77d7 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -131,6 +131,7 @@ menu "Debugging, profiling and benchmark"
source "package/trinity/Config.in"
source "package/uclibc-ng-test/Config.in"
source "package/valgrind/Config.in"
+ source "package/vmtouch/Config.in"
source "package/whetstone/Config.in"
endmenu
@@ -141,6 +142,7 @@ menu "Development tools"
source "package/check/Config.in"
source "package/cmake/Config.in"
source "package/cppunit/Config.in"
+ source "package/cunit/Config.in"
source "package/cvs/Config.in"
source "package/cxxtest/Config.in"
source "package/diffutils/Config.in"
@@ -550,6 +552,7 @@ menu "Interpreter languages and scripting"
source "package/erlang/Config.in"
if BR2_PACKAGE_ERLANG
menu "Erlang libraries/modules"
+ source "package/erlang-eimp/Config.in"
source "package/erlang-goldrush/Config.in"
source "package/erlang-jiffy/Config.in"
source "package/erlang-lager/Config.in"
@@ -756,7 +759,6 @@ menu "Perl libraries/modules"
source "package/perl-sys-cpu/Config.in"
source "package/perl-sys-meminfo/Config.in"
source "package/perl-sys-mmap/Config.in"
- source "package/perl-time-hires/Config.in"
source "package/perl-time-parsedate/Config.in"
source "package/perl-timedate/Config.in"
source "package/perl-try-tiny/Config.in"
@@ -794,6 +796,8 @@ endif
if BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
menu "External python modules"
source "package/python-aiocoap/Config.in"
+ source "package/python-aiodns/Config.in"
+ source "package/python-aiohttp/Config.in"
source "package/python-alsaaudio/Config.in"
source "package/python-argh/Config.in"
source "package/python-arrow/Config.in"
@@ -813,6 +817,7 @@ menu "External python modules"
source "package/python-cached-property/Config.in"
source "package/python-can/Config.in"
source "package/python-cbor/Config.in"
+ source "package/python-cchardet/Config.in"
source "package/python-certifi/Config.in"
source "package/python-cffi/Config.in"
source "package/python-characteristic/Config.in"
@@ -949,6 +954,7 @@ menu "External python modules"
source "package/python-pyasn-modules/Config.in"
source "package/python-pyasn1/Config.in"
source "package/python-pyasn1-modules/Config.in"
+ source "package/python-pycares/Config.in"
source "package/python-pycli/Config.in"
source "package/python-pycparser/Config.in"
source "package/python-pycrypto/Config.in"
@@ -1495,6 +1501,7 @@ menu "Networking"
source "package/freeradius-client/Config.in"
source "package/geoip/Config.in"
source "package/glib-networking/Config.in"
+ source "package/grpc/Config.in"
source "package/gssdp/Config.in"
source "package/gupnp/Config.in"
source "package/gupnp-av/Config.in"
@@ -1550,6 +1557,7 @@ menu "Networking"
source "package/libstrophe/Config.in"
source "package/libtirpc/Config.in"
source "package/libtorrent/Config.in"
+ source "package/libtorrent-rasterbar/Config.in"
source "package/libupnp/Config.in"
source "package/libupnp18/Config.in"
source "package/libupnpp/Config.in"
@@ -1583,6 +1591,7 @@ menu "Networking"
source "package/thrift/Config.in"
source "package/usbredir/Config.in"
source "package/wampcc/Config.in"
+ source "package/websocketpp/Config.in"
source "package/zeromq/Config.in"
source "package/zmqpp/Config.in"
source "package/zyre/Config.in"
@@ -1826,6 +1835,7 @@ menu "Networking applications"
source "package/ejabberd/Config.in"
source "package/ethtool/Config.in"
source "package/faifa/Config.in"
+ source "package/fail2ban/Config.in"
source "package/fastd/Config.in"
source "package/fcgiwrap/Config.in"
source "package/flannel/Config.in"
@@ -1866,6 +1876,7 @@ menu "Networking applications"
source "package/iputils/Config.in"
source "package/irssi/Config.in"
source "package/iw/Config.in"
+ source "package/iwd/Config.in"
source "package/janus-gateway/Config.in"
source "package/keepalived/Config.in"
source "package/kismet/Config.in"
@@ -1885,6 +1896,7 @@ menu "Networking applications"
source "package/macchanger/Config.in"
source "package/memcached/Config.in"
source "package/mii-diag/Config.in"
+ source "package/mini-snmpd/Config.in"
source "package/minidlna/Config.in"
source "package/minissdpd/Config.in"
source "package/mjpg-streamer/Config.in"
diff --git a/package/acpid/acpid.mk b/package/acpid/acpid.mk
index 48fe005e5e..514fd31fe6 100644
--- a/package/acpid/acpid.mk
+++ b/package/acpid/acpid.mk
@@ -10,6 +10,14 @@ ACPID_SITE = http://downloads.sourceforge.net/project/acpid2
ACPID_LICENSE = GPL-2.0+
ACPID_LICENSE_FILES = COPYING
+define ACPID_INSTALL_INIT_SYSTEMD
+ $(INSTALL) -D -m 0755 package/acpid/acpid.service \
+ $(TARGET_DIR)/usr/lib/systemd/system/acpid.service
+ mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+ ln -sf ../../../../usr/lib/systemd/system/acpid.service \
+ $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/acpid.service
+endef
+
define ACPID_INSTALL_INIT_SYSV
$(INSTALL) -D -m 0755 package/acpid/S02acpid \
$(TARGET_DIR)/etc/init.d/S02acpid
diff --git a/package/acpid/acpid.service b/package/acpid/acpid.service
new file mode 100644
index 0000000000..5252b52f5f
--- /dev/null
+++ b/package/acpid/acpid.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=ACPI event daemon
+Documentation=man:acpid(8)
+
+[Service]
+ExecStart=/usr/sbin/acpid --foreground --netlink
+
+[Install]
+WantedBy=multi-user.target
diff --git a/package/alsa-lib/alsa-lib.hash b/package/alsa-lib/alsa-lib.hash
index c4f16d6df3..4373a2a592 100644
--- a/package/alsa-lib/alsa-lib.hash
+++ b/package/alsa-lib/alsa-lib.hash
@@ -1,4 +1,4 @@
# Locally calculated
-sha256 5f2cd274b272cae0d0d111e8a9e363f08783329157e8dd68b3de0c096de6d724 alsa-lib-1.1.6.tar.bz2
+sha256 9d6000b882a3b2df56300521225d69717be6741b71269e488bb20a20783bdc09 alsa-lib-1.1.7.tar.bz2
sha256 32434afcc8666ba060e111d715bfdb6c2d5dd8a35fa4d3ab8ad67d8f850d2f2b COPYING
sha256 bfe16cf823bcff261fc6a062c07ee96660e3c39678f42f39a788a68dbc234ced aserver/COPYING
diff --git a/package/alsa-lib/alsa-lib.mk b/package/alsa-lib/alsa-lib.mk
index 98fc486e2d..9de45d2089 100644
--- a/package/alsa-lib/alsa-lib.mk
+++ b/package/alsa-lib/alsa-lib.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ALSA_LIB_VERSION = 1.1.6
+ALSA_LIB_VERSION = 1.1.7
ALSA_LIB_SOURCE = alsa-lib-$(ALSA_LIB_VERSION).tar.bz2
ALSA_LIB_SITE = ftp://ftp.alsa-project.org/pub/lib
ALSA_LIB_LICENSE = LGPL-2.1+ (library), GPL-2.0+ (aserver)
diff --git a/package/alsa-utils/alsa-utils.hash b/package/alsa-utils/alsa-utils.hash
index ff8fd08013..f0468fb886 100644
--- a/package/alsa-utils/alsa-utils.hash
+++ b/package/alsa-utils/alsa-utils.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 155caecc40b2220f686f34ba3655a53e3bdbc0586adb1056733949feaaf7d36e alsa-utils-1.1.6.tar.bz2
+sha256 1db27fb54ab7fdeb54b00d68b8a174808ffea198cfbd67e3c959482194e1540a alsa-utils-1.1.7.tar.bz2
sha256 231f7edcc7352d7734a96eef0b8030f77982678c516876fcb81e25b32d68564c COPYING
diff --git a/package/alsa-utils/alsa-utils.mk b/package/alsa-utils/alsa-utils.mk
index 986a745399..0bf2b432bd 100644
--- a/package/alsa-utils/alsa-utils.mk
+++ b/package/alsa-utils/alsa-utils.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ALSA_UTILS_VERSION = 1.1.6
+ALSA_UTILS_VERSION = 1.1.7
ALSA_UTILS_SOURCE = alsa-utils-$(ALSA_UTILS_VERSION).tar.bz2
ALSA_UTILS_SITE = ftp://ftp.alsa-project.org/pub/utils
ALSA_UTILS_LICENSE = GPL-2.0
diff --git a/package/android-tools/0009-Fix-makefiles-for-out-of-tree-ext4_utils-build.patch b/package/android-tools/0009-Fix-makefiles-for-out-of-tree-ext4_utils-build.patch
new file mode 100644
index 0000000000..80ea1ec1fe
--- /dev/null
+++ b/package/android-tools/0009-Fix-makefiles-for-out-of-tree-ext4_utils-build.patch
@@ -0,0 +1,48 @@
+From d24abbec201975a5eb7f8589614cfb424b8c80b6 Mon Sep 17 00:00:00 2001
+From: Alex Kaplan <kaplan2539@gmail.com>
+Date: Sat, 10 Nov 2018 19:50:51 -0800
+Subject: [PATCH] Fix makefiles for out-of-tree ext4_utils build
+
+Signed-off-by: Alex Kaplan <kaplan2539@gmail.com>
+---
+ debian/makefiles/ext4_utils.mk | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/debian/makefiles/ext4_utils.mk b/debian/makefiles/ext4_utils.mk
+index cb64916..c5904bf 100644
+--- a/debian/makefiles/ext4_utils.mk
++++ b/debian/makefiles/ext4_utils.mk
+@@ -1,6 +1,7 @@
+ # Makefile for ext4_utils; based on https://heiher.info/2227.html
+ # Author: Dmitrijs Ledkovs <xnox@ubuntu.com>
+
++VPATH+=$(SRCDIR)/extras/ext4_utils
+ SRCS+=make_ext4fs.c
+ SRCS+=ext4fixup.c
+ SRCS+=ext4_utils.c
+@@ -13,7 +14,7 @@ SRCS+=sha1.c
+ SRCS+=wipe.c
+ SRCS+=crc16.c
+
+-VPATH+=../../core/libsparse
++VPATH+=$(SRCDIR)/core/libsparse
+ SRCS+= backed_block.c
+ SRCS+= sparse_crc32.c
+ SRCS+= sparse.c
+@@ -31,10 +32,9 @@ SRCS+=img2simg.c
+ SRCS+=simg2img.c
+ SRCS+=simg2simg.c
+
+-CPPFLAGS+= -I.
+-CPPFLAGS+= -I/usr/include
+-CPPFLAGS+= -I../../core/include
+-CPPFLAGS+= -I../../core/libsparse/include/
++CPPFLAGS+= -I$(SRCDIR)
++CPPFLAGS+= -I$(SRCDIR)/core/include
++CPPFLAGS+= -I$(SRCDIR)/core/libsparse/include/
+
+ LIBS+= -lz -lselinux
+
+--
+2.7.4
+
diff --git a/package/android-tools/Config.in.host b/package/android-tools/Config.in.host
index 993c4c9fdc..433f4e384f 100644
--- a/package/android-tools/Config.in.host
+++ b/package/android-tools/Config.in.host
@@ -23,4 +23,11 @@ config BR2_PACKAGE_HOST_ANDROID_TOOLS_ADB
host, which can be used to interact with target devices
implementing the ADB protocol.
+config BR2_PACKAGE_HOST_ANDROID_TOOLS_EXT4_UTILS
+ bool "ext4 utils"
+ help
+ This option will build and install the ext4 utils for the
+ host, i.e. make_ext4fs, ext4fixup, ext2simg, img2simg,
+ simg2img and simg2simg.
+
endif
diff --git a/package/android-tools/android-tools.mk b/package/android-tools/android-tools.mk
index 879d788e3a..6f6ca7729b 100644
--- a/package/android-tools/android-tools.mk
+++ b/package/android-tools/android-tools.mk
@@ -31,15 +31,24 @@ HOST_ANDROID_TOOLS_PRE_PATCH_HOOKS += ANDROID_TOOLS_DEBIAN_PATCH
ANDROID_TOOLS_PRE_PATCH_HOOKS += ANDROID_TOOLS_DEBIAN_PATCH
ifeq ($(BR2_PACKAGE_HOST_ANDROID_TOOLS_FASTBOOT),y)
-HOST_ANDROID_TOOLS_TARGETS += fastboot
+HOST_ANDROID_TOOLS_BUILD_TARGETS += fastboot
+HOST_ANDROID_TOOLS_INSTALL_TARGETS += build-fastboot/fastboot
HOST_ANDROID_TOOLS_DEPENDENCIES += host-zlib host-libselinux
endif
ifeq ($(BR2_PACKAGE_HOST_ANDROID_TOOLS_ADB),y)
-HOST_ANDROID_TOOLS_TARGETS += adb
+HOST_ANDROID_TOOLS_BUILD_TARGETS += adb
+HOST_ANDROID_TOOLS_INSTALL_TARGETS += build-adb/adb
HOST_ANDROID_TOOLS_DEPENDENCIES += host-zlib host-openssl
endif
+ifeq ($(BR2_PACKAGE_HOST_ANDROID_TOOLS_EXT4_UTILS),y)
+HOST_ANDROID_TOOLS_BUILD_TARGETS += ext4_utils
+HOST_ANDROID_TOOLS_INSTALL_TARGETS += \
+ $(addprefix build-ext4_utils/,make_ext4fs ext4fixup ext2simg img2simg simg2img simg2simg)
+HOST_ANDROID_TOOLS_DEPENDENCIES += host-libselinux
+endif
+
ifeq ($(BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT),y)
ANDROID_TOOLS_TARGETS += fastboot
ANDROID_TOOLS_DEPENDENCIES += zlib libselinux
@@ -58,7 +67,7 @@ endif
# Build each tool in its own directory not to share object files
define HOST_ANDROID_TOOLS_BUILD_CMDS
- $(foreach t,$(HOST_ANDROID_TOOLS_TARGETS),\
+ $(foreach t,$(HOST_ANDROID_TOOLS_BUILD_TARGETS),\
mkdir -p $(@D)/build-$(t) && \
$(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) SRCDIR=$(@D) \
-C $(@D)/build-$(t) -f $(@D)/debian/makefiles/$(t).mk$(sep))
@@ -72,8 +81,8 @@ define ANDROID_TOOLS_BUILD_CMDS
endef
define HOST_ANDROID_TOOLS_INSTALL_CMDS
- $(foreach t,$(HOST_ANDROID_TOOLS_TARGETS),\
- $(INSTALL) -D -m 0755 $(@D)/build-$(t)/$(t) $(HOST_DIR)/bin/$(t)$(sep))
+ $(foreach t,$(HOST_ANDROID_TOOLS_INSTALL_TARGETS),\
+ $(INSTALL) -D -m 0755 $(@D)/$(t) $(HOST_DIR)/bin/$(notdir $(t))$(sep))
endef
define ANDROID_TOOLS_INSTALL_TARGET_CMDS
diff --git a/package/binutils/2.31.1/0002-ld-makefile.patch b/package/binutils/2.31.1/0002-ld-makefile.patch
deleted file mode 100644
index 6893d65aa0..0000000000
--- a/package/binutils/2.31.1/0002-ld-makefile.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From ae435bc27e1eb59e4ad571a37a144bf99dc68f55 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@gmail.com>
-Date: Fri, 25 Dec 2015 11:40:53 +0100
-Subject: [PATCH] ld-makefile
-
-[Romain: rebase on top of 2.26]
-Signed-off-by: Romain Naour <romain.naour@gmail.com>
----
- ld/Makefile.am | 2 +-
- ld/Makefile.in | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/ld/Makefile.am b/ld/Makefile.am
-index d86ad0940c9..c95b0ef0252 100644
---- a/ld/Makefile.am
-+++ b/ld/Makefile.am
-@@ -57,7 +57,7 @@ endif
- # We put the scripts in the directory $(scriptdir)/ldscripts.
- # We can't put the scripts in $(datadir) because the SEARCH_DIR
- # directives need to be different for native and cross linkers.
--scriptdir = $(tooldir)/lib
-+scriptdir = $(libdir)
-
- EMUL = @EMUL@
- EMULATION_OFILES = @EMULATION_OFILES@
-diff --git a/ld/Makefile.in b/ld/Makefile.in
-index 4792b2b013c..789df2d01b9 100644
---- a/ld/Makefile.in
-+++ b/ld/Makefile.in
-@@ -563,7 +563,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
- # We put the scripts in the directory $(scriptdir)/ldscripts.
- # We can't put the scripts in $(datadir) because the SEARCH_DIR
- # directives need to be different for native and cross linkers.
--scriptdir = $(tooldir)/lib
-+scriptdir = $(libdir)
- BASEDIR = $(srcdir)/..
- BFDDIR = $(BASEDIR)/bfd
- INCDIR = $(BASEDIR)/include
---
-2.14.4
-
diff --git a/package/binutils/2.31.1/0003-check-ldrunpath-length.patch b/package/binutils/2.31.1/0003-check-ldrunpath-length.patch
deleted file mode 100644
index 6cdf085422..0000000000
--- a/package/binutils/2.31.1/0003-check-ldrunpath-length.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From a216bfcd91363a8e8c14db320a2870fff2985d78 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@gmail.com>
-Date: Fri, 25 Dec 2015 11:41:47 +0100
-Subject: [PATCH] check-ldrunpath-length
-
-[Romain: rebase on top of 2.26]
-Signed-off-by: Romain Naour <romain.naour@gmail.com>
----
- ld/emultempl/elf32.em | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
-index 1ad9d6b6fa8..637a5d5d585 100644
---- a/ld/emultempl/elf32.em
-+++ b/ld/emultempl/elf32.em
-@@ -1471,6 +1471,8 @@ fragment <<EOF
- && command_line.rpath == NULL)
- {
- path = (const char *) getenv ("LD_RUN_PATH");
-+ if ((path) && (strlen (path) == 0))
-+ path = NULL;
- if (path
- && gld${EMULATION_NAME}_search_needed (path, &n, force))
- break;
-@@ -1751,6 +1753,8 @@ gld${EMULATION_NAME}_before_allocation (void)
- rpath = command_line.rpath;
- if (rpath == NULL)
- rpath = (const char *) getenv ("LD_RUN_PATH");
-+ if ((rpath) && (strlen (rpath) == 0))
-+ rpath = NULL;
-
- for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
- if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
---
-2.14.4
-
diff --git a/package/binutils/2.31.1/0004-add-sysroot-fix-from-bug-3049.patch b/package/binutils/2.31.1/0004-add-sysroot-fix-from-bug-3049.patch
deleted file mode 100644
index 1ef1385062..0000000000
--- a/package/binutils/2.31.1/0004-add-sysroot-fix-from-bug-3049.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 73ecf6f6a1f327c9fa3af1fc924d152321aac801 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@gmail.com>
-Date: Fri, 25 Dec 2015 11:42:48 +0100
-Subject: [PATCH] add sysroot fix from bug #3049
-
-Always try to prepend the sysroot prefix to absolute filenames first.
-
-http://bugs.gentoo.org/275666
-http://sourceware.org/bugzilla/show_bug.cgi?id=10340
-
-Signed-off-by: Sven Rebhan <odinshorse@googlemail.com>
-[Romain: rebase on top of 2.26]
-Signed-off-by: Romain Naour <romain.naour@gmail.com>
----
- ld/ldfile.c | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/ld/ldfile.c b/ld/ldfile.c
-index a72ff135264..b3d166cbd60 100644
---- a/ld/ldfile.c
-+++ b/ld/ldfile.c
-@@ -338,18 +338,24 @@ ldfile_open_file_search (const char *arch,
- directory first. */
- if (!entry->flags.maybe_archive)
- {
-- if (entry->flags.sysrooted && IS_ABSOLUTE_PATH (entry->filename))
-+ /* For absolute pathnames, try to always open the file in the
-+ sysroot first. If this fails, try to open the file at the
-+ given location. */
-+ entry->flags.sysrooted = is_sysrooted_pathname (entry->filename);
-+ if (!entry->flags.sysrooted && IS_ABSOLUTE_PATH (entry->filename)
-+ && ld_sysroot)
- {
- char *name = concat (ld_sysroot, entry->filename,
- (const char *) NULL);
- if (ldfile_try_open_bfd (name, entry))
- {
- entry->filename = name;
-+ entry->flags.sysrooted = TRUE;
- return TRUE;
- }
- free (name);
- }
-- else if (ldfile_try_open_bfd (entry->filename, entry))
-+ if (ldfile_try_open_bfd (entry->filename, entry))
- return TRUE;
-
- if (IS_ABSOLUTE_PATH (entry->filename))
---
-2.14.4
-
diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host
index 59120f3138..faf9ae0508 100644
--- a/package/binutils/Config.in.host
+++ b/package/binutils/Config.in.host
@@ -31,13 +31,13 @@ config BR2_BINUTILS_VERSION_2_31_X
bool "binutils 2.31.1"
config BR2_BINUTILS_VERSION_ARC
- bool "binutils arc (2.29)"
+ bool "binutils arc (2.31)"
depends on BR2_arc
endchoice
config BR2_BINUTILS_VERSION
string
- default "arc-2018.03" if BR2_BINUTILS_VERSION_ARC
+ default "arc-2018.09" if BR2_BINUTILS_VERSION_ARC
default "2.28.1" if BR2_BINUTILS_VERSION_2_28_X
default "2.29.1" if BR2_BINUTILS_VERSION_2_29_X
default "2.30" if BR2_BINUTILS_VERSION_2_30_X
diff --git a/package/binutils/arc-2018.03/0002-ld-makefile.patch b/package/binutils/arc-2018.03/0002-ld-makefile.patch
deleted file mode 100644
index a7cd71e63c..0000000000
--- a/package/binutils/arc-2018.03/0002-ld-makefile.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From d4e18ebc6ad810167a2de84b185a5f0d65b9ec2d Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@gmail.com>
-Date: Fri, 25 Dec 2015 11:40:53 +0100
-Subject: [PATCH] ld-makefile
-
-[Romain: rebase on top of 2.26]
-Signed-off-by: Romain Naour <romain.naour@gmail.com>
----
- ld/Makefile.am | 2 +-
- ld/Makefile.in | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/ld/Makefile.am b/ld/Makefile.am
-index 625347f..d5334d2 100644
---- a/ld/Makefile.am
-+++ b/ld/Makefile.am
-@@ -57,7 +57,7 @@ endif
- # We put the scripts in the directory $(scriptdir)/ldscripts.
- # We can't put the scripts in $(datadir) because the SEARCH_DIR
- # directives need to be different for native and cross linkers.
--scriptdir = $(tooldir)/lib
-+scriptdir = $(libdir)
-
- EMUL = @EMUL@
- EMULATION_OFILES = @EMULATION_OFILES@
-diff --git a/ld/Makefile.in b/ld/Makefile.in
-index ba25177..a2cf228 100644
---- a/ld/Makefile.in
-+++ b/ld/Makefile.in
-@@ -446,7 +446,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
- # We put the scripts in the directory $(scriptdir)/ldscripts.
- # We can't put the scripts in $(datadir) because the SEARCH_DIR
- # directives need to be different for native and cross linkers.
--scriptdir = $(tooldir)/lib
-+scriptdir = $(libdir)
- BASEDIR = $(srcdir)/..
- BFDDIR = $(BASEDIR)/bfd
- INCDIR = $(BASEDIR)/include
---
-2.9.4
-
diff --git a/package/binutils/arc-2018.03/0003-check-ldrunpath-length.patch b/package/binutils/arc-2018.03/0003-check-ldrunpath-length.patch
deleted file mode 100644
index 3fbc5031d1..0000000000
--- a/package/binutils/arc-2018.03/0003-check-ldrunpath-length.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 3bd211025c890ef2971958915d500a9bb2913a2a Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@gmail.com>
-Date: Fri, 25 Dec 2015 11:41:47 +0100
-Subject: [PATCH] check-ldrunpath-length
-
-[Romain: rebase on top of 2.26]
-Signed-off-by: Romain Naour <romain.naour@gmail.com>
----
- ld/emultempl/elf32.em | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
-index d2551b6..70fcb56 100644
---- a/ld/emultempl/elf32.em
-+++ b/ld/emultempl/elf32.em
-@@ -1463,6 +1463,8 @@ fragment <<EOF
- && command_line.rpath == NULL)
- {
- path = (const char *) getenv ("LD_RUN_PATH");
-+ if ((path) && (strlen (path) == 0))
-+ path = NULL;
- if (path
- && gld${EMULATION_NAME}_search_needed (path, &n, force))
- break;
-@@ -1740,6 +1742,8 @@ gld${EMULATION_NAME}_before_allocation (void)
- rpath = command_line.rpath;
- if (rpath == NULL)
- rpath = (const char *) getenv ("LD_RUN_PATH");
-+ if ((rpath) && (strlen (rpath) == 0))
-+ rpath = NULL;
-
- for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
- if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
---
-2.9.4
-
diff --git a/package/binutils/arc-2018.03/0004-add-sysroot-fix-from-bug-3049.patch b/package/binutils/arc-2018.03/0004-add-sysroot-fix-from-bug-3049.patch
deleted file mode 100644
index 9e11840cee..0000000000
--- a/package/binutils/arc-2018.03/0004-add-sysroot-fix-from-bug-3049.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 378bda0e19d279535b3f4a0e448a658a534a5d67 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@gmail.com>
-Date: Fri, 25 Dec 2015 11:42:48 +0100
-Subject: [PATCH] add sysroot fix from bug #3049
-
-Always try to prepend the sysroot prefix to absolute filenames first.
-
-http://bugs.gentoo.org/275666
-http://sourceware.org/bugzilla/show_bug.cgi?id=10340
-
-Signed-off-by: Sven Rebhan <odinshorse@googlemail.com>
-[Romain: rebase on top of 2.26]
-Signed-off-by: Romain Naour <romain.naour@gmail.com>
----
- ld/ldfile.c | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/ld/ldfile.c b/ld/ldfile.c
-index 3b37a0a..f7e5473 100644
---- a/ld/ldfile.c
-+++ b/ld/ldfile.c
-@@ -338,18 +338,24 @@ ldfile_open_file_search (const char *arch,
- directory first. */
- if (!entry->flags.maybe_archive)
- {
-- if (entry->flags.sysrooted && IS_ABSOLUTE_PATH (entry->filename))
-+ /* For absolute pathnames, try to always open the file in the
-+ sysroot first. If this fails, try to open the file at the
-+ given location. */
-+ entry->flags.sysrooted = is_sysrooted_pathname (entry->filename);
-+ if (!entry->flags.sysrooted && IS_ABSOLUTE_PATH (entry->filename)
-+ && ld_sysroot)
- {
- char *name = concat (ld_sysroot, entry->filename,
- (const char *) NULL);
- if (ldfile_try_open_bfd (name, entry))
- {
- entry->filename = name;
-+ entry->flags.sysrooted = TRUE;
- return TRUE;
- }
- free (name);
- }
-- else if (ldfile_try_open_bfd (entry->filename, entry))
-+ if (ldfile_try_open_bfd (entry->filename, entry))
- return TRUE;
-
- if (IS_ABSOLUTE_PATH (entry->filename))
---
-2.9.4
-
diff --git a/package/binutils/arc-2018.03/0005-poison-system-directories.patch b/package/binutils/arc-2018.09/0005-poison-system-directories.patch
index a7c2761a9d..90c7ac760a 100644
--- a/package/binutils/arc-2018.03/0005-poison-system-directories.patch
+++ b/package/binutils/arc-2018.09/0005-poison-system-directories.patch
@@ -1,4 +1,4 @@
-From b100e9d16bfe6725b2624902af457ecfa490b150 Mon Sep 17 00:00:00 2001
+From 7d1e6ed1d57e839207e0ece7561bd4709032de9f Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Fri, 25 Dec 2015 11:45:38 +0100
Subject: [PATCH] poison-system-directories
@@ -70,7 +70,7 @@ Signed-off-by: Scott Garman <scott.a.garman@intel.com>
ld/configure | 14 ++++++++++++++
ld/configure.ac | 10 ++++++++++
ld/ld.h | 8 ++++++++
- ld/ld.texinfo | 12 ++++++++++++
+ ld/ld.texi | 12 ++++++++++++
ld/ldfile.c | 17 +++++++++++++++++
ld/ldlex.h | 2 ++
ld/ldmain.c | 2 ++
@@ -78,10 +78,10 @@ Signed-off-by: Scott Garman <scott.a.garman@intel.com>
9 files changed, 89 insertions(+)
diff --git a/ld/config.in b/ld/config.in
-index 5d91380..ffe84a7 100644
+index d93c9b0..5da2742 100644
--- a/ld/config.in
+++ b/ld/config.in
-@@ -21,6 +21,9 @@
+@@ -31,6 +31,9 @@
language is requested. */
#undef ENABLE_NLS
@@ -92,10 +92,10 @@ index 5d91380..ffe84a7 100644
#undef EXTRA_SHLIB_EXTENSION
diff --git a/ld/configure b/ld/configure
-index da20ab5..63e3da7 100755
+index 300a272..d68890f 100755
--- a/ld/configure
+++ b/ld/configure
-@@ -785,6 +785,7 @@ with_lib_path
+@@ -822,6 +822,7 @@ with_lib_path
enable_targets
enable_64_bit_bfd
with_sysroot
@@ -103,7 +103,7 @@ index da20ab5..63e3da7 100755
enable_gold
enable_got
enable_compressed_debug_sections
-@@ -1443,6 +1444,8 @@ Optional Features:
+@@ -1486,6 +1487,8 @@ Optional Features:
--disable-largefile omit support for large files
--enable-targets alternative target configurations
--enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)
@@ -112,7 +112,7 @@ index da20ab5..63e3da7 100755
--enable-gold[=ARG] build gold [ARG={default,yes,no}]
--enable-got=<type> GOT handling scheme (target, single, negative,
multigot)
-@@ -15497,7 +15500,18 @@ else
+@@ -15803,7 +15806,18 @@ else
fi
@@ -132,10 +132,10 @@ index da20ab5..63e3da7 100755
# Check whether --enable-got was given.
if test "${enable_got+set}" = set; then :
diff --git a/ld/configure.ac b/ld/configure.ac
-index 34315e6..5ade9a0 100644
+index d10c553..9f1b57b 100644
--- a/ld/configure.ac
+++ b/ld/configure.ac
-@@ -95,6 +95,16 @@ AC_SUBST(use_sysroot)
+@@ -94,6 +94,16 @@ AC_SUBST(use_sysroot)
AC_SUBST(TARGET_SYSTEM_ROOT)
AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE)
@@ -153,10 +153,10 @@ index 34315e6..5ade9a0 100644
dnl "install_as_default" is set to false if gold is the default linker.
dnl "installed_linker" is the installed BFD linker name.
diff --git a/ld/ld.h b/ld/ld.h
-index 162e156..7d6d7ef 100644
+index ba914b9..9df17da 100644
--- a/ld/ld.h
+++ b/ld/ld.h
-@@ -177,6 +177,14 @@ typedef struct
+@@ -180,6 +180,14 @@ typedef struct
in the linker script. */
bfd_boolean force_group_allocation;
@@ -171,11 +171,11 @@ index 162e156..7d6d7ef 100644
/* Big or little endian as set on command line. */
enum endian_enum endian;
-diff --git a/ld/ld.texinfo b/ld/ld.texinfo
-index bb5f719..78501e4 100644
---- a/ld/ld.texinfo
-+++ b/ld/ld.texinfo
-@@ -2480,6 +2480,18 @@ string identifying the original linked file does not change.
+diff --git a/ld/ld.texi b/ld/ld.texi
+index 40d79dd..137d46c 100644
+--- a/ld/ld.texi
++++ b/ld/ld.texi
+@@ -2479,6 +2479,18 @@ string identifying the original linked file does not change.
Passing @code{none} for @var{style} disables the setting from any
@code{--build-id} options earlier on the command line.
@@ -195,7 +195,7 @@ index bb5f719..78501e4 100644
@c man end
diff --git a/ld/ldfile.c b/ld/ldfile.c
-index f7e5473..2cd84d3 100644
+index b3d166c..3dcbf66 100644
--- a/ld/ldfile.c
+++ b/ld/ldfile.c
@@ -116,6 +116,23 @@ ldfile_add_library_path (const char *name, bfd_boolean cmdline)
@@ -223,10 +223,10 @@ index f7e5473..2cd84d3 100644
/* Try to open a BFD for a lang_input_statement. */
diff --git a/ld/ldlex.h b/ld/ldlex.h
-index 5aa7f6b..cb655e0 100644
+index 04d6fd5..d7df005 100644
--- a/ld/ldlex.h
+++ b/ld/ldlex.h
-@@ -147,6 +147,8 @@ enum option_values
+@@ -148,6 +148,8 @@ enum option_values
OPTION_REQUIRE_DEFINED_SYMBOL,
OPTION_ORPHAN_HANDLING,
OPTION_FORCE_GROUP_ALLOCATION,
@@ -236,10 +236,10 @@ index 5aa7f6b..cb655e0 100644
/* The initial parser states. */
diff --git a/ld/ldmain.c b/ld/ldmain.c
-index ee5ab11..5f6effd 100644
+index f31eeb2..25f8497 100644
--- a/ld/ldmain.c
+++ b/ld/ldmain.c
-@@ -270,6 +270,8 @@ main (int argc, char **argv)
+@@ -268,6 +268,8 @@ main (int argc, char **argv)
command_line.warn_mismatch = TRUE;
command_line.warn_search_mismatch = TRUE;
command_line.check_section_addresses = -1;
@@ -249,10 +249,10 @@ index ee5ab11..5f6effd 100644
/* We initialize DEMANGLING based on the environment variable
COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the
diff --git a/ld/lexsup.c b/ld/lexsup.c
-index 08106bc..d619d50 100644
+index 86a033a..f07f095 100644
--- a/ld/lexsup.c
+++ b/ld/lexsup.c
-@@ -538,6 +538,14 @@ static const struct ld_option ld_options[] =
+@@ -543,6 +543,14 @@ static const struct ld_option ld_options[] =
{ {"orphan-handling", required_argument, NULL, OPTION_ORPHAN_HANDLING},
'\0', N_("=MODE"), N_("Control how orphan sections are handled."),
TWO_DASHES },
@@ -267,7 +267,7 @@ index 08106bc..d619d50 100644
};
#define OPTION_COUNT ARRAY_SIZE (ld_options)
-@@ -550,6 +558,7 @@ parse_args (unsigned argc, char **argv)
+@@ -555,6 +563,7 @@ parse_args (unsigned argc, char **argv)
int ingroup = 0;
char *default_dirlist = NULL;
char *shortopts;
@@ -275,9 +275,9 @@ index 08106bc..d619d50 100644
struct option *longopts;
struct option *really_longopts;
int last_optind;
-@@ -1534,6 +1543,14 @@ parse_args (unsigned argc, char **argv)
- }
- break;
+@@ -1543,6 +1552,14 @@ parse_args (unsigned argc, char **argv)
+ }
+ break;
+ case OPTION_NO_POISON_SYSTEM_DIRECTORIES:
+ command_line.poison_system_directories = FALSE;
@@ -290,7 +290,7 @@ index 08106bc..d619d50 100644
case OPTION_PUSH_STATE:
input_flags.pushed = xmemdup (&input_flags,
sizeof (input_flags),
-@@ -1577,6 +1594,10 @@ parse_args (unsigned argc, char **argv)
+@@ -1586,6 +1603,10 @@ parse_args (unsigned argc, char **argv)
command_line.soname = NULL;
}
@@ -302,5 +302,5 @@ index 08106bc..d619d50 100644
{
lang_leave_group ();
--
-2.9.4
+2.7.4
diff --git a/package/binutils/binutils.hash b/package/binutils/binutils.hash
index d97f55da8a..335bb751fb 100644
--- a/package/binutils/binutils.hash
+++ b/package/binutils/binutils.hash
@@ -5,4 +5,4 @@ sha512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b19
sha512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30 binutils-2.31.1.tar.xz
# Locally calculated (fetched from Github)
-sha512 bea88164ed48733bad63393fe702e12e651efd113aa4f3fe2e253e05c4c1e5da20b5a99333f0b5528df6d32ce806f799211c568e1916845a87999901dde28817 binutils-arc-2018.03.tar.gz
+sha512 5db8f749bfaf4d688ad3429018cbf2b5448b69d8f14a99e00df309d96735eae03da49b82ed38e4b2602c2da5b1b26b7453986b108e1898aff07cdef511802cdb binutils-arc-2018.09.tar.gz
diff --git a/package/binutils/binutils.mk b/package/binutils/binutils.mk
index 090065a3e4..10657e562f 100644
--- a/package/binutils/binutils.mk
+++ b/package/binutils/binutils.mk
@@ -9,13 +9,13 @@
BINUTILS_VERSION = $(call qstrip,$(BR2_BINUTILS_VERSION))
ifeq ($(BINUTILS_VERSION),)
ifeq ($(BR2_arc),y)
-BINUTILS_VERSION = arc-2018.03
+BINUTILS_VERSION = arc-2018.09
else
BINUTILS_VERSION = 2.29.1
endif
endif # BINUTILS_VERSION
-ifeq ($(BINUTILS_VERSION),arc-2018.03)
+ifeq ($(BINUTILS_VERSION),arc-2018.09)
BINUTILS_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,binutils-gdb,$(BINUTILS_VERSION))
BINUTILS_SOURCE = binutils-$(BINUTILS_VERSION).tar.gz
BINUTILS_FROM_GIT = y
diff --git a/package/c-ares/c-ares.hash b/package/c-ares/c-ares.hash
index 0c665574d8..a3599aaa11 100644
--- a/package/c-ares/c-ares.hash
+++ b/package/c-ares/c-ares.hash
@@ -1,5 +1,5 @@
# Locally calculated after checking pgp signature
-sha256 45d3c1fd29263ceec2afc8ff9cd06d5f8f889636eb4e80ce3cc7f0eaf7aadc6e c-ares-1.14.0.tar.gz
+sha256 6cdb97871f2930530c97deb7cf5c8fa4be5a0b02c7cea6e7c7667672a39d6852 c-ares-1.15.0.tar.gz
# Hash for license file
sha256 db4eb63fe09daebdf57d3f79b091bb5ee5070c0d761040e83264e648d307af4c LICENSE.md
diff --git a/package/c-ares/c-ares.mk b/package/c-ares/c-ares.mk
index 16536137a8..f9e440d9b1 100644
--- a/package/c-ares/c-ares.mk
+++ b/package/c-ares/c-ares.mk
@@ -4,7 +4,7 @@
#
################################################################################
-C_ARES_VERSION = 1.14.0
+C_ARES_VERSION = 1.15.0
C_ARES_SITE = http://c-ares.haxx.se/download
C_ARES_INSTALL_STAGING = YES
C_ARES_CONF_OPTS = --with-random=/dev/urandom
@@ -14,3 +14,4 @@ C_ARES_LICENSE = MIT
C_ARES_LICENSE_FILES = LICENSE.md
$(eval $(autotools-package))
+$(eval $(host-autotools-package))
diff --git a/package/civetweb/0001-Lua-fix-a-typo-changing-LFS_DIR-to-LFS_DIR.patch b/package/civetweb/0001-Lua-fix-a-typo-changing-LFS_DIR-to-LFS_DIR.patch
deleted file mode 100644
index aee3cfcbff..0000000000
--- a/package/civetweb/0001-Lua-fix-a-typo-changing-LFS_DIR-to-LFS_DIR.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 0821066f9adf8410891cd07684ecac50a9bc36a4 Mon Sep 17 00:00:00 2001
-From: Fabio Porcedda <fabio.porcedda@gmail>
-Date: Wed, 25 Feb 2015 18:40:24 +0100
-Subject: [PATCH] Lua: fix a typo changing %(LFS_DIR) to $(LFS_DIR)
-
-Also this fix a error on GNU Make v4.0:
- Makefile:203: *** mixed implicit and normal rules. Stop.
-
-Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail>
----
- resources/Makefile.in-lua | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/resources/Makefile.in-lua b/resources/Makefile.in-lua
-index 0902f11..f3d95fd 100644
---- a/resources/Makefile.in-lua
-+++ b/resources/Makefile.in-lua
-@@ -57,5 +57,5 @@ LFS_CFLAGS = -I$(LFS_DIR)
-
- OBJECTS += $(LUA_OBJECTS) $(SQLITE_OBJECTS) $(LFS_OBJECTS)
- CFLAGS += $(LUA_CFLAGS) $(SQLITE_CFLAGS) $(LFS_CFLAGS) -DUSE_LUA -DUSE_LUA_SQLITE3 -DUSE_LUA_FILE_SYSTEM
--SOURCE_DIRS = $(LUA_DIR) $(SQLITE_DIR) %(LFS_DIR)
-+SOURCE_DIRS = $(LUA_DIR) $(SQLITE_DIR) $(LFS_DIR)
-
---
-2.3.0
-
diff --git a/package/civetweb/0001-modlua.ini-include-dlfcn.h.patch b/package/civetweb/0001-modlua.ini-include-dlfcn.h.patch
new file mode 100644
index 0000000000..bd1b06aedf
--- /dev/null
+++ b/package/civetweb/0001-modlua.ini-include-dlfcn.h.patch
@@ -0,0 +1,34 @@
+From ca4325c6963e505d6fb628163abf2359427ea022 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Thu, 29 Nov 2018 21:43:28 +0100
+Subject: [PATCH] modlua.ini: include dlfcn.h
+
+dlfcn.h must be included to be able to use dlopen otherwise build will
+fail on:
+src/mod_lua.inl:2845:41: error: 'RTLD_LAZY' undeclared (first use in this function)
+ lib_handle_uuid = dlopen("libuuid.so", RTLD_LAZY);
+
+Fixes:
+ - http://autobuild.buildroot.org/results/7a189f49c5a8b6f7b3d4c57cda5982adc65dbc19
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: https://github.com/civetweb/civetweb/pull/706]
+---
+ src/mod_lua.inl | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/mod_lua.inl b/src/mod_lua.inl
+index 97a5de1e..ce7a4b2e 100644
+--- a/src/mod_lua.inl
++++ b/src/mod_lua.inl
+@@ -2,6 +2,7 @@
+ * See https://github.com/civetweb/civetweb/
+ */
+
++#include <dlfcn.h>
+ #include "civetweb_lua.h"
+ #include "civetweb_private_lua.h"
+
+--
+2.14.1
+
diff --git a/package/civetweb/Config.in b/package/civetweb/Config.in
index d68a1ffd53..9e43969085 100644
--- a/package/civetweb/Config.in
+++ b/package/civetweb/Config.in
@@ -2,6 +2,7 @@ config BR2_PACKAGE_CIVETWEB
bool "civetweb"
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU # fork()
+ select BR2_PACKAGE_CIVETWEB_SERVER if !BR2_PACKAGE_CIVETWEB_LIB
help
Full featured embedded web server with Lua support.
@@ -9,6 +10,17 @@ config BR2_PACKAGE_CIVETWEB
if BR2_PACKAGE_CIVETWEB
+config BR2_PACKAGE_CIVETWEB_SERVER
+ bool "enable the web server application"
+ help
+ Include the web server and its config files.
+
+config BR2_PACKAGE_CIVETWEB_LIB
+ bool "enable library for embedding"
+ help
+ Enable the civetweb library for embedding in another
+ application.
+
config BR2_PACKAGE_CIVETWEB_WITH_LUA
bool "enable Lua support"
# required by the bundled Sqlite3 and Lua code
diff --git a/package/civetweb/civetweb.hash b/package/civetweb/civetweb.hash
index 745f4a8ce6..23f7c4acac 100644
--- a/package/civetweb/civetweb.hash
+++ b/package/civetweb/civetweb.hash
@@ -1,2 +1,3 @@
# Locally calculated
-sha256 79a852a26068eb6d2f8de5ee72e021f0d2c8bd176eb81f41909a876b736815d9 civetweb-v1.5.tar.gz
+sha256 de7d5e7a2d9551d325898c71e41d437d5f7b51e754b242af897f7be96e713a42 civetweb-v1.11.tar.gz
+sha256 1cd00da00b8649b4005757f4019acfd3102ecd407f47998081697e8e9086f706 LICENSE.md
diff --git a/package/civetweb/civetweb.mk b/package/civetweb/civetweb.mk
index d29765b87d..4c3c443db7 100644
--- a/package/civetweb/civetweb.mk
+++ b/package/civetweb/civetweb.mk
@@ -4,16 +4,22 @@
#
################################################################################
-CIVETWEB_VERSION = v1.5
-CIVETWEB_SITE = $(call github,sunsetbrew,civetweb,$(CIVETWEB_VERSION))
+CIVETWEB_VERSION = v1.11
+CIVETWEB_SITE = $(call github,civetweb,civetweb,$(CIVETWEB_VERSION))
CIVETWEB_LICENSE = MIT
CIVETWEB_LICENSE_FILES = LICENSE.md
-CIVETWEB_CONF_OPTS = TARGET_OS=LINUX WITH_IPV6=1
+CIVETWEB_CONF_OPTS = TARGET_OS=LINUX WITH_IPV6=1 \
+ $(if $(BR2_INSTALL_LIBSTDCPP),WITH_CPP=1)
CIVETWEB_COPT = -DHAVE_POSIX_FALLOCATE=0
CIVETWEB_LIBS = -lpthread -lm
CIVETWEB_SYSCONFDIR = /etc
CIVETWEB_HTMLDIR = /var/www
+CIVETWEB_INSTALL_OPTS = \
+ DOCUMENT_ROOT="$(CIVETWEB_HTMLDIR)" \
+ CONFIG_FILE2="$(CIVETWEB_SYSCONFDIR)/civetweb.conf" \
+ HTMLDIR="$(TARGET_DIR)$(CIVETWEB_HTMLDIR)" \
+ SYSCONFDIR="$(TARGET_DIR)$(CIVETWEB_SYSCONFDIR)"
ifeq ($(BR2_PACKAGE_CIVETWEB_WITH_LUA),y)
CIVETWEB_CONF_OPTS += WITH_LUA=1
@@ -28,19 +34,48 @@ else
CIVETWEB_COPT += -DNO_SSL
endif
+ifeq ($(BR2_PACKAGE_CIVETWEB_SERVER),y)
+CIVETWEB_BUILD_TARGETS += build
+CIVETWEB_INSTALL_TARGETS += install
+endif
+
+ifeq ($(BR2_PACKAGE_CIVETWEB_LIB),y)
+CIVETWEB_INSTALL_STAGING = YES
+CIVETWEB_INSTALL_TARGETS += install-headers
+
+ifeq ($(BR2_STATIC_LIBS)$(BR2_STATIC_SHARED_LIBS),y)
+CIVETWEB_BUILD_TARGETS += lib
+CIVETWEB_INSTALL_TARGETS += install-lib
+endif
+
+ifeq ($(BR2_SHARED_LIBS)$(BR2_STATIC_SHARED_LIBS),y)
+CIVETWEB_BUILD_TARGETS += slib
+CIVETWEB_INSTALL_TARGETS += install-slib
+CIVETWEB_COPT += -fPIC
+endif
+
+endif # BR2_PACKAGE_CIVETWEB_LIB
+
define CIVETWEB_BUILD_CMDS
- $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) build \
+ $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(CIVETWEB_BUILD_TARGETS) \
$(CIVETWEB_CONF_OPTS) \
COPT="$(CIVETWEB_COPT)" LIBS="$(CIVETWEB_LIBS)"
endef
+define CIVETWEB_INSTALL_STAGING_CMDS
+ mkdir -p $(STAGING_DIR)/usr/include
+ $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(CIVETWEB_INSTALL_TARGETS) \
+ PREFIX="$(STAGING_DIR)/usr" \
+ $(CIVETWEB_INSTALL_OPTS) \
+ $(CIVETWEB_CONF_OPTS) \
+ COPT='$(CIVETWEB_COPT)'
+endef
+
define CIVETWEB_INSTALL_TARGET_CMDS
- $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) install \
- DOCUMENT_ROOT="$(CIVETWEB_HTMLDIR)" \
- CONFIG_FILE2="$(CIVETWEB_SYSCONFDIR)/civetweb.conf" \
- HTMLDIR="$(TARGET_DIR)$(CIVETWEB_HTMLDIR)" \
- SYSCONFDIR="$(TARGET_DIR)$(CIVETWEB_SYSCONFDIR)" \
+ mkdir -p $(TARGET_DIR)/usr/include
+ $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(CIVETWEB_INSTALL_TARGETS) \
PREFIX="$(TARGET_DIR)/usr" \
+ $(CIVETWEB_INSTALL_OPTS) \
$(CIVETWEB_CONF_OPTS) \
COPT='$(CIVETWEB_COPT)'
endef
diff --git a/package/cunit/Config.in b/package/cunit/Config.in
new file mode 100644
index 0000000000..8bcfa2a4ec
--- /dev/null
+++ b/package/cunit/Config.in
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_CUNIT
+ bool "cunit"
+ help
+ An automated testing framework in 'C'.
+
+ http://cunit.sourceforge.net/
diff --git a/package/cunit/cunit.hash b/package/cunit/cunit.hash
new file mode 100644
index 0000000000..bbd43a78ca
--- /dev/null
+++ b/package/cunit/cunit.hash
@@ -0,0 +1,3 @@
+# Locally calculated:
+sha256 f5b29137f845bb08b77ec60584fdb728b4e58f1023e6f249a464efa49a40f214 CUnit-2.1-3.tar.bz2
+sha256 5d9d73d41a57dd2f34487ef3978a2c13cdb97294baeeb81fcd274796399eb15f COPYING
diff --git a/package/cunit/cunit.mk b/package/cunit/cunit.mk
new file mode 100644
index 0000000000..9fc3b96141
--- /dev/null
+++ b/package/cunit/cunit.mk
@@ -0,0 +1,17 @@
+################################################################################
+#
+# cunit
+#
+################################################################################
+
+CUNIT_VERSION = 2.1-3
+CUNIT_SITE = http://downloads.sourceforge.net/project/cunit/CUnit/$(CUNIT_VERSION)
+CUNIT_SOURCE = CUnit-$(CUNIT_VERSION).tar.bz2
+CUNIT_INSTALL_STAGING = YES
+CUNIT_LICENSE = LGPL-2.0+
+CUNIT_LICENSE_FILES = COPYING
+
+# The source archive does not have the autoconf/automake material generated.
+CUNIT_AUTORECONF = YES
+
+$(eval $(autotools-package))
diff --git a/package/dante/dante.mk b/package/dante/dante.mk
index 9471acc692..0bd036d37e 100644
--- a/package/dante/dante.mk
+++ b/package/dante/dante.mk
@@ -14,6 +14,13 @@ DANTE_AUTORECONF = YES
DANTE_CONF_OPTS += --disable-client --disable-preload --without-pam
+ifeq ($(BR2_PACKAGE_LINUX_PAM),y)
+DANTE_DEPENDENCIES += linux-pam
+DANTE_CONF_OPTS += --with-pam
+else
+DANTE_CONF_OPTS += --without-pam
+endif
+
define DANTE_INSTALL_CONFIG_FILE
$(INSTALL) -D -m 644 $(@D)/example/sockd.conf \
$(TARGET_DIR)/etc/sockd.conf
diff --git a/package/dbus-python/dbus-python.hash b/package/dbus-python/dbus-python.hash
index 080aada081..991bb42787 100644
--- a/package/dbus-python/dbus-python.hash
+++ b/package/dbus-python/dbus-python.hash
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
-sha256 e2f1d6871f74fba23652e51d10873e54f71adab0525833c19bad9e99b1b2f9cc dbus-python-1.2.4.tar.gz
+sha256 abf12bbb765e300bf8e2a1b2f32f85949eab06998dbda127952c31cb63957b6f dbus-python-1.2.8.tar.gz
diff --git a/package/dbus-python/dbus-python.mk b/package/dbus-python/dbus-python.mk
index da04b7404f..d6af7454af 100644
--- a/package/dbus-python/dbus-python.mk
+++ b/package/dbus-python/dbus-python.mk
@@ -4,7 +4,7 @@
#
################################################################################
-DBUS_PYTHON_VERSION = 1.2.4
+DBUS_PYTHON_VERSION = 1.2.8
DBUS_PYTHON_SITE = http://dbus.freedesktop.org/releases/dbus-python
DBUS_PYTHON_INSTALL_STAGING = YES
DBUS_PYTHON_LICENSE = MIT
diff --git a/package/dovecot-pigeonhole/dovecot-pigeonhole.hash b/package/dovecot-pigeonhole/dovecot-pigeonhole.hash
index b20ab0dcf4..5ad9406ad2 100644
--- a/package/dovecot-pigeonhole/dovecot-pigeonhole.hash
+++ b/package/dovecot-pigeonhole/dovecot-pigeonhole.hash
@@ -1,3 +1,3 @@
# Locally computed after checking signature
-sha256 e02f2741c05f9e2af1c5f46da35efb74997f9d4b941ba68936206d310ddf2622 dovecot-2.3-pigeonhole-0.5.3.tar.gz
+sha256 547999e67a001abc5e654c7e35653d3fe057fa9a47a24257e39a79c41ef08516 dovecot-2.3-pigeonhole-0.5.4.tar.gz
sha256 fc9e9522216f2a9a28b31300e3c73c1df56acc27dfae951bf516e7995366b51a COPYING
diff --git a/package/dovecot-pigeonhole/dovecot-pigeonhole.mk b/package/dovecot-pigeonhole/dovecot-pigeonhole.mk
index 2647426e36..184204673b 100644
--- a/package/dovecot-pigeonhole/dovecot-pigeonhole.mk
+++ b/package/dovecot-pigeonhole/dovecot-pigeonhole.mk
@@ -4,7 +4,7 @@
#
################################################################################
-DOVECOT_PIGEONHOLE_VERSION = 0.5.3
+DOVECOT_PIGEONHOLE_VERSION = 0.5.4
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/package/dovecot/dovecot.hash b/package/dovecot/dovecot.hash
index 5f982a7943..c4abc18bea 100644
--- a/package/dovecot/dovecot.hash
+++ b/package/dovecot/dovecot.hash
@@ -1,5 +1,5 @@
# Locally computed after checking signature
-sha256 15af27ee25258afb4ad9581f8df681be998b763597086bbae54ca7d77a066d8e dovecot-2.3.3.tar.gz
+sha256 d91b76eff8df6185c1799f1b279f780105bdeeea27e3286b42f4cab18efbef05 dovecot-2.3.4.tar.gz
sha256 a363b132e494f662d98c820d1481297e6ae72f194c2c91b6c39e1518b86240a8 COPYING
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPL
sha256 52b8c95fabb19575281874b661ef7968ea47e8f5d74ba0dd40ce512e52b3fc97 COPYING.MIT
diff --git a/package/dovecot/dovecot.mk b/package/dovecot/dovecot.mk
index 17cdc22e53..45c9f67c3c 100644
--- a/package/dovecot/dovecot.mk
+++ b/package/dovecot/dovecot.mk
@@ -5,7 +5,7 @@
################################################################################
DOVECOT_VERSION_MAJOR = 2.3
-DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).3
+DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).4
DOVECOT_SITE = https://www.dovecot.org/releases/$(DOVECOT_VERSION_MAJOR)
DOVECOT_INSTALL_STAGING = YES
DOVECOT_LICENSE = LGPL-2.1, MIT, Public Domain, BSD-3-Clause, Unicode-DFS-2015
diff --git a/package/doxygen/0001-Bug-776791-1.8.13-Regression-Segfault-building-the-b.patch b/package/doxygen/0001-Bug-776791-1.8.13-Regression-Segfault-building-the-b.patch
deleted file mode 100644
index b64158ca6e..0000000000
--- a/package/doxygen/0001-Bug-776791-1.8.13-Regression-Segfault-building-the-b.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 0f02761a158a5e9ddbd5801682482af8986dbc35 Mon Sep 17 00:00:00 2001
-From: albert-github <albert.tests@gmail.com>
-Date: Wed, 4 Jan 2017 12:24:55 +0100
-Subject: [PATCH] Bug 776791 - [1.8.13 Regression] Segfault building the
- breathe docs
-
-Protected against NULL pointer of variable al
-
-[Romain: backport from upstream]
-Signed-off-by: Romain Naour <romain.naour@gmail.com>
----
- src/xmlgen.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/xmlgen.cpp b/src/xmlgen.cpp
-index fe95c7a..70e198a 100644
---- a/src/xmlgen.cpp
-+++ b/src/xmlgen.cpp
-@@ -620,7 +620,7 @@ static void generateXMLForMember(MemberDef *md,FTextStream &ti,FTextStream &t,De
- if (md->isInline()) t << "yes"; else t << "no";
- t << "\"";
-
-- if (al->refQualifier!=RefQualifierNone)
-+ if (al!=0 && al->refQualifier!=RefQualifierNone)
- {
- t << " refqual=\"";
- if (al->refQualifier==RefQualifierLValue) t << "lvalue"; else t << "rvalue";
---
-2.9.4
-
diff --git a/package/doxygen/0002-build-fix-the-way-lang_cfg.h-is-generated.patch b/package/doxygen/0002-build-fix-the-way-lang_cfg.h-is-generated.patch
deleted file mode 100644
index 282b2bdcd8..0000000000
--- a/package/doxygen/0002-build-fix-the-way-lang_cfg.h-is-generated.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From f9a3aa72c2bf15726bcdafd140fd21f790de555d Mon Sep 17 00:00:00 2001
-From: Bartosz Golaszewski <brgl@bgdev.pl>
-Date: Wed, 21 Jun 2017 14:32:25 +0200
-Subject: [PATCH] build: fix the way lang_cfg.h is generated
-
-This header is generated by running cmake/lang_cfg.cmake and
-redirecting its stderr. If any warning is emitted by this script, it
-ends up in the generated header and breaks the build.
-
-To avoid such problems: pass the path to the header as an argument to
-the cmake script and use the cmake 'file' command instead of 'message'.
-
-We can't even use message(STATUS...) as - although it prints to stdout
-as opposed to other types of messages - it prepends all output with
-a double hyphen.
-
-Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
----
- cmake/lang_cfg.cmake | 10 +++++-----
- src/CMakeLists.txt | 2 +-
- 2 files changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/cmake/lang_cfg.cmake b/cmake/lang_cfg.cmake
-index c57d3ed..86c2d9a 100644
---- a/cmake/lang_cfg.cmake
-+++ b/cmake/lang_cfg.cmake
-@@ -1,10 +1,10 @@
--if(${CMAKE_ARGC} GREATER 1)
-- if ("${CMAKE_ARGV3}" STREQUAL "ENONLY")
-- message("#define ENGLISH_ONLY")
-+if(${CMAKE_ARGC} GREATER 2)
-+ if ("${CMAKE_ARGV4}" STREQUAL "ENONLY")
-+ file(APPEND ${CMAKE_ARGV3} " #define ENGLISH_ONLY")
- else()
- math(EXPR UPTO ${CMAKE_ARGC}-1)
-- foreach(i RANGE 3 ${UPTO})
-- message("#define LANG_${CMAKE_ARGV${i}}")
-+ foreach(i RANGE 4 ${UPTO})
-+ file(APPEND ${CMAKE_ARGV3} " #define LANG_${CMAKE_ARGV${i}}")
- endforeach()
- endif()
- endif()
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 08c8439..dcf4ef8 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -73,7 +73,7 @@ set_source_files_properties(${GENERATED_SRC}/ce_parse.h PROPERTIES GENERATED 1)
- # lang_cfg.h
- add_custom_command(
- COMMENT "Generating ${GENERATED_SRC}/lang_cfg.h"
-- COMMAND ${CMAKE_COMMAND} -P ${CMAKE_SOURCE_DIR}/cmake/lang_cfg.cmake ${LANG_CODES} 2> ${GENERATED_SRC}/lang_cfg.h
-+ COMMAND ${CMAKE_COMMAND} -P ${CMAKE_SOURCE_DIR}/cmake/lang_cfg.cmake ${GENERATED_SRC}/lang_cfg.h ${LANG_CODES}
- DEPENDS ${LANGUAGE_FILES}
- OUTPUT ${GENERATED_SRC}/lang_cfg.h
- )
---
-2.9.3
-
diff --git a/package/doxygen/doxygen.hash b/package/doxygen/doxygen.hash
index 4cf53e7acb..db70b74d23 100644
--- a/package/doxygen/doxygen.hash
+++ b/package/doxygen/doxygen.hash
@@ -1,2 +1,2 @@
# Computed locally
-sha256 af667887bd7a87dc0dbf9ac8d86c96b552dfb8ca9c790ed1cbffaa6131573f6b doxygen-1.8.13.src.tar.gz
+sha256 d1757e02755ef6f56fd45f1f4398598b920381948d6fcfa58f5ca6aa56f59d4d doxygen-1.8.14.src.tar.gz
diff --git a/package/doxygen/doxygen.mk b/package/doxygen/doxygen.mk
index 10cdcf97e0..5e11a1d187 100644
--- a/package/doxygen/doxygen.mk
+++ b/package/doxygen/doxygen.mk
@@ -4,7 +4,7 @@
#
################################################################################
-DOXYGEN_VERSION = 1.8.13
+DOXYGEN_VERSION = 1.8.14
DOXYGEN_SOURCE = doxygen-$(DOXYGEN_VERSION).src.tar.gz
DOXYGEN_SITE = http://ftp.stack.nl/pub/users/dimitri
DOXYGEN_LICENSE = GPL-2.0
diff --git a/package/ejabberd/0001-Makefile.in-do-not-download-or-compile-dependencies.patch b/package/ejabberd/0001-Makefile.in-do-not-download-or-compile-dependencies.patch
new file mode 100644
index 0000000000..01a5362e5f
--- /dev/null
+++ b/package/ejabberd/0001-Makefile.in-do-not-download-or-compile-dependencies.patch
@@ -0,0 +1,35 @@
+From 277103e886c9b3ddfede8b3f5b92d3e94736f404 Mon Sep 17 00:00:00 2001
+From: Johan Oudinet <johan.oudinet@gmail.com>
+Date: Fri, 23 Nov 2018 16:13:21 +0100
+Subject: [PATCH] Makefile.in: do not download or compile dependencies
+
+Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
+---
+ Makefile.in | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 48dca7d8..d2324dae 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -94,7 +94,7 @@ ifneq ($(INSTALLGROUP),)
+ G_USER=-g $(INSTALLGROUP)
+ endif
+
+-all: deps src
++all: src
+
+ deps: deps/.got
+
+@@ -108,7 +108,7 @@ deps/.built: deps/.got
+ $(REBAR) configure-deps
+ $(REBAR) compile && :> deps/.built
+
+-src: deps/.built
++src:
+ $(REBAR) skip_deps=true compile
+
+ update:
+--
+2.17.1
+
diff --git a/package/ejabberd/0001-remove-make-targets-for-deps.patch b/package/ejabberd/0001-remove-make-targets-for-deps.patch
deleted file mode 100644
index f012140a18..0000000000
--- a/package/ejabberd/0001-remove-make-targets-for-deps.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 21d1f05a8882657c151397d0e4723535402f1757 Mon Sep 17 00:00:00 2001
-From: Philipp Huebner <debalance@debian.org>
-Date: Wed, 20 Jan 2016 10:22:57 -0500
-Subject: [PATCH] remove make targets for deps
-
-Without this patch, dependencies would be downloaded and compiled
-using rebar at build time.
-
-Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
-
-diff --git a/Makefile.in b/Makefile.in
-index df2abfdc..8c8fd714 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -86,27 +86,11 @@ else
- INIT_USER=$(INSTALLUSER)
- endif
-
--all: deps src
-+all: src
-
--deps: deps/.got
--
--deps/.got:
-- rm -rf deps/.got
-- rm -rf deps/.built
-- mkdir -p deps
-- $(REBAR) get-deps && :> deps/.got
--
--deps/.built: deps/.got
-- $(REBAR) compile && :> deps/.built
--
--src: deps/.built
-+src:
- $(REBAR) skip_deps=true compile
-
--update:
-- rm -rf deps/.got
-- rm -rf deps/.built
-- $(REBAR) update-deps && :> deps/.got
--
- xref: all
- $(REBAR) skip_deps=true xref
diff --git a/package/ejabberd/0007-fix-ejabberdctl.patch b/package/ejabberd/0002-fix-ejabberdctl.patch
index 090fcc52d2..090fcc52d2 100644
--- a/package/ejabberd/0007-fix-ejabberdctl.patch
+++ b/package/ejabberd/0002-fix-ejabberdctl.patch
diff --git a/package/ejabberd/0002-remove-dependencies-from-rebar-config.patch b/package/ejabberd/0002-remove-dependencies-from-rebar-config.patch
deleted file mode 100644
index 154c7bffd5..0000000000
--- a/package/ejabberd/0002-remove-dependencies-from-rebar-config.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-From 8674f61701da41cc53c532b5fa3a516838a2c5d4 Mon Sep 17 00:00:00 2001
-From: Johan Oudinet <johan.oudinet@gmail.com>
-Date: Wed, 10 Jan 2018 15:14:56 +0100
-Subject: [PATCH] remove dependencies from rebar config
-
-Without this patch, dependencies would be downloaded and compiled by
-rebar at build time.
-
-Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
----
- rebar.config | 72 ------------------------------------------------------------
- 1 file changed, 72 deletions(-)
-
-diff --git a/rebar.config b/rebar.config
-index d6ad5e7b..0b246b92 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -18,68 +18,6 @@
- %%%
- %%%----------------------------------------------------------------------
-
--{deps, [{lager, ".*", {git, "https://github.com/erlang-lager/lager",
-- {tag, {if_version_above, "17", "3.4.2", "3.2.1"}}}},
-- {p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}},
-- {cache_tab, ".*", {git, "https://github.com/processone/cache_tab", {tag, "1.0.12"}}},
-- {fast_tls, ".*", {git, "https://github.com/processone/fast_tls", {tag, "1.0.17"}}},
-- {stringprep, ".*", {git, "https://github.com/processone/stringprep", {tag, "1.0.10"}}},
-- {fast_xml, ".*", {git, "https://github.com/processone/fast_xml", {tag, "1.1.25"}}},
-- {xmpp, ".*", {git, "https://github.com/processone/xmpp", {tag, "1.1.16"}}},
-- {fast_yaml, ".*", {git, "https://github.com/processone/fast_yaml", {tag, "1.0.12"}}},
-- {jiffy, ".*", {git, "https://github.com/davisp/jiffy", {tag, "0.14.8"}}},
-- {p1_oauth2, ".*", {git, "https://github.com/processone/p1_oauth2", {tag, "0.6.2"}}},
-- {luerl, ".*", {git, "https://github.com/rvirding/luerl", {tag, "v0.2"}}},
-- {jose, ".*", {git, "git://github.com/potatosalad/erlang-jose.git", {tag, "1.8.4"}}},
-- {fs, ".*", {git, "https://github.com/synrc/fs.git", {tag, "2.12.0"}}},
-- {if_var_true, stun, {stun, ".*", {git, "https://github.com/processone/stun", {tag, "1.0.16"}}}},
-- {if_var_true, sip, {esip, ".*", {git, "https://github.com/processone/esip", {tag, "1.0.17"}}}},
-- {if_var_true, mysql, {p1_mysql, ".*", {git, "https://github.com/processone/p1_mysql",
-- {tag, "1.0.4"}}}},
-- {if_var_true, pgsql, {p1_pgsql, ".*", {git, "https://github.com/processone/p1_pgsql",
-- {tag, "1.1.4"}}}},
-- {if_var_true, sqlite, {sqlite3, ".*", {git, "https://github.com/processone/erlang-sqlite3",
-- {tag, "1.1.5"}}}},
-- {if_var_true, pam, {epam, ".*", {git, "https://github.com/processone/epam",
-- {tag, "1.0.3"}}}},
-- {if_var_true, zlib, {ezlib, ".*", {git, "https://github.com/processone/ezlib",
-- {tag, "1.0.3"}}}},
-- {if_var_true, riak, {riakc, ".*", {git, "https://github.com/processone/riak-erlang-client.git",
-- {tag, {if_version_above, "19", "develop", "2.5.3"}}}}},
-- {if_var_true, graphics, {eimp, ".*", {git, "https://github.com/processone/eimp.git", {tag, "1.0.2"}}}},
-- %% Elixir support, needed to run tests
-- {if_var_true, elixir, {elixir, ".*", {git, "https://github.com/elixir-lang/elixir",
-- {tag, {if_version_above, "17", "v1.4.4", "v1.1.1"}}}}},
-- %% TODO: When modules are fully migrated to new structure and mix, we will not need anymore rebar_elixir_plugin
-- {if_not_rebar3, {if_var_true, elixir, {rebar_elixir_plugin, ".*",
-- {git, "https://github.com/processone/rebar_elixir_plugin", "0.1.0"}}}},
-- {if_var_true, iconv, {iconv, ".*", {git, "https://github.com/processone/iconv",
-- {tag, "1.0.6"}}}},
-- {if_var_true, tools, {meck, "0.8.*", {git, "https://github.com/eproxus/meck",
-- {tag, "0.8.4"}}}},
-- {if_var_true, tools, {moka, ".*", {git, "https://github.com/processone/moka.git",
-- {tag, "1.0.5c"}}}},
-- {if_var_true, redis, {eredis, ".*", {git, "https://github.com/wooga/eredis",
-- {tag, "v1.0.8"}}}}]}.
--
--{if_var_true, latest_deps,
-- {floating_deps, [cache_tab,
-- fast_tls,
-- stringprep,
-- fast_xml,
-- esip,
-- stun,
-- fast_yaml,
-- xmpp,
-- p1_utils,
-- p1_mysql,
-- p1_pgsql,
-- p1_oauth2,
-- epam,
-- ezlib,
-- eimp,
-- iconv]}}.
--
- {erl_first_files, ["src/ejabberd_config.erl", "src/gen_mod.erl", "src/mod_muc_room.erl", "src/mod_push.erl"]}.
-
- {erl_opts, [nowarn_deprecated_function,
-@@ -153,16 +91,6 @@
- {if_version_above, "17", {cover_enabled, true}}.
- {cover_export_enabled, true}.
-
--{post_hook_configure, [{"fast_tls", []},
-- {"stringprep", []},
-- {"fast_yaml", []},
-- {if_var_true, sip, {"esip", []}},
-- {"fast_xml", [{if_var_true, full_xml, "--enable-full-xml"}]},
-- {if_var_true, pam, {"epam", []}},
-- {if_var_true, zlib, {"ezlib", []}},
-- {if_var_true, graphics, {"eimp", []}},
-- {if_var_true, iconv, {"iconv", []}}]}.
--
- {port_env, [{"CFLAGS", "-g -O2 -Wall"}]}.
-
- {port_specs, [{"priv/lib/jid.so", ["c_src/jid.c"]}]}.
---
-2.14.1
-
diff --git a/package/ejabberd/0003-remove-checking-erlang-version.patch b/package/ejabberd/0003-remove-checking-erlang-version.patch
deleted file mode 100644
index da3bf2a89e..0000000000
--- a/package/ejabberd/0003-remove-checking-erlang-version.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From f384518dedec4ad657ad69d55754076c13c22d96 Mon Sep 17 00:00:00 2001
-From: Johan Oudinet <johan.oudinet@gmail.com>
-Date: Wed, 20 Jan 2016 08:11:32 -0500
-Subject: [PATCH] remove checking erlang version
-
-Without this patch, the configure will try to run erlang to simply check
-if the version is supported by ejabberd. Instead, we do this test
-statically.
-
-Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
----
- configure.ac | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 97e89a2..cd1ab08 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -39,10 +39,8 @@ AC_ARG_ENABLE(erlang-version-check,
- [Check Erlang/OTP version @<:@default=yes@:>@])])
- case "$enable_erlang_version_check" in
- yes|'')
-- ERLANG_VERSION_CHECK([$REQUIRE_ERLANG_MIN],[$REQUIRE_ERLANG_MAX])
- ;;
- no)
-- ERLANG_VERSION_CHECK([$REQUIRE_ERLANG_MIN],[$REQUIRE_ERLANG_MAX],[warn])
- ;;
- esac
-
---
-2.5.0
-
diff --git a/package/ejabberd/0004-correct-includes.patch b/package/ejabberd/0004-correct-includes.patch
deleted file mode 100644
index f8f827a4eb..0000000000
--- a/package/ejabberd/0004-correct-includes.patch
+++ /dev/null
@@ -1,1919 +0,0 @@
-From 0487178693143955ff57e3c9371fb6e7b164294c Mon Sep 17 00:00:00 2001
-From: Johan Oudinet <johan.oudinet@gmail.com>
-Date: Thu, 11 Jan 2018 12:49:38 +0100
-Subject: [PATCH] correct includes
-
-Use include_lib() instead of include() for files from external
-libraries. See https://github.com/processone/ejabberd/pull/1446
-
-Note: Philipp Huebner has a similar patch in Debian's port of ejabberd
-but it was easier to redo this patch from scratch with the following sed
-command on ejabberd git repository than adapting Huebner's patch format:
-for f in src/*.erl include/*.hrl; do
- sed -i -e 's,esip/include,s1_sip/include,g' \
- -e 's,include("ns.hrl,include_lib("p1_xmpp/include/ns.hrl,g' \
- -e 's,include("fxml.hrl,include_lib("p1_xml/include/fxml.hrl,g' \
- -e 's,include("xmpp\.hrl,include_lib("p1_xmpp/include/xmpp.hrl,g' \
- -e 's,include("jid\.hrl,include_lib("p1_xmpp/include/jid.hrl,g' \
- "$f"
-done
-
-Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
----
- include/jlib.hrl | 4 ++--
- src/acl.erl | 2 +-
- src/acme_challenge.erl | 2 +-
- src/ejabberd_acme.erl | 2 +-
- src/ejabberd_acme_comm.erl | 2 +-
- src/ejabberd_auth_anonymous.erl | 2 +-
- src/ejabberd_bosh.erl | 2 +-
- src/ejabberd_c2s.erl | 2 +-
- src/ejabberd_captcha.erl | 2 +-
- src/ejabberd_http.erl | 2 +-
- src/ejabberd_http_ws.erl | 2 +-
- src/ejabberd_iq.erl | 2 +-
- src/ejabberd_local.erl | 2 +-
- src/ejabberd_oauth.erl | 2 +-
- src/ejabberd_oauth_rest.erl | 2 +-
- src/ejabberd_oauth_sql.erl | 2 +-
- src/ejabberd_piefxis.erl | 2 +-
- src/ejabberd_router.erl | 2 +-
- src/ejabberd_router_multicast.erl | 2 +-
- src/ejabberd_s2s.erl | 2 +-
- src/ejabberd_s2s_in.erl | 2 +-
- src/ejabberd_s2s_out.erl | 2 +-
- src/ejabberd_service.erl | 2 +-
- src/ejabberd_sm.erl | 2 +-
- src/ejabberd_socket.erl | 2 +-
- src/ejabberd_system_monitor.erl | 2 +-
- src/ejabberd_web.erl | 2 +-
- src/ejabberd_web_admin.erl | 2 +-
- src/ejabberd_websocket.erl | 2 +-
- src/ejabberd_xmlrpc.erl | 2 +-
- src/gen_iq_handler.erl | 2 +-
- src/gen_pubsub_node.erl | 2 +-
- src/gen_pubsub_nodetree.erl | 2 +-
- src/jd2ejd.erl | 2 +-
- src/mod_adhoc.erl | 2 +-
- src/mod_admin_extra.erl | 2 +-
- src/mod_admin_update_sql.erl | 2 +-
- src/mod_announce.erl | 2 +-
- src/mod_announce_mnesia.erl | 2 +-
- src/mod_announce_riak.erl | 2 +-
- src/mod_announce_sql.erl | 2 +-
- src/mod_avatar.erl | 2 +-
- src/mod_block_strangers.erl | 2 +-
- src/mod_blocking.erl | 2 +-
- src/mod_bosh.erl | 2 +-
- src/mod_caps.erl | 2 +-
- src/mod_carboncopy.erl | 2 +-
- src/mod_client_state.erl | 2 +-
- src/mod_configure.erl | 2 +-
- src/mod_delegation.erl | 2 +-
- src/mod_disco.erl | 2 +-
- src/mod_echo.erl | 2 +-
- src/mod_fail2ban.erl | 2 +-
- src/mod_http_api.erl | 2 +-
- src/mod_http_upload.erl | 2 +-
- src/mod_http_upload_quota.erl | 2 +-
- src/mod_irc.erl | 2 +-
- src/mod_irc_connection.erl | 2 +-
- src/mod_irc_mnesia.erl | 2 +-
- src/mod_irc_riak.erl | 2 +-
- src/mod_irc_sql.erl | 2 +-
- src/mod_last.erl | 2 +-
- src/mod_legacy_auth.erl | 2 +-
- src/mod_mam.erl | 2 +-
- src/mod_mam_mnesia.erl | 2 +-
- src/mod_mam_sql.erl | 2 +-
- src/mod_metrics.erl | 2 +-
- src/mod_mix.erl | 2 +-
- src/mod_muc.erl | 2 +-
- src/mod_muc_admin.erl | 2 +-
- src/mod_muc_log.erl | 2 +-
- src/mod_muc_mnesia.erl | 2 +-
- src/mod_muc_riak.erl | 2 +-
- src/mod_muc_room.erl | 2 +-
- src/mod_muc_sql.erl | 2 +-
- src/mod_multicast.erl | 2 +-
- src/mod_offline.erl | 2 +-
- src/mod_offline_mnesia.erl | 2 +-
- src/mod_offline_riak.erl | 2 +-
- src/mod_offline_sql.erl | 2 +-
- src/mod_ping.erl | 2 +-
- src/mod_pres_counter.erl | 2 +-
- src/mod_privacy.erl | 2 +-
- src/mod_privacy_mnesia.erl | 2 +-
- src/mod_privacy_riak.erl | 2 +-
- src/mod_privacy_sql.erl | 2 +-
- src/mod_private.erl | 2 +-
- src/mod_private_mnesia.erl | 2 +-
- src/mod_private_riak.erl | 2 +-
- src/mod_private_sql.erl | 2 +-
- src/mod_privilege.erl | 2 +-
- src/mod_proxy65_service.erl | 2 +-
- src/mod_pubsub.erl | 2 +-
- src/mod_push.erl | 2 +-
- src/mod_push_keepalive.erl | 2 +-
- src/mod_push_mnesia.erl | 2 +-
- src/mod_push_sql.erl | 2 +-
- src/mod_register.erl | 2 +-
- src/mod_register_web.erl | 2 +-
- src/mod_roster.erl | 2 +-
- src/mod_s2s_dialback.erl | 2 +-
- src/mod_service_log.erl | 2 +-
- src/mod_shared_roster.erl | 2 +-
- src/mod_shared_roster_ldap.erl | 2 +-
- src/mod_shared_roster_mnesia.erl | 2 +-
- src/mod_shared_roster_riak.erl | 2 +-
- src/mod_shared_roster_sql.erl | 2 +-
- src/mod_sic.erl | 2 +-
- src/mod_sip.erl | 2 +-
- src/mod_sip_proxy.erl | 2 +-
- src/mod_sip_registrar.erl | 2 +-
- src/mod_stats.erl | 2 +-
- src/mod_stream_mgmt.erl | 2 +-
- src/mod_time.erl | 2 +-
- src/mod_vcard.erl | 2 +-
- src/mod_vcard_ldap.erl | 2 +-
- src/mod_vcard_mnesia.erl | 2 +-
- src/mod_vcard_riak.erl | 2 +-
- src/mod_vcard_sql.erl | 2 +-
- src/mod_vcard_xupdate.erl | 2 +-
- src/mod_version.erl | 2 +-
- src/node_dag.erl | 2 +-
- src/node_dispatch.erl | 2 +-
- src/node_flat.erl | 2 +-
- src/node_flat_sql.erl | 2 +-
- src/node_online.erl | 2 +-
- src/nodetree_dag.erl | 2 +-
- src/nodetree_tree.erl | 2 +-
- src/nodetree_tree_sql.erl | 2 +-
- src/prosody2ejabberd.erl | 2 +-
- src/pubsub_subscription.erl | 2 +-
- src/pubsub_subscription_sql.erl | 2 +-
- src/xmpp_stream_in.erl | 2 +-
- src/xmpp_stream_out.erl | 2 +-
- src/xmpp_stream_pkix.erl | 2 +-
- 135 files changed, 136 insertions(+), 136 deletions(-)
-
-diff --git a/include/jlib.hrl b/include/jlib.hrl
-index cd5fedbf..293fcc0e 100644
---- a/include/jlib.hrl
-+++ b/include/jlib.hrl
-@@ -18,8 +18,8 @@
- %%%
- %%%----------------------------------------------------------------------
-
---include("ns.hrl").
---include("fxml.hrl").
-+-include_lib("p1_xmpp/include/ns.hrl").
-+-include_lib("p1_xml/include/fxml.hrl").
-
- -define(STANZA_ERROR(Code, Type, Condition),
- #xmlel{name = <<"error">>,
-diff --git a/src/acl.erl b/src/acl.erl
-index 2d848b99..88df4625 100644
---- a/src/acl.erl
-+++ b/src/acl.erl
-@@ -45,7 +45,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
-
- -record(acl, {aclname, aclspec}).
- -record(access, {name :: aclname(),
-diff --git a/src/acme_challenge.erl b/src/acme_challenge.erl
-index f4fde4e7..45fc6d8f 100644
---- a/src/acme_challenge.erl
-+++ b/src/acme_challenge.erl
-@@ -16,7 +16,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("ejabberd_http.hrl").
- -include("ejabberd_acme.hrl").
-
-diff --git a/src/ejabberd_acme.erl b/src/ejabberd_acme.erl
-index a5166b45..eee74092 100644
---- a/src/ejabberd_acme.erl
-+++ b/src/ejabberd_acme.erl
-@@ -21,7 +21,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("ejabberd_commands.hrl").
- -include("ejabberd_acme.hrl").
- -include_lib("public_key/include/public_key.hrl").
-diff --git a/src/ejabberd_acme_comm.erl b/src/ejabberd_acme_comm.erl
-index a5668d08..02acd1c4 100644
---- a/src/ejabberd_acme_comm.erl
-+++ b/src/ejabberd_acme_comm.erl
-@@ -24,7 +24,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_acme.hrl").
- -include_lib("public_key/include/public_key.hrl").
-diff --git a/src/ejabberd_auth_anonymous.erl b/src/ejabberd_auth_anonymous.erl
-index a4f3ac1c..697b3e08 100644
---- a/src/ejabberd_auth_anonymous.erl
-+++ b/src/ejabberd_auth_anonymous.erl
-@@ -46,7 +46,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
-
- start(Host) ->
- ejabberd_hooks:add(sm_register_connection_hook, Host,
-diff --git a/src/ejabberd_bosh.erl b/src/ejabberd_bosh.erl
-index 1df6681f..e8cc5f9b 100644
---- a/src/ejabberd_bosh.erl
-+++ b/src/ejabberd_bosh.erl
-@@ -47,7 +47,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_http.hrl").
-
-diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl
-index a94d065f..a56d9041 100644
---- a/src/ejabberd_c2s.erl
-+++ b/src/ejabberd_c2s.erl
-@@ -52,7 +52,7 @@
- host_up/1, host_down/1]).
-
- -include("ejabberd.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
- -include("mod_roster.hrl").
-
-diff --git a/src/ejabberd_captcha.erl b/src/ejabberd_captcha.erl
-index 76af5278..3a950786 100644
---- a/src/ejabberd_captcha.erl
-+++ b/src/ejabberd_captcha.erl
-@@ -43,7 +43,7 @@
- is_feature_available/0, create_captcha_x/5,
- opt_type/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("ejabberd.hrl").
- -include("logger.hrl").
- -include("ejabberd_http.hrl").
-diff --git a/src/ejabberd_http.erl b/src/ejabberd_http.erl
-index 0bc0d8fc..d39a585d 100644
---- a/src/ejabberd_http.erl
-+++ b/src/ejabberd_http.erl
-@@ -39,7 +39,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_http.hrl").
-
-diff --git a/src/ejabberd_http_ws.erl b/src/ejabberd_http_ws.erl
-index f9f7b07e..5c0e6ea1 100644
---- a/src/ejabberd_http_ws.erl
-+++ b/src/ejabberd_http_ws.erl
-@@ -39,7 +39,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_http.hrl").
-
-diff --git a/src/ejabberd_iq.erl b/src/ejabberd_iq.erl
-index 7d2751dc..76a6b056 100644
---- a/src/ejabberd_iq.erl
-+++ b/src/ejabberd_iq.erl
-@@ -34,7 +34,7 @@
- -export([init/1, handle_call/3, handle_cast/2, handle_info/2,
- terminate/2, code_change/3]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
-
- -record(state, {expire = infinity :: timeout()}).
-diff --git a/src/ejabberd_local.erl b/src/ejabberd_local.erl
-index cc1d6a2e..f72fd43b 100644
---- a/src/ejabberd_local.erl
-+++ b/src/ejabberd_local.erl
-@@ -50,7 +50,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
- -include_lib("stdlib/include/ms_transform.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -record(state, {}).
-
-diff --git a/src/ejabberd_oauth.erl b/src/ejabberd_oauth.erl
-index df4e4bc2..34bf24f8 100644
---- a/src/ejabberd_oauth.erl
-+++ b/src/ejabberd_oauth.erl
-@@ -52,7 +52,7 @@
-
- -export([oauth_issue_token/3, oauth_list_tokens/0, oauth_revoke_token/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
-diff --git a/src/ejabberd_oauth_rest.erl b/src/ejabberd_oauth_rest.erl
-index 206fab43..1a7287ee 100644
---- a/src/ejabberd_oauth_rest.erl
-+++ b/src/ejabberd_oauth_rest.erl
-@@ -37,7 +37,7 @@
- -include("ejabberd.hrl").
- -include("ejabberd_oauth.hrl").
- -include("logger.hrl").
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
-
- init() ->
- rest:start(?MYNAME),
-diff --git a/src/ejabberd_oauth_sql.erl b/src/ejabberd_oauth_sql.erl
-index 14eaca6a..fcd105ba 100644
---- a/src/ejabberd_oauth_sql.erl
-+++ b/src/ejabberd_oauth_sql.erl
-@@ -36,7 +36,7 @@
- -include("ejabberd_oauth.hrl").
- -include("ejabberd.hrl").
- -include("ejabberd_sql_pt.hrl").
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
- -include("logger.hrl").
-
- init() ->
-diff --git a/src/ejabberd_piefxis.erl b/src/ejabberd_piefxis.erl
-index ecb4908a..7331f442 100644
---- a/src/ejabberd_piefxis.erl
-+++ b/src/ejabberd_piefxis.erl
-@@ -42,7 +42,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_privacy.hrl").
- -include("mod_roster.hrl").
-
-diff --git a/src/ejabberd_router.erl b/src/ejabberd_router.erl
-index e2901483..315505ec 100644
---- a/src/ejabberd_router.erl
-+++ b/src/ejabberd_router.erl
-@@ -71,7 +71,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
- -include("ejabberd_router.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -callback init() -> any().
- -callback register_route(binary(), binary(), local_hint(),
-diff --git a/src/ejabberd_router_multicast.erl b/src/ejabberd_router_multicast.erl
-index 5d5acfca..3f206ef2 100644
---- a/src/ejabberd_router_multicast.erl
-+++ b/src/ejabberd_router_multicast.erl
-@@ -43,7 +43,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -record(route_multicast, {domain = <<"">> :: binary() | '_',
- pid = self() :: pid()}).
-diff --git a/src/ejabberd_s2s.erl b/src/ejabberd_s2s.erl
-index 0626d62f..e2fc34c9 100644
---- a/src/ejabberd_s2s.erl
-+++ b/src/ejabberd_s2s.erl
-@@ -57,7 +57,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_commands.hrl").
-
-diff --git a/src/ejabberd_s2s_in.erl b/src/ejabberd_s2s_in.erl
-index a949e83d..3d8e100e 100644
---- a/src/ejabberd_s2s_in.erl
-+++ b/src/ejabberd_s2s_in.erl
-@@ -45,7 +45,7 @@
- host_up/1, host_down/1]).
-
- -include("ejabberd.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
-
- -type state() :: map().
-diff --git a/src/ejabberd_s2s_out.erl b/src/ejabberd_s2s_out.erl
-index fea5d816..c035731f 100644
---- a/src/ejabberd_s2s_out.erl
-+++ b/src/ejabberd_s2s_out.erl
-@@ -43,7 +43,7 @@
- route/2, establish/1, update_state/2, host_up/1, host_down/1]).
-
- -include("ejabberd.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
-
- -type state() :: map().
-diff --git a/src/ejabberd_service.erl b/src/ejabberd_service.erl
-index 7b5f945d..895fed09 100644
---- a/src/ejabberd_service.erl
-+++ b/src/ejabberd_service.erl
-@@ -37,7 +37,7 @@
- -export([send/2]).
-
- -include("ejabberd.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
-
- -type state() :: map().
-diff --git a/src/ejabberd_sm.erl b/src/ejabberd_sm.erl
-index 3df1d88e..e8087c48 100644
---- a/src/ejabberd_sm.erl
-+++ b/src/ejabberd_sm.erl
-@@ -89,7 +89,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_commands.hrl").
- -include("ejabberd_sm.hrl").
-diff --git a/src/ejabberd_socket.erl b/src/ejabberd_socket.erl
-index 9953a76a..0dd1c4ff 100644
---- a/src/ejabberd_socket.erl
-+++ b/src/ejabberd_socket.erl
-@@ -52,7 +52,7 @@
- sockname/1, peername/1]).
-
- -include("ejabberd.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
-
- -type sockmod() :: ejabberd_bosh |
-diff --git a/src/ejabberd_system_monitor.erl b/src/ejabberd_system_monitor.erl
-index 773104f9..46e641b7 100644
---- a/src/ejabberd_system_monitor.erl
-+++ b/src/ejabberd_system_monitor.erl
-@@ -41,7 +41,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -record(state, {}).
-
-diff --git a/src/ejabberd_web.erl b/src/ejabberd_web.erl
-index 7a40d2c7..aa1abc9b 100644
---- a/src/ejabberd_web.erl
-+++ b/src/ejabberd_web.erl
-@@ -34,7 +34,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_http.hrl").
-
-diff --git a/src/ejabberd_web_admin.erl b/src/ejabberd_web_admin.erl
-index b3d72c19..cdd951b6 100644
---- a/src/ejabberd_web_admin.erl
-+++ b/src/ejabberd_web_admin.erl
-@@ -38,7 +38,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_http.hrl").
-
-diff --git a/src/ejabberd_websocket.erl b/src/ejabberd_websocket.erl
-index 9926c20c..fabf2293 100644
---- a/src/ejabberd_websocket.erl
-+++ b/src/ejabberd_websocket.erl
-@@ -47,7 +47,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_http.hrl").
-
-diff --git a/src/ejabberd_xmlrpc.erl b/src/ejabberd_xmlrpc.erl
-index 213aef7a..f5b51894 100644
---- a/src/ejabberd_xmlrpc.erl
-+++ b/src/ejabberd_xmlrpc.erl
-@@ -42,7 +42,7 @@
- -include("ejabberd_http.hrl").
- -include("mod_roster.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -record(state,
- {access_commands = [] :: list(),
-diff --git a/src/gen_iq_handler.erl b/src/gen_iq_handler.erl
-index d34db358..ab04a252 100644
---- a/src/gen_iq_handler.erl
-+++ b/src/gen_iq_handler.erl
-@@ -45,7 +45,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -record(state, {host, module, function}).
-
-diff --git a/src/gen_pubsub_node.erl b/src/gen_pubsub_node.erl
-index 4f516bd5..83de80a8 100644
---- a/src/gen_pubsub_node.erl
-+++ b/src/gen_pubsub_node.erl
-@@ -25,7 +25,7 @@
-
- -module(gen_pubsub_node).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -type(host() :: mod_pubsub:host()).
- -type(nodeId() :: mod_pubsub:nodeId()).
-diff --git a/src/gen_pubsub_nodetree.erl b/src/gen_pubsub_nodetree.erl
-index bf7140aa..4267b9a1 100644
---- a/src/gen_pubsub_nodetree.erl
-+++ b/src/gen_pubsub_nodetree.erl
-@@ -36,7 +36,7 @@
- ServerHost :: binary(),
- Opts :: [any()]) -> atom().
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -callback terminate(Host :: host(), ServerHost :: binary()) -> atom().
-
-diff --git a/src/jd2ejd.erl b/src/jd2ejd.erl
-index ae293698..bbe9bc6d 100644
---- a/src/jd2ejd.erl
-+++ b/src/jd2ejd.erl
-@@ -32,7 +32,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- %%%----------------------------------------------------------------------
- %%% API
-diff --git a/src/mod_adhoc.erl b/src/mod_adhoc.erl
-index e6df3904..0f3ada11 100644
---- a/src/mod_adhoc.erl
-+++ b/src/mod_adhoc.erl
-@@ -39,7 +39,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- start(Host, Opts) ->
- IQDisc = gen_mod:get_opt(iqdisc, Opts, gen_iq_handler:iqdisc(Host)),
-diff --git a/src/mod_admin_extra.erl b/src/mod_admin_extra.erl
-index 799f0079..9fd8531b 100644
---- a/src/mod_admin_extra.erl
-+++ b/src/mod_admin_extra.erl
-@@ -84,7 +84,7 @@
- -include("mod_roster.hrl").
- -include("mod_privacy.hrl").
- -include("ejabberd_sm.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- %%%
- %%% gen_mod
-diff --git a/src/mod_admin_update_sql.erl b/src/mod_admin_update_sql.erl
-index 2f105d97..cace1b94 100644
---- a/src/mod_admin_update_sql.erl
-+++ b/src/mod_admin_update_sql.erl
-@@ -38,7 +38,7 @@
- -include("logger.hrl").
- -include("ejabberd.hrl").
- -include("ejabberd_commands.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("ejabberd_sql_pt.hrl").
-
- %%%
-diff --git a/src/mod_announce.erl b/src/mod_announce.erl
-index b259aced..146b6a35 100644
---- a/src/mod_announce.erl
-+++ b/src/mod_announce.erl
-@@ -52,7 +52,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_announce.hrl").
-
- -callback init(binary(), gen_mod:opts()) -> any().
-diff --git a/src/mod_announce_mnesia.erl b/src/mod_announce_mnesia.erl
-index f2e5c1c4..cecd68cc 100644
---- a/src/mod_announce_mnesia.erl
-+++ b/src/mod_announce_mnesia.erl
-@@ -31,7 +31,7 @@
- get_motd/1, is_motd_user/2, set_motd_user/2, import/3]).
- -export([need_transform/1, transform/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_announce.hrl").
- -include("logger.hrl").
-
-diff --git a/src/mod_announce_riak.erl b/src/mod_announce_riak.erl
-index 04a29a68..a3dac3e9 100644
---- a/src/mod_announce_riak.erl
-+++ b/src/mod_announce_riak.erl
-@@ -30,7 +30,7 @@
- -export([init/2, set_motd_users/2, set_motd/2, delete_motd/1,
- get_motd/1, is_motd_user/2, set_motd_user/2, import/3]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_announce.hrl").
-
- %%%===================================================================
-diff --git a/src/mod_announce_sql.erl b/src/mod_announce_sql.erl
-index c5c9eb58..b243d05d 100644
---- a/src/mod_announce_sql.erl
-+++ b/src/mod_announce_sql.erl
-@@ -33,7 +33,7 @@
- get_motd/1, is_motd_user/2, set_motd_user/2, import/3,
- export/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_announce.hrl").
- -include("ejabberd_sql_pt.hrl").
- -include("logger.hrl").
-diff --git a/src/mod_avatar.erl b/src/mod_avatar.erl
-index dde58abf..ffc31c94 100644
---- a/src/mod_avatar.erl
-+++ b/src/mod_avatar.erl
-@@ -28,7 +28,7 @@
- %% Hooks
- -export([pubsub_publish_item/6, vcard_iq_convert/1, vcard_iq_publish/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
- -include("pubsub.hrl").
-
-diff --git a/src/mod_block_strangers.erl b/src/mod_block_strangers.erl
-index b2c56f36..429c0ab2 100644
---- a/src/mod_block_strangers.erl
-+++ b/src/mod_block_strangers.erl
-@@ -34,7 +34,7 @@
-
- -export([filter_packet/1, filter_offline_msg/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
-diff --git a/src/mod_blocking.erl b/src/mod_blocking.erl
-index 738c5e16..479b34ea 100644
---- a/src/mod_blocking.erl
-+++ b/src/mod_blocking.erl
-@@ -35,7 +35,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("mod_privacy.hrl").
-
-diff --git a/src/mod_bosh.erl b/src/mod_bosh.erl
-index 6ee58047..e49ab960 100644
---- a/src/mod_bosh.erl
-+++ b/src/mod_bosh.erl
-@@ -41,7 +41,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
- -include_lib("stdlib/include/ms_transform.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("ejabberd_http.hrl").
- -include("bosh.hrl").
-
-diff --git a/src/mod_caps.erl b/src/mod_caps.erl
-index edc93bbf..6ead4230 100644
---- a/src/mod_caps.erl
-+++ b/src/mod_caps.erl
-@@ -53,7 +53,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_caps.hrl").
-
- -define(BAD_HASH_LIFETIME, 600).
-diff --git a/src/mod_carboncopy.erl b/src/mod_carboncopy.erl
-index 307d6154..c3a998d8 100644
---- a/src/mod_carboncopy.erl
-+++ b/src/mod_carboncopy.erl
-@@ -40,7 +40,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_carboncopy.hrl").
-
- -type direction() :: sent | received.
-diff --git a/src/mod_client_state.erl b/src/mod_client_state.erl
-index f7adb1c6..09507b73 100644
---- a/src/mod_client_state.erl
-+++ b/src/mod_client_state.erl
-@@ -42,7 +42,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(CSI_QUEUE_MAX, 100).
-
-diff --git a/src/mod_configure.erl b/src/mod_configure.erl
-index 31f7a9c8..6ea5bd37 100644
---- a/src/mod_configure.erl
-+++ b/src/mod_configure.erl
-@@ -40,7 +40,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("ejabberd_sm.hrl").
- -include_lib("stdlib/include/ms_transform.hrl").
-
-diff --git a/src/mod_delegation.erl b/src/mod_delegation.erl
-index 27e00768..c93912d6 100644
---- a/src/mod_delegation.erl
-+++ b/src/mod_delegation.erl
-@@ -42,7 +42,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -type disco_acc() :: {error, stanza_error()} | {result, [binary()]} | empty.
- -record(state, {server_host = <<"">> :: binary(),
-diff --git a/src/mod_disco.erl b/src/mod_disco.erl
-index 76be408f..5bea1fb7 100644
---- a/src/mod_disco.erl
-+++ b/src/mod_disco.erl
-@@ -42,7 +42,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include_lib("stdlib/include/ms_transform.hrl").
- -include("mod_roster.hrl").
-
-diff --git a/src/mod_echo.erl b/src/mod_echo.erl
-index 79dd5996..38199d3c 100644
---- a/src/mod_echo.erl
-+++ b/src/mod_echo.erl
-@@ -41,7 +41,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -record(state, {hosts = [] :: [binary()]}).
-
-diff --git a/src/mod_fail2ban.erl b/src/mod_fail2ban.erl
-index 5e931853..01bdfe2f 100644
---- a/src/mod_fail2ban.erl
-+++ b/src/mod_fail2ban.erl
-@@ -39,7 +39,7 @@
- -include_lib("stdlib/include/ms_transform.hrl").
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(C2S_AUTH_BAN_LIFETIME, 3600). %% 1 hour
- -define(C2S_MAX_AUTH_FAILURES, 20).
-diff --git a/src/mod_http_api.erl b/src/mod_http_api.erl
-index ef881d14..f7cd10bf 100644
---- a/src/mod_http_api.erl
-+++ b/src/mod_http_api.erl
-@@ -77,7 +77,7 @@
- -export([start/2, stop/1, reload/3, process/2, mod_opt_type/1, depends/2]).
-
- -include("ejabberd.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
- -include("ejabberd_http.hrl").
-
-diff --git a/src/mod_http_upload.erl b/src/mod_http_upload.erl
-index c3c295f6..d3bd4e84 100644
---- a/src/mod_http_upload.erl
-+++ b/src/mod_http_upload.erl
-@@ -89,7 +89,7 @@
-
- -include("ejabberd.hrl").
- -include("ejabberd_http.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
-
- -record(state,
-diff --git a/src/mod_http_upload_quota.erl b/src/mod_http_upload_quota.erl
-index 10243ac0..cda5c563 100644
---- a/src/mod_http_upload_quota.erl
-+++ b/src/mod_http_upload_quota.erl
-@@ -50,7 +50,7 @@
- %% ejabberd_hooks callback.
- -export([handle_slot_request/5]).
-
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
- -include("logger.hrl").
- -include_lib("kernel/include/file.hrl").
-
-diff --git a/src/mod_irc.erl b/src/mod_irc.erl
-index 92093507..9b9becc8 100644
---- a/src/mod_irc.erl
-+++ b/src/mod_irc.erl
-@@ -43,7 +43,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_irc.hrl").
-
- -define(DEFAULT_IRC_ENCODING, <<"iso8859-15">>).
-diff --git a/src/mod_irc_connection.erl b/src/mod_irc_connection.erl
-index 59336591..ca81358f 100644
---- a/src/mod_irc_connection.erl
-+++ b/src/mod_irc_connection.erl
-@@ -41,7 +41,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(SETS, gb_sets).
-
-diff --git a/src/mod_irc_mnesia.erl b/src/mod_irc_mnesia.erl
-index eb982e1f..510ce09d 100644
---- a/src/mod_irc_mnesia.erl
-+++ b/src/mod_irc_mnesia.erl
-@@ -30,7 +30,7 @@
- -export([init/2, get_data/3, set_data/4, import/2]).
- -export([need_transform/1, transform/1]).
-
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
- -include("mod_irc.hrl").
- -include("logger.hrl").
-
-diff --git a/src/mod_irc_riak.erl b/src/mod_irc_riak.erl
-index 23f2a2c3..d236bfa7 100644
---- a/src/mod_irc_riak.erl
-+++ b/src/mod_irc_riak.erl
-@@ -29,7 +29,7 @@
- %% API
- -export([init/2, get_data/3, set_data/4, import/2]).
-
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
- -include("mod_irc.hrl").
-
- %%%===================================================================
-diff --git a/src/mod_irc_sql.erl b/src/mod_irc_sql.erl
-index 1f8d7d16..5f784fdc 100644
---- a/src/mod_irc_sql.erl
-+++ b/src/mod_irc_sql.erl
-@@ -31,7 +31,7 @@
- %% API
- -export([init/2, get_data/3, set_data/4, import/1, import/2, export/1]).
-
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
- -include("mod_irc.hrl").
- -include("ejabberd_sql_pt.hrl").
-
-diff --git a/src/mod_last.erl b/src/mod_last.erl
-index e97ef43f..34498e26 100644
---- a/src/mod_last.erl
-+++ b/src/mod_last.erl
-@@ -40,7 +40,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("mod_privacy.hrl").
- -include("mod_last.hrl").
-diff --git a/src/mod_legacy_auth.erl b/src/mod_legacy_auth.erl
-index 722a0573..c6644386 100644
---- a/src/mod_legacy_auth.erl
-+++ b/src/mod_legacy_auth.erl
-@@ -29,7 +29,7 @@
- %% hooks
- -export([c2s_unauthenticated_packet/2, c2s_stream_features/2]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -type c2s_state() :: ejabberd_c2s:state().
-
-diff --git a/src/mod_mam.erl b/src/mod_mam.erl
-index eb839ea1..abc461db 100644
---- a/src/mod_mam.erl
-+++ b/src/mod_mam.erl
-@@ -41,7 +41,7 @@
- delete_old_messages/2, get_commands_spec/0, msg_to_el/4,
- get_room_config/4, set_room_option/3, offline_message/1, export/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
- -include("mod_muc_room.hrl").
- -include("ejabberd_commands.hrl").
-diff --git a/src/mod_mam_mnesia.erl b/src/mod_mam_mnesia.erl
-index 71f1f701..a3a7eb5f 100644
---- a/src/mod_mam_mnesia.erl
-+++ b/src/mod_mam_mnesia.erl
-@@ -31,7 +31,7 @@
- extended_fields/0, store/8, write_prefs/4, get_prefs/2, select/6]).
-
- -include_lib("stdlib/include/ms_transform.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
- -include("mod_mam.hrl").
-
-diff --git a/src/mod_mam_sql.erl b/src/mod_mam_sql.erl
-index 40aa9836..b4fab39b 100644
---- a/src/mod_mam_sql.erl
-+++ b/src/mod_mam_sql.erl
-@@ -33,7 +33,7 @@
- extended_fields/0, store/8, write_prefs/4, get_prefs/2, select/6, export/1]).
-
- -include_lib("stdlib/include/ms_transform.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_mam.hrl").
- -include("logger.hrl").
- -include("ejabberd_sql_pt.hrl").
-diff --git a/src/mod_metrics.erl b/src/mod_metrics.erl
-index 73a68a8d..1b0d2e1b 100644
---- a/src/mod_metrics.erl
-+++ b/src/mod_metrics.erl
-@@ -30,7 +30,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -export([start/2, stop/1, mod_opt_type/1, depends/2, reload/3]).
-
-diff --git a/src/mod_mix.erl b/src/mod_mix.erl
-index 90507665..627363f3 100644
---- a/src/mod_mix.erl
-+++ b/src/mod_mix.erl
-@@ -37,7 +37,7 @@
- terminate/2, code_change/3]).
-
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(NODES, [?NS_MIX_NODES_MESSAGES,
- ?NS_MIX_NODES_PRESENCE,
-diff --git a/src/mod_muc.erl b/src/mod_muc.erl
-index f7d5303f..f01cde16 100644
---- a/src/mod_muc.erl
-+++ b/src/mod_muc.erl
-@@ -73,7 +73,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_muc.hrl").
-
- -record(state,
-diff --git a/src/mod_muc_admin.erl b/src/mod_muc_admin.erl
-index e41f62b5..4d18d068 100644
---- a/src/mod_muc_admin.erl
-+++ b/src/mod_muc_admin.erl
-@@ -43,7 +43,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_muc.hrl").
- -include("mod_muc_room.hrl").
- -include("ejabberd_http.hrl").
-diff --git a/src/mod_muc_log.erl b/src/mod_muc_log.erl
-index f2685aaa..abb55c42 100644
---- a/src/mod_muc_log.erl
-+++ b/src/mod_muc_log.erl
-@@ -44,7 +44,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_muc_room.hrl").
-
- -define(T(Text), translate:translate(Lang, Text)).
-diff --git a/src/mod_muc_mnesia.erl b/src/mod_muc_mnesia.erl
-index aa59038c..7334aca4 100644
---- a/src/mod_muc_mnesia.erl
-+++ b/src/mod_muc_mnesia.erl
-@@ -44,7 +44,7 @@
-
- -include("mod_muc.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include_lib("stdlib/include/ms_transform.hrl").
-
- -record(state, {}).
-diff --git a/src/mod_muc_riak.erl b/src/mod_muc_riak.erl
-index 57d9666b..4ebd2949 100644
---- a/src/mod_muc_riak.erl
-+++ b/src/mod_muc_riak.erl
-@@ -38,7 +38,7 @@
- -export([set_affiliation/6, set_affiliations/4, get_affiliation/5,
- get_affiliations/3, search_affiliation/4]).
-
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
- -include("mod_muc.hrl").
-
- %%%===================================================================
-diff --git a/src/mod_muc_room.erl b/src/mod_muc_room.erl
-index bafa938d..d8b5e288 100644
---- a/src/mod_muc_room.erl
-+++ b/src/mod_muc_room.erl
-@@ -51,7 +51,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("mod_muc_room.hrl").
-
-diff --git a/src/mod_muc_sql.erl b/src/mod_muc_sql.erl
-index 8aa6071c..71d79b02 100644
---- a/src/mod_muc_sql.erl
-+++ b/src/mod_muc_sql.erl
-@@ -41,7 +41,7 @@
- -export([set_affiliation/6, set_affiliations/4, get_affiliation/5,
- get_affiliations/3, search_affiliation/4]).
-
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
- -include("mod_muc.hrl").
- -include("logger.hrl").
- -include("ejabberd_sql_pt.hrl").
-diff --git a/src/mod_multicast.erl b/src/mod_multicast.erl
-index 7b772521..7c1cab3b 100644
---- a/src/mod_multicast.erl
-+++ b/src/mod_multicast.erl
-@@ -45,7 +45,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -record(state,
- {lserver, lservice, access, service_limits}).
-diff --git a/src/mod_offline.erl b/src/mod_offline.erl
-index 5b95fe4b..8146ffdc 100644
---- a/src/mod_offline.erl
-+++ b/src/mod_offline.erl
-@@ -70,7 +70,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_http.hrl").
-
-diff --git a/src/mod_offline_mnesia.erl b/src/mod_offline_mnesia.erl
-index a725ab00..126fd1bb 100644
---- a/src/mod_offline_mnesia.erl
-+++ b/src/mod_offline_mnesia.erl
-@@ -32,7 +32,7 @@
- remove_all_messages/2, count_messages/2, import/1]).
- -export([need_transform/1, transform/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_offline.hrl").
- -include("logger.hrl").
-
-diff --git a/src/mod_offline_riak.erl b/src/mod_offline_riak.erl
-index 5d0fd1af..607a78ba 100644
---- a/src/mod_offline_riak.erl
-+++ b/src/mod_offline_riak.erl
-@@ -31,7 +31,7 @@
- read_message/3, remove_message/3, read_all_messages/2,
- remove_all_messages/2, count_messages/2, import/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_offline.hrl").
-
- %%%===================================================================
-diff --git a/src/mod_offline_sql.erl b/src/mod_offline_sql.erl
-index 53a0d345..50fa83bc 100644
---- a/src/mod_offline_sql.erl
-+++ b/src/mod_offline_sql.erl
-@@ -33,7 +33,7 @@
- read_message/3, remove_message/3, read_all_messages/2,
- remove_all_messages/2, count_messages/2, import/1, export/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_offline.hrl").
- -include("logger.hrl").
- -include("ejabberd_sql_pt.hrl").
-diff --git a/src/mod_ping.erl b/src/mod_ping.erl
-index 02357181..7d51f4dc 100644
---- a/src/mod_ping.erl
-+++ b/src/mod_ping.erl
-@@ -36,7 +36,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(DEFAULT_SEND_PINGS, false).
-
-diff --git a/src/mod_pres_counter.erl b/src/mod_pres_counter.erl
-index 875aeef3..ffa95576 100644
---- a/src/mod_pres_counter.erl
-+++ b/src/mod_pres_counter.erl
-@@ -33,7 +33,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -record(pres_counter,
- {dir, start, count, logged = false}).
-diff --git a/src/mod_privacy.erl b/src/mod_privacy.erl
-index 64ae9620..034a56e4 100644
---- a/src/mod_privacy.erl
-+++ b/src/mod_privacy.erl
-@@ -42,7 +42,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_privacy.hrl").
-
- -define(PRIVACY_CACHE, privacy_cache).
-diff --git a/src/mod_privacy_mnesia.erl b/src/mod_privacy_mnesia.erl
-index 7449262b..201b92ec 100644
---- a/src/mod_privacy_mnesia.erl
-+++ b/src/mod_privacy_mnesia.erl
-@@ -32,7 +32,7 @@
- remove_list/3, use_cache/1, import/1]).
- -export([need_transform/1, transform/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_privacy.hrl").
- -include("logger.hrl").
-
-diff --git a/src/mod_privacy_riak.erl b/src/mod_privacy_riak.erl
-index 0cd39c11..88f294f8 100644
---- a/src/mod_privacy_riak.erl
-+++ b/src/mod_privacy_riak.erl
-@@ -33,7 +33,7 @@
-
- -export([privacy_schema/0]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_privacy.hrl").
-
- %%%===================================================================
-diff --git a/src/mod_privacy_sql.erl b/src/mod_privacy_sql.erl
-index 7939cbb2..6141feda 100644
---- a/src/mod_privacy_sql.erl
-+++ b/src/mod_privacy_sql.erl
-@@ -35,7 +35,7 @@
-
- -export([item_to_raw/1, raw_to_item/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_privacy.hrl").
- -include("logger.hrl").
- -include("ejabberd_sql_pt.hrl").
-diff --git a/src/mod_private.erl b/src/mod_private.erl
-index cb167468..0b84d071 100644
---- a/src/mod_private.erl
-+++ b/src/mod_private.erl
-@@ -37,7 +37,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_private.hrl").
-
- -define(PRIVATE_CACHE, private_cache).
-diff --git a/src/mod_private_mnesia.erl b/src/mod_private_mnesia.erl
-index 04c1a04a..6a9dee68 100644
---- a/src/mod_private_mnesia.erl
-+++ b/src/mod_private_mnesia.erl
-@@ -31,7 +31,7 @@
- use_cache/1, import/3]).
- -export([need_transform/1, transform/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_private.hrl").
- -include("logger.hrl").
-
-diff --git a/src/mod_private_riak.erl b/src/mod_private_riak.erl
-index be175f07..f97c2dd8 100644
---- a/src/mod_private_riak.erl
-+++ b/src/mod_private_riak.erl
-@@ -30,7 +30,7 @@
- -export([init/2, set_data/3, get_data/3, get_all_data/2, del_data/2,
- import/3]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_private.hrl").
-
- %%%===================================================================
-diff --git a/src/mod_private_sql.erl b/src/mod_private_sql.erl
-index 5ed584c3..da4974ce 100644
---- a/src/mod_private_sql.erl
-+++ b/src/mod_private_sql.erl
-@@ -30,7 +30,7 @@
- -export([init/2, set_data/3, get_data/3, get_all_data/2, del_data/2,
- import/3, export/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_private.hrl").
- -include("ejabberd_sql_pt.hrl").
- -include("logger.hrl").
-diff --git a/src/mod_privilege.erl b/src/mod_privilege.erl
-index dab7a619..695c8acf 100644
---- a/src/mod_privilege.erl
-+++ b/src/mod_privilege.erl
-@@ -41,7 +41,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -record(state, {server_host = <<"">> :: binary(),
- permissions = dict:new() :: ?TDICT}).
-diff --git a/src/mod_proxy65_service.erl b/src/mod_proxy65_service.erl
-index fb34ba55..f42aa461 100644
---- a/src/mod_proxy65_service.erl
-+++ b/src/mod_proxy65_service.erl
-@@ -39,7 +39,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(PROCNAME, ejabberd_mod_proxy65_service).
-
-diff --git a/src/mod_pubsub.erl b/src/mod_pubsub.erl
-index d2e1f6c5..b7cd6644 100644
---- a/src/mod_pubsub.erl
-+++ b/src/mod_pubsub.erl
-@@ -41,7 +41,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("pubsub.hrl").
- -include("mod_roster.hrl").
-
-diff --git a/src/mod_push.erl b/src/mod_push.erl
-index 1eaec6ad..ac4ed89e 100644
---- a/src/mod_push.erl
-+++ b/src/mod_push.erl
-@@ -52,7 +52,7 @@
- -include("ejabberd.hrl").
- -include("ejabberd_commands.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(PUSH_CACHE, push_cache).
-
-diff --git a/src/mod_push_keepalive.erl b/src/mod_push_keepalive.erl
-index bcdc0c25..d979eaec 100644
---- a/src/mod_push_keepalive.erl
-+++ b/src/mod_push_keepalive.erl
-@@ -36,7 +36,7 @@
- c2s_handle_cast/2, c2s_handle_info/2, c2s_stanza/3]).
-
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(PUSH_BEFORE_TIMEOUT_SECS, 120).
-
-diff --git a/src/mod_push_mnesia.erl b/src/mod_push_mnesia.erl
-index ff12150f..866b5630 100644
---- a/src/mod_push_mnesia.erl
-+++ b/src/mod_push_mnesia.erl
-@@ -35,7 +35,7 @@
-
- -include_lib("stdlib/include/ms_transform.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_push.hrl").
-
- %%%-------------------------------------------------------------------
-diff --git a/src/mod_push_sql.erl b/src/mod_push_sql.erl
-index c82d9fc0..79fedba4 100644
---- a/src/mod_push_sql.erl
-+++ b/src/mod_push_sql.erl
-@@ -32,7 +32,7 @@
- lookup_sessions/3, lookup_sessions/2, lookup_sessions/1,
- delete_session/3, delete_old_sessions/2, export/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
- -include("ejabberd_sql_pt.hrl").
- -include("mod_push.hrl").
-diff --git a/src/mod_register.erl b/src/mod_register.erl
-index 77557ee0..8ad27fcf 100644
---- a/src/mod_register.erl
-+++ b/src/mod_register.erl
-@@ -41,7 +41,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- start(Host, Opts) ->
- IQDisc = gen_mod:get_opt(iqdisc, Opts, gen_iq_handler:iqdisc(Host)),
-diff --git a/src/mod_register_web.erl b/src/mod_register_web.erl
-index b7bc2edc..a7bb83f5 100644
---- a/src/mod_register_web.erl
-+++ b/src/mod_register_web.erl
-@@ -60,7 +60,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("ejabberd_http.hrl").
-
-diff --git a/src/mod_roster.erl b/src/mod_roster.erl
-index a86b50d9..57f5fdce 100644
---- a/src/mod_roster.erl
-+++ b/src/mod_roster.erl
-@@ -54,7 +54,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("mod_roster.hrl").
-
-diff --git a/src/mod_s2s_dialback.erl b/src/mod_s2s_dialback.erl
-index b4c2ed9d..645ab37f 100644
---- a/src/mod_s2s_dialback.erl
-+++ b/src/mod_s2s_dialback.erl
-@@ -33,7 +33,7 @@
- s2s_in_features/2, s2s_out_init/2, s2s_out_closed/2]).
-
- -include("ejabberd.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
-
- %%%===================================================================
-diff --git a/src/mod_service_log.erl b/src/mod_service_log.erl
-index 1c6e5fe8..c295aa45 100644
---- a/src/mod_service_log.erl
-+++ b/src/mod_service_log.erl
-@@ -35,7 +35,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- start(Host, _Opts) ->
- ejabberd_hooks:add(user_send_packet, Host, ?MODULE,
-diff --git a/src/mod_shared_roster.erl b/src/mod_shared_roster.erl
-index 5f95266b..db641dbb 100644
---- a/src/mod_shared_roster.erl
-+++ b/src/mod_shared_roster.erl
-@@ -44,7 +44,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -include("mod_roster.hrl").
-
-diff --git a/src/mod_shared_roster_ldap.erl b/src/mod_shared_roster_ldap.erl
-index 66cbebd9..4b431fc4 100644
---- a/src/mod_shared_roster_ldap.erl
-+++ b/src/mod_shared_roster_ldap.erl
-@@ -46,7 +46,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_roster.hrl").
- -include("eldap.hrl").
-
-diff --git a/src/mod_shared_roster_mnesia.erl b/src/mod_shared_roster_mnesia.erl
-index adfbac68..bdd87030 100644
---- a/src/mod_shared_roster_mnesia.erl
-+++ b/src/mod_shared_roster_mnesia.erl
-@@ -37,7 +37,7 @@
- -include("mod_roster.hrl").
- -include("mod_shared_roster.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- %%%===================================================================
- %%% API
-diff --git a/src/mod_shared_roster_riak.erl b/src/mod_shared_roster_riak.erl
-index 441aafd0..d5545eb1 100644
---- a/src/mod_shared_roster_riak.erl
-+++ b/src/mod_shared_roster_riak.erl
-@@ -35,7 +35,7 @@
-
- -include("mod_roster.hrl").
- -include("mod_shared_roster.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- %%%===================================================================
- %%% API
-diff --git a/src/mod_shared_roster_sql.erl b/src/mod_shared_roster_sql.erl
-index 488e0ec7..f952347a 100644
---- a/src/mod_shared_roster_sql.erl
-+++ b/src/mod_shared_roster_sql.erl
-@@ -36,7 +36,7 @@
- add_user_to_group/3, remove_user_from_group/3, import/3,
- export/1]).
-
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
- -include("mod_roster.hrl").
- -include("mod_shared_roster.hrl").
- -include("ejabberd_sql_pt.hrl").
-diff --git a/src/mod_sic.erl b/src/mod_sic.erl
-index a2b3256e..da61b2c2 100644
---- a/src/mod_sic.erl
-+++ b/src/mod_sic.erl
-@@ -36,7 +36,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- start(Host, Opts) ->
- IQDisc = gen_mod:get_opt(iqdisc, Opts, gen_iq_handler:iqdisc(Host)),
-diff --git a/src/mod_sip.erl b/src/mod_sip.erl
-index 01327c77..70159d17 100644
---- a/src/mod_sip.erl
-+++ b/src/mod_sip.erl
-@@ -52,7 +52,7 @@ mod_opt_type(_) ->
- locate/1, mod_opt_type/1, depends/2]).
-
- -include("ejabberd.hrl").
---include_lib("esip/include/esip.hrl").
-+-include_lib("s1_sip/include/esip.hrl").
-
- %%%===================================================================
- %%% API
-diff --git a/src/mod_sip_proxy.erl b/src/mod_sip_proxy.erl
-index d600da3d..c3dfe874 100644
---- a/src/mod_sip_proxy.erl
-+++ b/src/mod_sip_proxy.erl
-@@ -40,7 +40,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include_lib("esip/include/esip.hrl").
-+-include_lib("s1_sip/include/esip.hrl").
-
- -define(SIGN_LIFETIME, 300). %% in seconds.
-
-diff --git a/src/mod_sip_registrar.erl b/src/mod_sip_registrar.erl
-index a47de697..f89d3cab 100644
---- a/src/mod_sip_registrar.erl
-+++ b/src/mod_sip_registrar.erl
-@@ -42,7 +42,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include_lib("esip/include/esip.hrl").
-+-include_lib("s1_sip/include/esip.hrl").
-
- -define(CALL_TIMEOUT, timer:seconds(30)).
- -define(DEFAULT_EXPIRES, 3600).
-diff --git a/src/mod_stats.erl b/src/mod_stats.erl
-index 2bdbdbd3..2969fbd2 100644
---- a/src/mod_stats.erl
-+++ b/src/mod_stats.erl
-@@ -35,7 +35,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- start(Host, Opts) ->
- IQDisc = gen_mod:get_opt(iqdisc, Opts, gen_iq_handler:iqdisc(Host)),
-diff --git a/src/mod_stream_mgmt.erl b/src/mod_stream_mgmt.erl
-index 658bd504..46b00993 100644
---- a/src/mod_stream_mgmt.erl
-+++ b/src/mod_stream_mgmt.erl
-@@ -37,7 +37,7 @@
- -export([get_resume_timeout/1, set_resume_timeout/2]).
-
- -include("ejabberd.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
- -include("p1_queue.hrl").
-
-diff --git a/src/mod_time.erl b/src/mod_time.erl
-index c54f3d27..20321d36 100644
---- a/src/mod_time.erl
-+++ b/src/mod_time.erl
-@@ -38,7 +38,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- start(Host, Opts) ->
- IQDisc = gen_mod:get_opt(iqdisc, Opts, gen_iq_handler:iqdisc(Host)),
-diff --git a/src/mod_vcard.erl b/src/mod_vcard.erl
-index 378b9430..10618c96 100644
---- a/src/mod_vcard.erl
-+++ b/src/mod_vcard.erl
-@@ -44,7 +44,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_vcard.hrl").
-
- -define(JUD_MATCHES, 30).
-diff --git a/src/mod_vcard_ldap.erl b/src/mod_vcard_ldap.erl
-index 88621fc0..e2c741c5 100644
---- a/src/mod_vcard_ldap.erl
-+++ b/src/mod_vcard_ldap.erl
-@@ -41,7 +41,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
- -include("eldap.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("translate.hrl").
-
- -define(PROCNAME, ejabberd_mod_vcard_ldap).
-diff --git a/src/mod_vcard_mnesia.erl b/src/mod_vcard_mnesia.erl
-index 3e742ec1..6e9e0e50 100644
---- a/src/mod_vcard_mnesia.erl
-+++ b/src/mod_vcard_mnesia.erl
-@@ -33,7 +33,7 @@
- -export([need_transform/1, transform/1]).
-
- -include("ejabberd.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_vcard.hrl").
- -include("logger.hrl").
- -include("translate.hrl").
-diff --git a/src/mod_vcard_riak.erl b/src/mod_vcard_riak.erl
-index e5ad1b3d..5427ec7f 100644
---- a/src/mod_vcard_riak.erl
-+++ b/src/mod_vcard_riak.erl
-@@ -31,7 +31,7 @@
- search_fields/1, search_reported/1, import/3, stop/1]).
- -export([is_search_supported/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_vcard.hrl").
-
- %%%===================================================================
-diff --git a/src/mod_vcard_sql.erl b/src/mod_vcard_sql.erl
-index 07d90b69..1dc5d40f 100644
---- a/src/mod_vcard_sql.erl
-+++ b/src/mod_vcard_sql.erl
-@@ -33,7 +33,7 @@
- search_fields/1, search_reported/1, import/3, export/1]).
- -export([is_search_supported/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("mod_vcard.hrl").
- -include("logger.hrl").
- -include("ejabberd_sql_pt.hrl").
-diff --git a/src/mod_vcard_xupdate.erl b/src/mod_vcard_xupdate.erl
-index 7643fed4..19148654 100644
---- a/src/mod_vcard_xupdate.erl
-+++ b/src/mod_vcard_xupdate.erl
-@@ -35,7 +35,7 @@
-
- -include("ejabberd.hrl").
- -include("logger.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(VCARD_XUPDATE_CACHE, vcard_xupdate_cache).
-
-diff --git a/src/mod_version.erl b/src/mod_version.erl
-index 5f613e02..23ac02cd 100644
---- a/src/mod_version.erl
-+++ b/src/mod_version.erl
-@@ -37,7 +37,7 @@
- -include("ejabberd.hrl").
- -include("logger.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- start(Host, Opts) ->
- IQDisc = gen_mod:get_opt(iqdisc, Opts, gen_iq_handler:iqdisc(Host)),
-diff --git a/src/node_dag.erl b/src/node_dag.erl
-index 9829c27c..5f399357 100644
---- a/src/node_dag.erl
-+++ b/src/node_dag.erl
-@@ -28,7 +28,7 @@
- -author('bjc@kublai.com').
-
- -include("pubsub.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -export([init/3, terminate/2, options/0, features/0,
- create_node_permission/6, create_node/2, delete_node/1,
-diff --git a/src/node_dispatch.erl b/src/node_dispatch.erl
-index 92a655b8..00eb55d9 100644
---- a/src/node_dispatch.erl
-+++ b/src/node_dispatch.erl
-@@ -34,7 +34,7 @@
- -author('christophe.romain@process-one.net').
-
- -include("pubsub.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -export([init/3, terminate/2, options/0, features/0,
- create_node_permission/6, create_node/2, delete_node/1,
-diff --git a/src/node_flat.erl b/src/node_flat.erl
-index bc529e14..571b1b16 100644
---- a/src/node_flat.erl
-+++ b/src/node_flat.erl
-@@ -34,7 +34,7 @@
- -author('christophe.romain@process-one.net').
-
- -include("pubsub.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -export([init/3, terminate/2, options/0, features/0,
- create_node_permission/6, create_node/2, delete_node/1,
-diff --git a/src/node_flat_sql.erl b/src/node_flat_sql.erl
-index afbc050a..ae279c4c 100644
---- a/src/node_flat_sql.erl
-+++ b/src/node_flat_sql.erl
-@@ -36,7 +36,7 @@
- -compile([{parse_transform, ejabberd_sql_pt}]).
-
- -include("pubsub.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("ejabberd_sql_pt.hrl").
-
- -export([init/3, terminate/2, options/0, features/0,
-diff --git a/src/node_online.erl b/src/node_online.erl
-index 39b08d99..ce71fdb0 100644
---- a/src/node_online.erl
-+++ b/src/node_online.erl
-@@ -28,7 +28,7 @@
- -author('christophe.romain@process-one.net').
-
- -include("pubsub.hrl").
---include("jid.hrl").
-+-include_lib("p1_xmpp/include/jid.hrl").
-
- -export([init/3, terminate/2, options/0, features/0,
- create_node_permission/6, create_node/2, delete_node/1,
-diff --git a/src/nodetree_dag.erl b/src/nodetree_dag.erl
-index a44e7155..0c5609c4 100644
---- a/src/nodetree_dag.erl
-+++ b/src/nodetree_dag.erl
-@@ -30,7 +30,7 @@
- -include_lib("stdlib/include/qlc.hrl").
-
- -include("pubsub.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -export([init/3, terminate/2, options/0, set_node/1,
- get_node/3, get_node/2, get_node/1, get_nodes/2,
-diff --git a/src/nodetree_tree.erl b/src/nodetree_tree.erl
-index 31724036..0fe1f5e0 100644
---- a/src/nodetree_tree.erl
-+++ b/src/nodetree_tree.erl
-@@ -40,7 +40,7 @@
- -include_lib("stdlib/include/qlc.hrl").
-
- -include("pubsub.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -export([init/3, terminate/2, options/0, set_node/1,
- get_node/3, get_node/2, get_node/1, get_nodes/2,
-diff --git a/src/nodetree_tree_sql.erl b/src/nodetree_tree_sql.erl
-index b310dd2d..19ff1786 100644
---- a/src/nodetree_tree_sql.erl
-+++ b/src/nodetree_tree_sql.erl
-@@ -40,7 +40,7 @@
- -compile([{parse_transform, ejabberd_sql_pt}]).
-
- -include("pubsub.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("ejabberd_sql_pt.hrl").
-
- -export([init/3, terminate/2, options/0, set_node/1,
-diff --git a/src/prosody2ejabberd.erl b/src/prosody2ejabberd.erl
-index 2c7dabb4..b6ba864c 100644
---- a/src/prosody2ejabberd.erl
-+++ b/src/prosody2ejabberd.erl
-@@ -28,7 +28,7 @@
- -export([from_dir/1]).
-
- -include("ejabberd.hrl").
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include("logger.hrl").
- -include("mod_roster.hrl").
- -include("mod_offline.hrl").
-diff --git a/src/pubsub_subscription.erl b/src/pubsub_subscription.erl
-index 746e39e3..59ee734b 100644
---- a/src/pubsub_subscription.erl
-+++ b/src/pubsub_subscription.erl
-@@ -39,7 +39,7 @@
-
- -include("pubsub.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(PUBSUB_DELIVER, <<"pubsub#deliver">>).
- -define(PUBSUB_DIGEST, <<"pubsub#digest">>).
-diff --git a/src/pubsub_subscription_sql.erl b/src/pubsub_subscription_sql.erl
-index 3315748c..5700c100 100644
---- a/src/pubsub_subscription_sql.erl
-+++ b/src/pubsub_subscription_sql.erl
-@@ -35,7 +35,7 @@
-
- -include("pubsub.hrl").
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
-
- -define(PUBSUB_DELIVER, <<"pubsub#deliver">>).
- -define(PUBSUB_DIGEST, <<"pubsub#digest">>).
-diff --git a/src/xmpp_stream_in.erl b/src/xmpp_stream_in.erl
-index 329ebad6..4ce8760c 100644
---- a/src/xmpp_stream_in.erl
-+++ b/src/xmpp_stream_in.erl
-@@ -42,7 +42,7 @@
- -define(FSMOPTS, []).
- -endif.
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -type state() :: map().
- -type stop_reason() :: {stream, reset | {in | out, stream_error()}} |
- {tls, inet:posix() | atom() | binary()} |
-diff --git a/src/xmpp_stream_out.erl b/src/xmpp_stream_out.erl
-index 7ddc183b..8095bd86 100644
---- a/src/xmpp_stream_out.erl
-+++ b/src/xmpp_stream_out.erl
-@@ -44,7 +44,7 @@
-
- -define(TCP_SEND_TIMEOUT, 15000).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include_lib("kernel/include/inet.hrl").
-
- -type state() :: map().
-diff --git a/src/xmpp_stream_pkix.erl b/src/xmpp_stream_pkix.erl
-index 8361999f..a6fe728c 100644
---- a/src/xmpp_stream_pkix.erl
-+++ b/src/xmpp_stream_pkix.erl
-@@ -24,7 +24,7 @@
- %% API
- -export([authenticate/1, authenticate/2, get_cert_domains/1, format_error/1]).
-
---include("xmpp.hrl").
-+-include_lib("p1_xmpp/include/xmpp.hrl").
- -include_lib("public_key/include/public_key.hrl").
- -include("XmppAddr.hrl").
-
---
-2.14.1
-
diff --git a/package/ejabberd/0005-disable-ERLANG_DEPRECATED_CHECK.patch b/package/ejabberd/0005-disable-ERLANG_DEPRECATED_CHECK.patch
deleted file mode 100644
index 09b356219d..0000000000
--- a/package/ejabberd/0005-disable-ERLANG_DEPRECATED_CHECK.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From d43a65b112ec995a5ee52aca2a16e5cf9699d7c1 Mon Sep 17 00:00:00 2001
-From: Johan Oudinet <johan.oudinet@gmail.com>
-Date: Wed, 20 Jan 2016 08:16:26 -0500
-Subject: [PATCH] disable ERLANG_DEPRECATED_CHECK
-
-Without this patch, the configure will try to execute erlang to check
-if it uses deprecated types. Assume the answer is false.
-
-Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index cd1ab08..a4f1533 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -235,7 +235,7 @@ if test "$ENABLEUSER" != ""; then
- AC_SUBST([INSTALLUSER], [$ENABLEUSER])
- fi
-
--ERLANG_DEPRECATED_TYPES_CHECK
-+AC_SUBST(erlang_deprecated_types, false)
-
- if test "$sqlite" = "true"; then
- AX_LIB_SQLITE3([3.6.19])
---
-2.5.0
-
diff --git a/package/ejabberd/0006-fix-install-permissions.patch b/package/ejabberd/0006-fix-install-permissions.patch
deleted file mode 100644
index 9a0073f5c2..0000000000
--- a/package/ejabberd/0006-fix-install-permissions.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From ef847479778cc58818e066b87aa1789ba1c4148b Mon Sep 17 00:00:00 2001
-From: Johan Oudinet <johan.oudinet@gmail.com>
-Date: Wed, 20 Jan 2016 09:34:07 -0500
-Subject: [PATCH] fix install permissions
-
-Without this patch, the makefile will try to install directories and
-files with incompatible permissions for ejabberd, which run as an
-ejabberd user.
-
-Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
-
-diff --git a/Makefile.in b/Makefile.in
-index a0b4553d..2cae2db4 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -169,10 +169,8 @@ copy-files-sub: copy-files-sub2
- install: all copy-files
- #
- # Configuration files
-- $(INSTALL) -d -m 750 $(G_USER) $(ETCDIR)
-- [ -f $(ETCDIR)/ejabberd.yml ] \
-- && $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml-new \
-- || $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml
-+ $(INSTALL) -d $(ETCDIR)
-+ $(INSTALL) -b -m 644 ejabberd.yml.example $(ETCDIR)/ejabberd.yml
- $(SED) -e "s*{{rootdir}}*@prefix@*g" \
- -e "s*{{installuser}}*@INSTALLUSER@*g" \
- -e "s*{{bindir}}*@bindir@*g" \
-@@ -183,53 +181,16 @@ install: all copy-files
- -e "s*{{erl}}*@ERL@*g" \
- -e "s*{{epmd}}*@EPMD@*g" ejabberdctl.template \
- > ejabberdctl.example
-- [ -f $(ETCDIR)/ejabberdctl.cfg ] \
-- && $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg-new \
-- || $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg
-- $(INSTALL) -b -m 644 $(G_USER) inetrc $(ETCDIR)/inetrc
-+ $(INSTALL) -b -m 644 ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg
-+ $(INSTALL) -b -m 644 inetrc $(ETCDIR)/inetrc
- #
- # Administration script
-- [ -d $(SBINDIR) ] || $(INSTALL) -d -m 755 $(SBINDIR)
-- $(INSTALL) -m 550 $(G_USER) ejabberdctl.example $(SBINDIR)/ejabberdctl
-+ $(INSTALL) -D ejabberdctl.example $(SBINDIR)/ejabberdctl
- # Elixir binaries
- [ -d $(BINDIR) ] || $(INSTALL) -d -m 755 $(BINDIR)
- [ -f deps/elixir/bin/iex ] && $(INSTALL) -m 550 $(G_USER) deps/elixir/bin/iex $(BINDIR)/iex || true
- [ -f deps/elixir/bin/elixir ] && $(INSTALL) -m 550 $(G_USER) deps/elixir/bin/elixir $(BINDIR)/elixir || true
- [ -f deps/elixir/bin/mix ] && $(INSTALL) -m 550 $(G_USER) deps/elixir/bin/mix $(BINDIR)/mix || true
-- #
-- # Init script
-- $(SED) -e "s*@ctlscriptpath@*$(SBINDIR)*g" \
-- -e "s*@installuser@*$(INIT_USER)*g" ejabberd.init.template \
-- > ejabberd.init
-- chmod 755 ejabberd.init
-- #
-- # Service script
-- $(SED) -e "s*@ctlscriptpath@*$(SBINDIR)*g" ejabberd.service.template \
-- > ejabberd.service
-- chmod 644 ejabberd.service
-- #
-- # Spool directory
-- $(INSTALL) -d -m 750 $(O_USER) $(SPOOLDIR)
-- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(SPOOLDIR) >$(CHOWN_OUTPUT)
-- chmod -R 750 $(SPOOLDIR)
-- [ ! -f $(COOKIEFILE) ] || { $(CHOWN_COMMAND) @INSTALLUSER@ $(COOKIEFILE) >$(CHOWN_OUTPUT) ; chmod 400 $(COOKIEFILE) ; }
-- #
-- # ejabberdctl lock directory
-- $(INSTALL) -d -m 750 $(O_USER) $(CTLLOCKDIR)
-- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(CTLLOCKDIR) >$(CHOWN_OUTPUT)
-- chmod -R 750 $(CTLLOCKDIR)
-- #
-- # Log directory
-- $(INSTALL) -d -m 750 $(O_USER) $(LOGDIR)
-- $(CHOWN_COMMAND) -R @INSTALLUSER@ $(LOGDIR) >$(CHOWN_OUTPUT)
-- chmod -R 750 $(LOGDIR)
-- #
-- # Documentation
-- $(INSTALL) -d $(DOCDIR)
-- [ -f doc/guide.html ] \
-- && $(INSTALL) -m 644 doc/guide.html $(DOCDIR) \
-- || echo "Documentation not included in sources"
-- $(INSTALL) -m 644 COPYING $(DOCDIR)
-
- uninstall: uninstall-binary
diff --git a/package/ejabberd/0008-handle-error-case-from-lib_dir.patch b/package/ejabberd/0008-handle-error-case-from-lib_dir.patch
deleted file mode 100644
index f7931b4edc..0000000000
--- a/package/ejabberd/0008-handle-error-case-from-lib_dir.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From d0bfcbbfd8a6e7ee6213112e4078b020e4e1d15d Mon Sep 17 00:00:00 2001
-From: Paweł Chmielowski <pchmielowski@process-one.net>
-Date: Wed, 10 Jan 2018 16:34:01 +0100
-Subject: [PATCH] Handle error case from code:lib_dir in ResolveDepPath in
- rebar.config.script
-
-This patch have already been applied in upstream/master.
-
-Signed-off-by: Paweł Chmielowski <pchmielowski@process-one.net>
-
----
- rebar.config.script | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/rebar.config.script b/rebar.config.script
-index 85f918fffd..ba374e5c5f 100644
---- a/rebar.config.script
-+++ b/rebar.config.script
-@@ -233,9 +233,10 @@ ResolveDepPath = case {SystemDeps, IsRebar3} of
- {true, _} ->
- fun("deps/" ++ Rest) ->
- Slash = string:str(Rest, "/"),
-- code:lib_dir(
-- string:sub_string(Rest, 1, Slash -1)) ++
-- string:sub_string(Rest, Slash);
-+ case code:lib_dir(string:sub_string(Rest, 1, Slash -1)) of
-+ {error, _} -> Rest;
-+ V -> V ++ string:sub_string(Rest, Slash)
-+ end;
- (Path) ->
- Path
- end;
diff --git a/package/ejabberd/0009-disable-mod_avatar.patch b/package/ejabberd/0009-disable-mod_avatar.patch
deleted file mode 100644
index ab89ba1a29..0000000000
--- a/package/ejabberd/0009-disable-mod_avatar.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From e6eac74e82975e7d87b1f59c50eb007ab04c1392 Mon Sep 17 00:00:00 2001
-From: Johan Oudinet <johan.oudinet@gmail.com>
-Date: Tue, 16 Jan 2018 14:29:56 +0100
-Subject: [PATCH] disable mod_avatar
-
-This module requires to compile with graphics enabled.
-
-Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
----
- ejabberd.yml.example | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/ejabberd.yml.example b/ejabberd.yml.example
-index e178e956..7c12b76c 100644
---- a/ejabberd.yml.example
-+++ b/ejabberd.yml.example
-@@ -796,9 +796,9 @@ modules:
- search: false
- mod_vcard_xupdate: {}
- ## Convert all avatars posted by Android clients from WebP to JPEG
-- mod_avatar:
-- convert:
-- webp: jpeg
-+ ## mod_avatar:
-+ ## convert:
-+ ## webp: jpeg
- mod_version: {}
- mod_stream_mgmt: {}
- ## Non-SASL Authentication (XEP-0078) is now disabled by default
---
-2.14.1
-
diff --git a/package/ejabberd/Config.in b/package/ejabberd/Config.in
index a7542cd12d..53b688b5d9 100644
--- a/package/ejabberd/Config.in
+++ b/package/ejabberd/Config.in
@@ -2,6 +2,7 @@ config BR2_PACKAGE_EJABBERD
bool "ejabberd"
depends on BR2_PACKAGE_ERLANG
depends on BR2_INSTALL_LIBSTDCPP # jiffy, stringprep
+ select BR2_PACKAGE_ERLANG_EIMP
select BR2_PACKAGE_ERLANG_JIFFY
select BR2_PACKAGE_ERLANG_LAGER
select BR2_PACKAGE_ERLANG_P1_CACHE_TAB
diff --git a/package/ejabberd/ejabberd.hash b/package/ejabberd/ejabberd.hash
index 6fb90a2300..aed269cb8d 100644
--- a/package/ejabberd/ejabberd.hash
+++ b/package/ejabberd/ejabberd.hash
@@ -1,2 +1,2 @@
# Locally computed
-sha256 bd16b33a2f1345e5847fd05b70a5fa992181bac756cd6d5d621de9c18cb76801 ejabberd-17.11.tgz
+sha256 781a68d2deefb4afae563c29a8955063c759c244d308251167d46185f145d4ff ejabberd-18.09.tgz
diff --git a/package/ejabberd/ejabberd.mk b/package/ejabberd/ejabberd.mk
index acd52e5b38..26768c7f89 100644
--- a/package/ejabberd/ejabberd.mk
+++ b/package/ejabberd/ejabberd.mk
@@ -4,12 +4,13 @@
#
################################################################################
-EJABBERD_VERSION = 17.11
+EJABBERD_VERSION = 18.09
EJABBERD_SOURCE = ejabberd-$(EJABBERD_VERSION).tgz
EJABBERD_SITE = https://www.process-one.net/downloads/ejabberd/$(EJABBERD_VERSION)
EJABBERD_LICENSE = GPL-2.0+ with OpenSSL exception
EJABBERD_LICENSE_FILES = COPYING
-EJABBERD_DEPENDENCIES = getent openssl host-erlang-lager erlang-lager \
+EJABBERD_DEPENDENCIES = getent openssl erlang-eimp \
+ host-erlang-lager erlang-lager \
erlang-p1-cache-tab erlang-p1-iconv erlang-p1-sip \
erlang-p1-stringprep erlang-p1-stun erlang-p1-tls \
erlang-p1-utils erlang-p1-xml erlang-p1-xmpp erlang-p1-yaml \
@@ -35,8 +36,7 @@ EJABBERD_CONF_ENV = \
EJABBERD_CONF_OPTS = \
--enable-system-deps \
- --disable-erlang-version-check \
- --disable-graphics
+ --disable-erlang-version-check
define EJABBERD_INSTALL_TARGET_CMDS
$(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) install -C $(@D)
@@ -54,6 +54,10 @@ define EJABBERD_USERS
ejabberd -1 ejabberd -1 * /var/lib/ejabberd /bin/sh - ejabberd daemon
endef
+define EJABBERD_PERMISSIONS
+ /etc/ejabberd r 750 root ejabberd - - - - -
+endef
+
define EJABBERD_INSTALL_INIT_SYSV
$(INSTALL) -D -m 0755 package/ejabberd/S50ejabberd \
$(TARGET_DIR)/etc/init.d/S50ejabberd
diff --git a/package/ell/0001-ell-ell.sym-add-missing-l_genl_family_set_unicast_ha.patch b/package/ell/0001-ell-ell.sym-add-missing-l_genl_family_set_unicast_ha.patch
new file mode 100644
index 0000000000..e521a93f7a
--- /dev/null
+++ b/package/ell/0001-ell-ell.sym-add-missing-l_genl_family_set_unicast_ha.patch
@@ -0,0 +1,30 @@
+From e68d797ffdfe768c1e4a356add5bb12c43f40a72 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Fri, 9 Nov 2018 23:28:39 +0100
+Subject: [PATCH] ell/ell.sym: add missing l_genl_family_set_unicast_handler
+
+Fixes iwd compile failure:
+
+ src/netdev.o: In function `netdev_set_nl80211':
+ netdev.c:(.text+0x6f04): undefined reference to `l_genl_family_set_unicast_handler'
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ ell/ell.sym | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/ell/ell.sym b/ell/ell.sym
+index 614bc93..cdd2c21 100644
+--- a/ell/ell.sym
++++ b/ell/ell.sym
+@@ -257,6 +257,7 @@ global:
+ l_genl_family_new;
+ l_genl_family_ref;
+ l_genl_family_unref;
++ l_genl_family_set_unicast_handler;
+ l_genl_family_set_watches;
+ l_genl_family_get_version;
+ l_genl_family_get_genl;
+--
+2.19.1
+
diff --git a/package/ell/0001-ell-signal.h-use-standard-sigset_t-fixes-musl-compil.patch b/package/ell/0001-ell-signal.h-use-standard-sigset_t-fixes-musl-compil.patch
deleted file mode 100644
index a1d252b42a..0000000000
--- a/package/ell/0001-ell-signal.h-use-standard-sigset_t-fixes-musl-compil.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From abff9db9a6e86e00613a420dd6a0ba3bc81e2b72 Mon Sep 17 00:00:00 2001
-From: Peter Seiderer <ps.report@gmx.net>
-Date: Fri, 2 Nov 2018 12:58:57 +0100
-Subject: [PATCH] ell/signal.h: use standard sigset_t, fixes musl compile
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Use standard sigset_t (instead __sigset_t):
-
-- fixes musl compile
-- fies mismatch between header and implementation file
-
-Fixes:
-
- In file included from ell/main.c:35:0:
- ell/signal.h:39:40: error: unknown type name ‘__sigset_t’
- struct l_signal *l_signal_create(const __sigset_t *mask,
- ^~~~~~~~~~
- In file included from ell/signal.c:35:0:
- ell/signal.h:39:40: error: unknown type name ‘__sigset_t’
- struct l_signal *l_signal_create(const __sigset_t *mask,
- ^~~~~~~~~~
- ell/signal.c:153:29: error: conflicting types for ‘l_signal_create’
- LIB_EXPORT struct l_signal *l_signal_create(const sigset_t *mask,
- ^~~~~~~~~~~~~~~
- In file included from ell/signal.c:35:0:
- ell/signal.h:39:18: note: previous declaration of ‘l_signal_create’ was here
- struct l_signal *l_signal_create(const __sigset_t *mask,
- ^~~~~~~~~~~~~~~
-
-Reverts upstream commit [1], superseeded in the next version by [2].
-
-[1] https://git.kernel.org/pub/scm/libs/ell/ell.git/commit/?id=7af8e3ba0ed522897f5a87e6c8f2980f82ff5012
-[2] https://git.kernel.org/pub/scm/libs/ell/ell.git/commit/?id=4a386a10d88ff52097a974167ab889b3fc2add70
-
-Signed-off-by: Peter Seiderer <ps.report@gmx.net>
----
- ell/signal.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/ell/signal.h b/ell/signal.h
-index 0d4fdc8..98cf0fa 100644
---- a/ell/signal.h
-+++ b/ell/signal.h
-@@ -36,7 +36,7 @@ typedef void (*l_signal_notify_cb_t) (struct l_signal *signal,
- uint32_t signo, void *user_data);
- typedef void (*l_signal_destroy_cb_t) (void *user_data);
-
--struct l_signal *l_signal_create(const __sigset_t *mask,
-+struct l_signal *l_signal_create(const sigset_t *mask,
- l_signal_notify_cb_t callback,
- void *user_data, l_signal_destroy_cb_t destroy);
- void l_signal_remove(struct l_signal *signal);
---
-2.19.1
-
diff --git a/package/ell/ell.hash b/package/ell/ell.hash
index c6b23baec8..84827437ec 100644
--- a/package/ell/ell.hash
+++ b/package/ell/ell.hash
@@ -1,5 +1,5 @@
# Locally computed
-sha256 8e629347d49d30418e215ccf80f05eb6ff617f752396f93287ed723169aec006 ell-0.13.tar.gz
+sha256 1791d2e18f0089af0d58a3d2f76a2846c2d9fa59eb2848124a713ce380561b0e ell-0.14.tar.gz
# License files
sha256 ec60b993835e2c6b79e6d9226345f4e614e686eb57dc13b6420c15a33a8996e5 COPYING
diff --git a/package/ell/ell.mk b/package/ell/ell.mk
index 8ea95a6d77..56d53be868 100644
--- a/package/ell/ell.mk
+++ b/package/ell/ell.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ELL_VERSION = 0.13
+ELL_VERSION = 0.14
ELL_SITE = https://git.kernel.org/pub/scm/libs/ell/ell.git
ELL_SITE_METHOD = git
ELL_LICENSE = LGPL-2.1+
diff --git a/package/erlang-eimp/Config.in b/package/erlang-eimp/Config.in
new file mode 100644
index 0000000000..5c207e9c23
--- /dev/null
+++ b/package/erlang-eimp/Config.in
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_ERLANG_EIMP
+ bool "erlang-eimp"
+ select BR2_PACKAGE_ERLANG_P1_UTILS
+ select BR2_PACKAGE_GD
+ select BR2_PACKAGE_GD_WEBPNG
+ select BR2_PACKAGE_JPEG
+ select BR2_PACKAGE_LIBPNG
+ select BR2_PACKAGE_WEBP
+ help
+ Erlang Image Manipulation Process
+
+ https://github.com/processone/eimp
diff --git a/package/erlang-eimp/erlang-eimp.mk b/package/erlang-eimp/erlang-eimp.mk
new file mode 100644
index 0000000000..83d34cd5e0
--- /dev/null
+++ b/package/erlang-eimp/erlang-eimp.mk
@@ -0,0 +1,13 @@
+################################################################################
+#
+# erlang-eimp
+#
+################################################################################
+
+ERLANG_EIMP_VERSION = 1.0.8
+ERLANG_EIMP_SITE = $(call github,processone,eimp,$(ERLANG_EIMP_VERSION))
+ERLANG_EIMP_LICENSE = Apache-2.0
+ERLANG_EIMP_LICENSE_FILES = LICENSE.txt
+ERLANG_EIMP_DEPENDENCIES = erlang-p1-utils gd jpeg libpng webp
+
+$(eval $(rebar-package))
diff --git a/package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash b/package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash
index 9425bcda8b..841410292f 100644
--- a/package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash
+++ b/package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 5ef27d3be0ef2e8dc06468ec39dc3a43506d6f85af0edc21b9c14db860669d38 erlang-p1-cache-tab-1.0.12.tar.gz
+sha256 169c3ca82b99c482e5914b616d594fed25cf34a4c995e37bfe1651d70bbaea55 erlang-p1-cache-tab-1.0.16.tar.gz
diff --git a/package/erlang-p1-cache-tab/erlang-p1-cache-tab.mk b/package/erlang-p1-cache-tab/erlang-p1-cache-tab.mk
index ae96103ead..a25f0a1e6e 100644
--- a/package/erlang-p1-cache-tab/erlang-p1-cache-tab.mk
+++ b/package/erlang-p1-cache-tab/erlang-p1-cache-tab.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_CACHE_TAB_VERSION = 1.0.12
+ERLANG_P1_CACHE_TAB_VERSION = 1.0.16
ERLANG_P1_CACHE_TAB_SITE = $(call github,processone,cache_tab,$(ERLANG_P1_CACHE_TAB_VERSION))
ERLANG_P1_CACHE_TAB_LICENSE = Apache-2.0
ERLANG_P1_CACHE_TAB_LICENSE_FILES = LICENSE.txt
diff --git a/package/erlang-p1-iconv/erlang-p1-iconv.hash b/package/erlang-p1-iconv/erlang-p1-iconv.hash
index 0f0a23161a..31bcf40731 100644
--- a/package/erlang-p1-iconv/erlang-p1-iconv.hash
+++ b/package/erlang-p1-iconv/erlang-p1-iconv.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 c7214ea7503c3de1edf3bdd72b37187aa3a9a36d7cf7f5945a067ae8d262d3fb erlang-p1-iconv-1.0.6.tar.gz
+sha256 8a9ff8a3dd983284caa964f118b5782ef1c0c662995608b2ca4f4a5f285605a9 erlang-p1-iconv-1.0.10.tar.gz
diff --git a/package/erlang-p1-iconv/erlang-p1-iconv.mk b/package/erlang-p1-iconv/erlang-p1-iconv.mk
index 6b22431cce..79d8efe16f 100644
--- a/package/erlang-p1-iconv/erlang-p1-iconv.mk
+++ b/package/erlang-p1-iconv/erlang-p1-iconv.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_ICONV_VERSION = 1.0.6
+ERLANG_P1_ICONV_VERSION = 1.0.10
ERLANG_P1_ICONV_SITE = $(call github,processone,iconv,$(ERLANG_P1_ICONV_VERSION))
ERLANG_P1_ICONV_LICENSE = Apache-2.0
ERLANG_P1_ICONV_LICENSE_FILES = LICENSE.txt
diff --git a/package/erlang-p1-oauth2/erlang-p1-oauth2.hash b/package/erlang-p1-oauth2/erlang-p1-oauth2.hash
index 29fae12636..58756c6fd7 100644
--- a/package/erlang-p1-oauth2/erlang-p1-oauth2.hash
+++ b/package/erlang-p1-oauth2/erlang-p1-oauth2.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 aea823ccc49b20f7e27f1893c7edf231339f56b16ba21ce78a60f735b6211718 erlang-p1-oauth2-0.6.2.tar.gz
+sha256 d7d954376ae7c131a0884c7c80b0b9e8270b6f574182df59ce4f2fbbae322854 erlang-p1-oauth2-0.6.3.tar.gz
diff --git a/package/erlang-p1-oauth2/erlang-p1-oauth2.mk b/package/erlang-p1-oauth2/erlang-p1-oauth2.mk
index 5c27393ae2..444bc8971b 100644
--- a/package/erlang-p1-oauth2/erlang-p1-oauth2.mk
+++ b/package/erlang-p1-oauth2/erlang-p1-oauth2.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_OAUTH2_VERSION = 0.6.2
+ERLANG_P1_OAUTH2_VERSION = 0.6.3
ERLANG_P1_OAUTH2_SITE = $(call github,processone,p1_oauth2,$(ERLANG_P1_OAUTH2_VERSION))
ERLANG_P1_OAUTH2_LICENSE = MIT
ERLANG_P1_OAUTH2_LICENSE_FILES = LICENSE
diff --git a/package/erlang-p1-sip/0002-remove-dependencies-from-rebar-config.patch b/package/erlang-p1-sip/0002-remove-dependencies-from-rebar-config.patch
deleted file mode 100644
index da86076988..0000000000
--- a/package/erlang-p1-sip/0002-remove-dependencies-from-rebar-config.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Without this patch, dependencies would be downloaded and compiled
-by rebar at build time.
-
-Signed-off-by: Christophe Romain <cromain@process-one.net>
-
-diff --git a/rebar.config b/rebar.config
-index ed93134..5b32788 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -31,10 +31,6 @@
-
- {port_specs, [{"priv/lib/esip_drv.so", ["c_src/esip_codec.c"]}]}.
-
--{deps, [{stun, ".*", {git, "https://github.com/processone/stun", {tag, "1.0.16"}}},
-- {fast_tls, ".*", {git, "https://github.com/processone/fast_tls", {tag, "1.0.17"}}},
-- {p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
--
- {clean_files, ["c_src/esip_codec.gcda", "c_src/esip_codec.gcno"]}.
-
- {cover_enabled, true}.
diff --git a/package/erlang-p1-sip/erlang-p1-sip.hash b/package/erlang-p1-sip/erlang-p1-sip.hash
index 4d41b9884c..2cd057b976 100644
--- a/package/erlang-p1-sip/erlang-p1-sip.hash
+++ b/package/erlang-p1-sip/erlang-p1-sip.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 6ac36594921561d0d5502bb824b7408223a3f53560a9d2fa4b0f685c0441baf0 erlang-p1-sip-1.0.17.tar.gz
+sha256 be38cceff8e2207da24805b8e1c926cdf6d63ab116be12cd829f5a3a4e5e58ab erlang-p1-sip-1.0.26.tar.gz
diff --git a/package/erlang-p1-sip/erlang-p1-sip.mk b/package/erlang-p1-sip/erlang-p1-sip.mk
index a9f572df2d..846633873a 100644
--- a/package/erlang-p1-sip/erlang-p1-sip.mk
+++ b/package/erlang-p1-sip/erlang-p1-sip.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_SIP_VERSION = 1.0.17
+ERLANG_P1_SIP_VERSION = 1.0.26
ERLANG_P1_SIP_SITE = $(call github,processone,esip,$(ERLANG_P1_SIP_VERSION))
ERLANG_P1_SIP_LICENSE = Apache-2.0
ERLANG_P1_SIP_LICENSE_FILES = LICENSE.txt
diff --git a/package/erlang-p1-stringprep/erlang-p1-stringprep.hash b/package/erlang-p1-stringprep/erlang-p1-stringprep.hash
index 769e2180d6..5200d661a8 100644
--- a/package/erlang-p1-stringprep/erlang-p1-stringprep.hash
+++ b/package/erlang-p1-stringprep/erlang-p1-stringprep.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 baef9e6bd59e00c9d2600e8db87078c19d76cbf66d5068efeaf1df740ee306ce erlang-p1-stringprep-1.0.10.tar.gz
+sha256 32245561f84b03b9024c8768ad2ac8d67f285a032a7f36ff35a74c77fc701f96 erlang-p1-stringprep-1.0.14.tar.gz
diff --git a/package/erlang-p1-stringprep/erlang-p1-stringprep.mk b/package/erlang-p1-stringprep/erlang-p1-stringprep.mk
index f104a2ce87..a05752508c 100644
--- a/package/erlang-p1-stringprep/erlang-p1-stringprep.mk
+++ b/package/erlang-p1-stringprep/erlang-p1-stringprep.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_STRINGPREP_VERSION = 1.0.10
+ERLANG_P1_STRINGPREP_VERSION = 1.0.14
ERLANG_P1_STRINGPREP_SITE = $(call github,processone,stringprep,$(ERLANG_P1_STRINGPREP_VERSION))
ERLANG_P1_STRINGPREP_LICENSE = TCL (tools/*.tcl), Apache-2.0 (rest)
ERLANG_P1_STRINGPREP_LICENSE_FILES = LICENSE.ALL LICENSE.TCL LICENSE.txt
diff --git a/package/erlang-p1-stun/0001-remove-dependencies-from-rebar-config.patch b/package/erlang-p1-stun/0001-remove-dependencies-from-rebar-config.patch
deleted file mode 100644
index 7e6b4b5345..0000000000
--- a/package/erlang-p1-stun/0001-remove-dependencies-from-rebar-config.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Without this patch, dependencies would be downloaded and compiled
-by rebar at build time.
-
-diff --git a/rebar.config b/rebar.config
-index f02ea40..d0af863 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -22,9 +22,6 @@
-
- {erl_opts, [debug_info, {i, "include"}]}.
-
--{deps, [{fast_tls, ".*", {git, "https://github.com/processone/fast_tls", {tag, "1.0.17"}}},
-- {p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
--
- {cover_enabled, true}.
- {cover_export_enabled, true}.
diff --git a/package/erlang-p1-stun/erlang-p1-stun.hash b/package/erlang-p1-stun/erlang-p1-stun.hash
index ee32834e34..7400a276a0 100644
--- a/package/erlang-p1-stun/erlang-p1-stun.hash
+++ b/package/erlang-p1-stun/erlang-p1-stun.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 8efe2f47c2460b1e0d68a680dcfcd938a2bc98c85abb5b100c15246fe6a25506 erlang-p1-stun-1.0.16.tar.gz
+sha256 a5a59ae3c75290029aa062ef19ecd52b8377959a8eb7352bd2a62c4ff1dd0613 erlang-p1-stun-1.0.25.tar.gz
diff --git a/package/erlang-p1-stun/erlang-p1-stun.mk b/package/erlang-p1-stun/erlang-p1-stun.mk
index 42bbc758e5..32bdd4f245 100644
--- a/package/erlang-p1-stun/erlang-p1-stun.mk
+++ b/package/erlang-p1-stun/erlang-p1-stun.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_STUN_VERSION = 1.0.16
+ERLANG_P1_STUN_VERSION = 1.0.25
ERLANG_P1_STUN_SITE = $(call github,processone,stun,$(ERLANG_P1_STUN_VERSION))
ERLANG_P1_STUN_LICENSE = Apache-2.0
ERLANG_P1_STUN_LICENSE_FILES = LICENSE.txt
diff --git a/package/erlang-p1-tls/erlang-p1-tls.hash b/package/erlang-p1-tls/erlang-p1-tls.hash
index b5b800b202..af635e5221 100644
--- a/package/erlang-p1-tls/erlang-p1-tls.hash
+++ b/package/erlang-p1-tls/erlang-p1-tls.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 ca9670b7f78a025b101e3fee6255d7472d6b52abc46444cc45616c3d1bd75b9b erlang-p1-tls-1.0.17.tar.gz
+sha256 5bb883b03514999876c750cdb08a5e4cf80a9eb89319037b612e1265c43f6f6d erlang-p1-tls-1.0.25.tar.gz
diff --git a/package/erlang-p1-tls/erlang-p1-tls.mk b/package/erlang-p1-tls/erlang-p1-tls.mk
index ad7317dc8c..b569664465 100644
--- a/package/erlang-p1-tls/erlang-p1-tls.mk
+++ b/package/erlang-p1-tls/erlang-p1-tls.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_TLS_VERSION = 1.0.17
+ERLANG_P1_TLS_VERSION = 1.0.25
ERLANG_P1_TLS_SITE = $(call github,processone,fast_tls,$(ERLANG_P1_TLS_VERSION))
ERLANG_P1_TLS_LICENSE = Apache-2.0
ERLANG_P1_TLS_LICENSE_FILES = LICENSE.txt
diff --git a/package/erlang-p1-utils/erlang-p1-utils.hash b/package/erlang-p1-utils/erlang-p1-utils.hash
index 950a5540d7..db925bddd1 100644
--- a/package/erlang-p1-utils/erlang-p1-utils.hash
+++ b/package/erlang-p1-utils/erlang-p1-utils.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 57bfc575179733a723717f4fecb65b9f7fd056595f798b52e7bc0206e8a9333f erlang-p1-utils-1.0.10.tar.gz
+sha256 8f21fc0472c314572ebb066d624cb5463cf5b016e18b7fd7dca9dca2a4589382 erlang-p1-utils-1.0.13.tar.gz
diff --git a/package/erlang-p1-utils/erlang-p1-utils.mk b/package/erlang-p1-utils/erlang-p1-utils.mk
index 6a4920738c..6025e3f56c 100644
--- a/package/erlang-p1-utils/erlang-p1-utils.mk
+++ b/package/erlang-p1-utils/erlang-p1-utils.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_UTILS_VERSION = 1.0.10
+ERLANG_P1_UTILS_VERSION = 1.0.13
ERLANG_P1_UTILS_SITE = $(call github,processone,p1_utils,$(ERLANG_P1_UTILS_VERSION))
ERLANG_P1_UTILS_LICENSE = Apache-2.0
ERLANG_P1_UTILS_LICENSE_FILES = LICENSE.txt
diff --git a/package/erlang-p1-xml/0001-remove-dependencies-from-rebar-config.patch b/package/erlang-p1-xml/0001-remove-dependencies-from-rebar-config.patch
deleted file mode 100644
index b58db3f2c5..0000000000
--- a/package/erlang-p1-xml/0001-remove-dependencies-from-rebar-config.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Without this patch, dependencies would be downloaded and compiled
-by rebar at build time.
-
-Signed-off-by: Christophe Romain <cromain@process-one.net>
-
-diff --git a/rebar.config b/rebar.config
-index 99f5047..ac2f3b2 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -32,8 +32,6 @@
- {port_specs, [{"priv/lib/fxml.so", ["c_src/fxml.c"]},
- {"priv/lib/fxml_stream.so", ["c_src/fxml_stream.c"]}]}.
-
--{deps, [{p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
--
- {clean_files, ["c_src/fxml.gcda", "c_src/fxml.gcno", "c_src/fxml_stream.gcda", "c_src/fxml_stream.gcno"]}.
-
- {cover_enabled, true}.
diff --git a/package/erlang-p1-xml/erlang-p1-xml.hash b/package/erlang-p1-xml/erlang-p1-xml.hash
index ae3f3241c6..ac8042da64 100644
--- a/package/erlang-p1-xml/erlang-p1-xml.hash
+++ b/package/erlang-p1-xml/erlang-p1-xml.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 aeda4051c08b78e2f036d82705433a667d03736f07ff0054862e82105435e285 erlang-p1-xml-1.1.25.tar.gz
+sha256 8615f77a1448e297af25f85261b6e4a84952af797da2e317c8ec71fe2fe779ac erlang-p1-xml-1.1.34.tar.gz
diff --git a/package/erlang-p1-xml/erlang-p1-xml.mk b/package/erlang-p1-xml/erlang-p1-xml.mk
index ff9999834d..c8c65ff423 100644
--- a/package/erlang-p1-xml/erlang-p1-xml.mk
+++ b/package/erlang-p1-xml/erlang-p1-xml.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_XML_VERSION = 1.1.25
+ERLANG_P1_XML_VERSION = 1.1.34
ERLANG_P1_XML_SITE = $(call github,processone,fast_xml,$(ERLANG_P1_XML_VERSION))
ERLANG_P1_XML_LICENSE = Apache-2.0
ERLANG_P1_XML_LICENSE_FILES = LICENSE.txt
diff --git a/package/erlang-p1-xmpp/0002-remove-dependencies-from-rebar-config.patch b/package/erlang-p1-xmpp/0002-remove-dependencies-from-rebar-config.patch
deleted file mode 100644
index fed44f626d..0000000000
--- a/package/erlang-p1-xmpp/0002-remove-dependencies-from-rebar-config.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Without this patch, dependencies would be downloaded and compiled
-by rebar at build time.
-
-Signed-off-by: Christophe Romain <cromain@process-one.net>
-
-diff --git a/rebar.config b/rebar.config
---- a/rebar.config 2017-11-30 14:24:52.348695123 +0100
-+++ b/rebar.config 2017-11-30 14:35:11.816407195 +0100
-@@ -29,10 +29,6 @@
-
- {port_specs, [{"priv/lib/jid.so", ["c_src/jid.c"]}]}.
-
--{deps, [{fast_xml, ".*", {git, "https://github.com/processone/fast_xml", {tag, "1.1.25"}}},
-- {stringprep, ".*", {git, "https://github.com/processone/stringprep", {tag, "1.0.10"}}},
-- {p1_utils, ".*", {git, "https://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
--
- {clean_files, ["c_src/jid.gcda", "c_src/jid.gcno"]}.
-
- {cover_enabled, true}.
diff --git a/package/erlang-p1-xmpp/Config.in b/package/erlang-p1-xmpp/Config.in
index 9b33e0c609..6e40fed10a 100644
--- a/package/erlang-p1-xmpp/Config.in
+++ b/package/erlang-p1-xmpp/Config.in
@@ -6,7 +6,9 @@ config BR2_PACKAGE_ERLANG_P1_XMPP
depends on BR2_INSTALL_LIBSTDCPP # erlang-p1-stringprep
select BR2_PACKAGE_ERLANG_P1_XML
select BR2_PACKAGE_ERLANG_P1_STRINGPREP
+ select BR2_PACKAGE_ERLANG_P1_TLS
select BR2_PACKAGE_ERLANG_P1_UTILS
+ select BR2_PACKAGE_ERLANG_P1_ZLIB
help
XMPP library for Erlang.
diff --git a/package/erlang-p1-xmpp/erlang-p1-xmpp.hash b/package/erlang-p1-xmpp/erlang-p1-xmpp.hash
index d3d2dafb9e..e1c63a6065 100644
--- a/package/erlang-p1-xmpp/erlang-p1-xmpp.hash
+++ b/package/erlang-p1-xmpp/erlang-p1-xmpp.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 558e8d8734052bdbe679cf10165a63944c208940ab84be78c97ba661dfcf3cb2 erlang-p1-xmpp-1.1.16.tar.gz
+sha256 699f50d50850272e67160b022fd27f3ccc46570e48968d8ee30d491bf926794d erlang-p1-xmpp-1.2.5.tar.gz
diff --git a/package/erlang-p1-xmpp/erlang-p1-xmpp.mk b/package/erlang-p1-xmpp/erlang-p1-xmpp.mk
index 096876ca34..e20a84f4a3 100644
--- a/package/erlang-p1-xmpp/erlang-p1-xmpp.mk
+++ b/package/erlang-p1-xmpp/erlang-p1-xmpp.mk
@@ -4,13 +4,13 @@
#
################################################################################
-ERLANG_P1_XMPP_VERSION = 1.1.16
+ERLANG_P1_XMPP_VERSION = 1.2.5
ERLANG_P1_XMPP_SITE = $(call github,processone,xmpp,$(ERLANG_P1_XMPP_VERSION))
ERLANG_P1_XMPP_LICENSE = Apache-2.0
ERLANG_P1_XMPP_LICENSE_FILES = LICENSE.txt
ERLANG_P1_XMPP_INSTALL_STAGING = YES
ERLANG_P1_XMPP_DEPENDENCIES = erlang-p1-xml erlang-p1-stringprep \
- erlang-p1-utils host-erlang-p1-xml
+ erlang-p1-tls erlang-p1-utils erlang-p1-zlib host-erlang-p1-xml
$(eval $(rebar-package))
$(eval $(host-rebar-package))
diff --git a/package/erlang-p1-yaml/0001-remove-dependencies-from-rebar-config.patch b/package/erlang-p1-yaml/0001-remove-dependencies-from-rebar-config.patch
deleted file mode 100644
index 4dfdb929c1..0000000000
--- a/package/erlang-p1-yaml/0001-remove-dependencies-from-rebar-config.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Without this patch, dependencies would be downloaded and compiled
-by rebar at build time.
-
-Signed-off-by: Christophe Romain <cromain@process-one.net>
-
-diff --git a/rebar.config b/rebar.config
-index e09d08d..651a829 100644
---- a/rebar.config
-+++ b/rebar.config
-@@ -24,8 +24,6 @@
- {port_env, [{"CFLAGS", "$CFLAGS"}, {"LDFLAGS", "$LDFLAGS -lyaml"}]}.
- {port_specs, [{"priv/lib/fast_yaml.so", ["c_src/fast_yaml.c"]}]}.
-
--{deps, [{p1_utils, ".*", {git, "git://github.com/processone/p1_utils", {tag, "1.0.10"}}}]}.
--
- {clean_files, ["c_src/fast_yaml.gcda", "c_src/fast_yaml.gcno"]}.
-
- {cover_enabled, true}.
diff --git a/package/erlang-p1-yaml/erlang-p1-yaml.hash b/package/erlang-p1-yaml/erlang-p1-yaml.hash
index 24282e6c37..2f3b181f6a 100644
--- a/package/erlang-p1-yaml/erlang-p1-yaml.hash
+++ b/package/erlang-p1-yaml/erlang-p1-yaml.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 5a6499a47cdd1f753a527cb8b79074312354063535adc0ca0fd7f72c2a015e3a erlang-p1-yaml-1.0.12.tar.gz
+sha256 d2675ec9b2f64eba6c3437597e3abe3bfaae2172560784456a2763d1d1a50b08 erlang-p1-yaml-1.0.17.tar.gz
diff --git a/package/erlang-p1-yaml/erlang-p1-yaml.mk b/package/erlang-p1-yaml/erlang-p1-yaml.mk
index de138a9f93..d4173988f3 100644
--- a/package/erlang-p1-yaml/erlang-p1-yaml.mk
+++ b/package/erlang-p1-yaml/erlang-p1-yaml.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_YAML_VERSION = 1.0.12
+ERLANG_P1_YAML_VERSION = 1.0.17
ERLANG_P1_YAML_SITE = $(call github,processone,fast_yaml,$(ERLANG_P1_YAML_VERSION))
ERLANG_P1_YAML_LICENSE = Apache-2.0
ERLANG_P1_YAML_LICENSE_FILES = LICENSE.txt
diff --git a/package/erlang-p1-zlib/erlang-p1-zlib.hash b/package/erlang-p1-zlib/erlang-p1-zlib.hash
index dc14dd0707..6717abdde0 100644
--- a/package/erlang-p1-zlib/erlang-p1-zlib.hash
+++ b/package/erlang-p1-zlib/erlang-p1-zlib.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 8396f9cb17fdb195d9a2537ad76327bf930d66118b87b7108f27e5ed28b7cde6 erlang-p1-zlib-1.0.3.tar.gz
+sha256 3328661c512c28e68db69b82202b8d6c4127f31f2aefc5b0040ba9bce6abe9b3 erlang-p1-zlib-1.0.4.tar.gz
diff --git a/package/erlang-p1-zlib/erlang-p1-zlib.mk b/package/erlang-p1-zlib/erlang-p1-zlib.mk
index bc53efccd7..f62eff6377 100644
--- a/package/erlang-p1-zlib/erlang-p1-zlib.mk
+++ b/package/erlang-p1-zlib/erlang-p1-zlib.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ERLANG_P1_ZLIB_VERSION = 1.0.3
+ERLANG_P1_ZLIB_VERSION = 1.0.4
ERLANG_P1_ZLIB_SITE = $(call github,processone,ezlib,$(ERLANG_P1_ZLIB_VERSION))
ERLANG_P1_ZLIB_LICENSE = Apache-2.0
ERLANG_P1_ZLIB_LICENSE_FILES = LICENSE.txt
diff --git a/package/ethtool/ethtool.hash b/package/ethtool/ethtool.hash
index bac7401d3c..b918dca308 100644
--- a/package/ethtool/ethtool.hash
+++ b/package/ethtool/ethtool.hash
@@ -1,5 +1,5 @@
# From https://www.kernel.org/pub/software/network/ethtool/sha256sums.asc
-sha256 fe967a6722db2099fa63d847b6628e3e31cf9f53571a37503347dcc3e4015a03 ethtool-4.16.tar.xz
+sha256 b18a6c364e42c29cdac057cf183c9674163db96b30848adfa8c2a90450f6d0c8 ethtool-4.19.tar.xz
# Locally calculated
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
sha256 5d632934396f90c82dfebe3c9512648bbb6333b406113d0cd331b0e0aa2d34a1 LICENSE
diff --git a/package/ethtool/ethtool.mk b/package/ethtool/ethtool.mk
index b974b5f76e..ae15800b19 100644
--- a/package/ethtool/ethtool.mk
+++ b/package/ethtool/ethtool.mk
@@ -4,7 +4,7 @@
#
################################################################################
-ETHTOOL_VERSION = 4.16
+ETHTOOL_VERSION = 4.19
ETHTOOL_SOURCE = ethtool-$(ETHTOOL_VERSION).tar.xz
ETHTOOL_SITE = $(BR2_KERNEL_MIRROR)/software/network/ethtool
ETHTOOL_LICENSE = GPL-2.0
diff --git a/package/eudev/eudev.hash b/package/eudev/eudev.hash
index 3fa47980ec..33556a2d25 100644
--- a/package/eudev/eudev.hash
+++ b/package/eudev/eudev.hash
@@ -1,5 +1,5 @@
# From http://dev.gentoo.org/~blueness/eudev/
-md5 6ca08c0e14380f87df8e8aceac123671 eudev-3.2.5.tar.gz
+md5 c75d99910c1791dd9430d26ab76059c0 eudev-3.2.7.tar.gz
# Locally calculated
-sha256 49c2d04105cad2526302627e040fa24b1916a9a3e059539bc8bb919b973890af eudev-3.2.5.tar.gz
+sha256 3004614bd253c1f98558460215027aaf60d7592c70be27fd384ec01db87bf062 eudev-3.2.7.tar.gz
sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING
diff --git a/package/eudev/eudev.mk b/package/eudev/eudev.mk
index 11dc93762b..d88e010c28 100644
--- a/package/eudev/eudev.mk
+++ b/package/eudev/eudev.mk
@@ -4,7 +4,7 @@
#
################################################################################
-EUDEV_VERSION = 3.2.5
+EUDEV_VERSION = 3.2.7
EUDEV_SITE = http://dev.gentoo.org/~blueness/eudev
EUDEV_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (libraries)
EUDEV_LICENSE_FILES = COPYING
diff --git a/package/fail2ban/Config.in b/package/fail2ban/Config.in
new file mode 100644
index 0000000000..8fa63bfdcb
--- /dev/null
+++ b/package/fail2ban/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_FAIL2BAN
+ bool "fail2ban"
+ depends on BR2_PACKAGE_PYTHON
+ help
+ Fail2ban scans log files (e.g. /var/log/apache/error_log) and
+ bans IPs that show the malicious signs -- too many password
+ failures, seeking for exploits, etc. Out of the box Fail2Ban
+ comes with filters for various services (apache, courier,
+ ssh, etc).
+
+ Fail2Ban is able to reduce the rate of incorrect
+ authentications attempts however it cannot eliminate the risk
+ that weak authentication presents.
+
+ https://www.fail2ban.org
diff --git a/package/fail2ban/S60fail2ban b/package/fail2ban/S60fail2ban
new file mode 100644
index 0000000000..b181ecde2c
--- /dev/null
+++ b/package/fail2ban/S60fail2ban
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+case "$1" in
+ start)
+ printf "Starting fail2ban: "
+ start-stop-daemon -S -q -m -p /var/run/fail2ban.pid \
+ -b -x fail2ban-server -- -xf start
+ [ $? = 0 ] && echo "OK" || echo "FAIL"
+ ;;
+ stop)
+ printf "Stopping fail2ban: "
+ start-stop-daemon -K -q -p /var/run/fail2ban.pid
+ [ $? = 0 ] && echo "OK" || echo "FAIL"
+ ;;
+ restart)
+ "$0" stop
+ sleep 1
+ "$0" start
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart}"
+ ;;
+esac
diff --git a/package/fail2ban/fail2ban.hash b/package/fail2ban/fail2ban.hash
new file mode 100644
index 0000000000..25d120c115
--- /dev/null
+++ b/package/fail2ban/fail2ban.hash
@@ -0,0 +1,3 @@
+# sha256 locally computed
+sha256 d6ca1bbc7e7944f7acb2ba7c1065953cd9837680bc4d175f30ed155c6a372449 fail2ban-0.10.4.tar.gz
+sha256 a75fec0260742fe6275d63ff6a5d97b924b28766558306b3fa4069763096929b COPYING
diff --git a/package/fail2ban/fail2ban.mk b/package/fail2ban/fail2ban.mk
new file mode 100644
index 0000000000..b7e6bdc1a6
--- /dev/null
+++ b/package/fail2ban/fail2ban.mk
@@ -0,0 +1,27 @@
+################################################################################
+#
+# fail2ban
+#
+################################################################################
+
+FAIL2BAN_VERSION = 0.10.4
+FAIL2BAN_SITE = $(call github,fail2ban,fail2ban,$(FAIL2BAN_VERSION))
+FAIL2BAN_LICENSE = GPL-2.0+
+FAIL2BAN_LICENSE_FILES = COPYING
+FAIL2BAN_SETUP_TYPE = distutils
+
+define FAIL2BAN_INSTALL_INIT_SYSV
+ $(INSTALL) -D -m 755 package/fail2ban/S60fail2ban \
+ $(TARGET_DIR)/etc/init.d/S60fail2ban
+endef
+
+define FAIL2BAN_INSTALL_INIT_SYSTEMD
+ $(INSTALL) -D -m 0644 $(@D)/files/fail2ban.service.in \
+ $(TARGET_DIR)/usr/lib/systemd/system/fail2ban.service
+ mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+ ln -fs ../../../../usr/lib//systemd/system/fail2ban.service \
+ $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/fail2ban.service
+ $(SED) 's,@BINDIR@,/usr/bin,g' $(TARGET_DIR)/usr/lib/systemd/system/fail2ban.service
+endef
+
+$(eval $(python-package))
diff --git a/package/fontconfig/Config.in b/package/fontconfig/Config.in
index 218fdb2e7a..d274b06350 100644
--- a/package/fontconfig/Config.in
+++ b/package/fontconfig/Config.in
@@ -2,6 +2,8 @@ config BR2_PACKAGE_FONTCONFIG
bool "fontconfig"
select BR2_PACKAGE_FREETYPE
select BR2_PACKAGE_EXPAT
+ select BR2_PACKAGE_UTIL_LINUX
+ select BR2_PACKAGE_UTIL_LINUX_LIBUUID
help
Fontconfig is a library for configuring and customizing font
access.
diff --git a/package/fontconfig/fontconfig.hash b/package/fontconfig/fontconfig.hash
index e9963f6f3f..5243c09615 100644
--- a/package/fontconfig/fontconfig.hash
+++ b/package/fontconfig/fontconfig.hash
@@ -1,2 +1,2 @@
-# From https://lists.freedesktop.org/archives/fontconfig/2017-July/005961.html
-sha256 668293fcc4b3c59765cdee5cee05941091c0879edcc24dfec5455ef83912e45c fontconfig-2.12.4.tar.bz2
+# From https://lists.freedesktop.org/archives/fontconfig/2018-August/006324.html
+sha256 f655dd2a986d7aa97e052261b36aa67b0a64989496361eca8d604e6414006741 fontconfig-2.13.1.tar.bz2
diff --git a/package/fontconfig/fontconfig.mk b/package/fontconfig/fontconfig.mk
index 71a0b4579c..7387452b0f 100644
--- a/package/fontconfig/fontconfig.mk
+++ b/package/fontconfig/fontconfig.mk
@@ -4,12 +4,13 @@
#
################################################################################
-FONTCONFIG_VERSION = 2.12.4
+FONTCONFIG_VERSION = 2.13.1
FONTCONFIG_SITE = http://fontconfig.org/release
FONTCONFIG_SOURCE = fontconfig-$(FONTCONFIG_VERSION).tar.bz2
FONTCONFIG_INSTALL_STAGING = YES
-FONTCONFIG_DEPENDENCIES = freetype expat host-pkgconf host-gperf
-HOST_FONTCONFIG_DEPENDENCIES = host-freetype host-expat host-pkgconf host-gperf
+FONTCONFIG_DEPENDENCIES = freetype expat host-pkgconf host-gperf util-linux
+HOST_FONTCONFIG_DEPENDENCIES = \
+ host-freetype host-expat host-pkgconf host-gperf host-util-linux
FONTCONFIG_LICENSE = fontconfig license
FONTCONFIG_LICENSE_FILES = COPYING
diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index 1d4e946f55..58247367ec 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -9,10 +9,10 @@ choice
Select the version of gcc you wish to use.
config BR2_GCC_VERSION_ARC
- bool "gcc arc (7.x)"
+ bool "gcc arc (8.x)"
# Only supported architecture
depends on BR2_arc
- select BR2_TOOLCHAIN_GCC_AT_LEAST_7
+ select BR2_TOOLCHAIN_GCC_AT_LEAST_8
config BR2_GCC_VERSION_OR1K
bool "gcc or1k (5.x)"
@@ -85,7 +85,7 @@ config BR2_GCC_VERSION
default "6.4.0" if BR2_GCC_VERSION_6_X
default "7.3.0" if BR2_GCC_VERSION_7_X
default "8.2.0" if BR2_GCC_VERSION_8_X
- default "arc-2018.03" if BR2_GCC_VERSION_ARC
+ default "arc-2018.09" if BR2_GCC_VERSION_ARC
default "or1k-musl-5.4.0-20170218" if BR2_GCC_VERSION_OR1K
config BR2_EXTRA_GCC_CONFIG_OPTIONS
diff --git a/package/gcc/arc-2018.03/0860-cilk-fix-build-without-wchar.patch b/package/gcc/arc-2018.03/0860-cilk-fix-build-without-wchar.patch
deleted file mode 100644
index 61ab01c713..0000000000
--- a/package/gcc/arc-2018.03/0860-cilk-fix-build-without-wchar.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 714739e69ead1d9823233af40645277f6d4633ea Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <peter@korsgaard.com>
-Date: Tue, 2 May 2017 23:21:46 +0200
-Subject: [PATCH] cilk: fix build without wchar
-
-When building against uClibc with wchar support disabled, WCHAR_MIN and
-WCHAR_MAX are not defined leading to compilation errors.
-
-Fix it by only including the wchar code if available.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
-[Romain: convert to git patch]
-Signed-off-by: Romain Naour <romain.naour@gmail.com>
----
- libcilkrts/include/cilk/reducer_min_max.h | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/libcilkrts/include/cilk/reducer_min_max.h b/libcilkrts/include/cilk/reducer_min_max.h
-index 641aa82..4f8e010 100644
---- a/libcilkrts/include/cilk/reducer_min_max.h
-+++ b/libcilkrts/include/cilk/reducer_min_max.h
-@@ -3289,7 +3289,9 @@ __CILKRTS_BEGIN_EXTERN_C
- CILK_C_REDUCER_MAX_INSTANCE(char, char, CHAR_MIN)
- CILK_C_REDUCER_MAX_INSTANCE(unsigned char, uchar, 0)
- CILK_C_REDUCER_MAX_INSTANCE(signed char, schar, SCHAR_MIN)
-+#ifdef WCHAR_MIN
- CILK_C_REDUCER_MAX_INSTANCE(wchar_t, wchar_t, WCHAR_MIN)
-+#endif
- CILK_C_REDUCER_MAX_INSTANCE(short, short, SHRT_MIN)
- CILK_C_REDUCER_MAX_INSTANCE(unsigned short, ushort, 0)
- CILK_C_REDUCER_MAX_INSTANCE(int, int, INT_MIN)
-@@ -3441,7 +3443,9 @@ __CILKRTS_BEGIN_EXTERN_C
- CILK_C_REDUCER_MAX_INDEX_INSTANCE(char, char, CHAR_MIN)
- CILK_C_REDUCER_MAX_INDEX_INSTANCE(unsigned char, uchar, 0)
- CILK_C_REDUCER_MAX_INDEX_INSTANCE(signed char, schar, SCHAR_MIN)
-+#ifdef WCHAR_MIN
- CILK_C_REDUCER_MAX_INDEX_INSTANCE(wchar_t, wchar_t, WCHAR_MIN)
-+#endif
- CILK_C_REDUCER_MAX_INDEX_INSTANCE(short, short, SHRT_MIN)
- CILK_C_REDUCER_MAX_INDEX_INSTANCE(unsigned short, ushort, 0)
- CILK_C_REDUCER_MAX_INDEX_INSTANCE(int, int, INT_MIN)
-@@ -3567,7 +3571,9 @@ __CILKRTS_BEGIN_EXTERN_C
- CILK_C_REDUCER_MIN_INSTANCE(char, char, CHAR_MAX)
- CILK_C_REDUCER_MIN_INSTANCE(unsigned char, uchar, CHAR_MAX)
- CILK_C_REDUCER_MIN_INSTANCE(signed char, schar, SCHAR_MAX)
-+#ifdef WCHAR_MAX
- CILK_C_REDUCER_MIN_INSTANCE(wchar_t, wchar_t, WCHAR_MAX)
-+#endif
- CILK_C_REDUCER_MIN_INSTANCE(short, short, SHRT_MAX)
- CILK_C_REDUCER_MIN_INSTANCE(unsigned short, ushort, USHRT_MAX)
- CILK_C_REDUCER_MIN_INSTANCE(int, int, INT_MAX)
-@@ -3719,7 +3725,9 @@ __CILKRTS_BEGIN_EXTERN_C
- CILK_C_REDUCER_MIN_INDEX_INSTANCE(char, char, CHAR_MAX)
- CILK_C_REDUCER_MIN_INDEX_INSTANCE(unsigned char, uchar, CHAR_MAX)
- CILK_C_REDUCER_MIN_INDEX_INSTANCE(signed char, schar, SCHAR_MAX)
-+#ifdef WCHAR_MAX
- CILK_C_REDUCER_MIN_INDEX_INSTANCE(wchar_t, wchar_t, WCHAR_MAX)
-+#endif
- CILK_C_REDUCER_MIN_INDEX_INSTANCE(short, short, SHRT_MAX)
- CILK_C_REDUCER_MIN_INDEX_INSTANCE(unsigned short, ushort, USHRT_MAX)
- CILK_C_REDUCER_MIN_INDEX_INSTANCE(int, int, INT_MAX)
---
-2.9.3
-
diff --git a/package/gcc/arc-2018.03/0100-uclibc-conf.patch b/package/gcc/arc-2018.09/0100-uclibc-conf.patch
index d354baf81f..d354baf81f 100644
--- a/package/gcc/arc-2018.03/0100-uclibc-conf.patch
+++ b/package/gcc/arc-2018.09/0100-uclibc-conf.patch
diff --git a/package/gcc/gcc.hash b/package/gcc/gcc.hash
index 079bf7a2f6..042795261b 100644
--- a/package/gcc/gcc.hash
+++ b/package/gcc/gcc.hash
@@ -10,6 +10,6 @@ sha512 ad41a7e4584e40e92cdf860bc0288500fbaf5dfb7e8c3fcabe9eba809c87bcfa85b46c19
sha512 64898a165f67e136d802a92e7633bf1b06c85266027e52127ea025bf5fc2291b5e858288aac0bdba246e6cdf7c6ec88bc8e0e7f3f6f1985f4297710cafde56ed gcc-8.2.0.tar.xz
# Locally calculated (fetched from Github)
-sha512 7c6555d629957d154c9c0524fc2c82301c9ab9192f5b9175c47b1f2dde298ac032e86360d91866c3c4d001cf8e191a90dc88f3c900ebfc367c5888ab7bf2ce79 gcc-arc-2018.03.tar.gz
+sha512 f28a5d3606202c7f93951aaa084e3b9d55fd95fc64bbb96e910c9d90e695d40adca544bfb20296292610926b883f1e263cd0ca35e87ad4f96802842cbfcfd03b gcc-arc-2018.09.tar.gz
# Locally calculated (fetched from Github)
sha512 2de7cf47333a4092b02d3bb98f4206f14966f1d139a724d09cf3b22f8a43ae0c704f33e6477d6367a03c29b265480dc900169e9d417006c5d46f0ae446b8c6f1 gcc-or1k-musl-5.4.0-20170218.tar.gz
diff --git a/package/gcc/gcc.mk b/package/gcc/gcc.mk
index e47435677e..5901624ea5 100644
--- a/package/gcc/gcc.mk
+++ b/package/gcc/gcc.mk
@@ -87,7 +87,7 @@ HOST_GCC_COMMON_DEPENDENCIES = \
HOST_GCC_COMMON_CONF_OPTS = \
--target=$(GNU_TARGET_NAME) \
--with-sysroot=$(STAGING_DIR) \
- --disable-__cxa_atexit \
+ --enable-__cxa_atexit \
--with-gnu-ld \
--disable-libssp \
--disable-multilib \
diff --git a/package/gdb/Config.in.host b/package/gdb/Config.in.host
index ade2371d5c..28d325be1b 100644
--- a/package/gdb/Config.in.host
+++ b/package/gdb/Config.in.host
@@ -94,7 +94,7 @@ config BR2_PACKAGE_GDB_NEEDS_CXX11
# If cross-gdb is not enabled, the latest working version is chosen.
config BR2_GDB_VERSION
string
- default "arc-2018.03-gdb" if BR2_arc
+ default "arc-2018.09-gdb" if BR2_arc
default "7.12.1" if BR2_GDB_VERSION_7_12
default "8.0.1" if BR2_GDB_VERSION_8_0
default "8.1.1" if BR2_GDB_VERSION_8_1 || !BR2_PACKAGE_HOST_GDB
diff --git a/package/gdb/gdb.hash b/package/gdb/gdb.hash
index f7c7b80327..3540492ac8 100644
--- a/package/gdb/gdb.hash
+++ b/package/gdb/gdb.hash
@@ -5,4 +5,4 @@ sha512 7dcd5e8c90de92f577834d887b5f54edb93a07083bfe661bc46c270a6cc4919f0b348e7e
sha512 11cc481bebc51eb6db73249ecb62b8c07455cf3db169f4860b3a83114849fbd2b5860a2db64488ba6c5909cf07b255c04770f1e36059eae6bee16d2a3581be90 gdb-8.2.tar.xz
# Locally calculated (fetched from Github)
-sha512 b17e4066730491f6a75b00eab78012f67cc445fe95ecd82c06cda7c1255190e6c471ac89b92f2fcdba4790b0046756b9cecf1f827537afcb44e1e578345852ad gdb-arc-2018.03-gdb.tar.gz
+sha512 e35cbf8ac80af61ce1497f46d5fe226bb6abb866e6b53ab79b83be5f052f0d2b66b6789bf4c49d45f634d9747a1f6b88585c711c0e2796353cadef85badbd895 gdb-arc-2018.09-gdb.tar.gz
diff --git a/package/glibc/arc-2018.03-release/glibc.hash b/package/glibc/arc-2018.09-release/glibc.hash
index f3b10d9105..8e70ce0436 100644
--- a/package/glibc/arc-2018.03-release/glibc.hash
+++ b/package/glibc/arc-2018.09-release/glibc.hash
@@ -1,7 +1,7 @@
# Locally calculated (fetched from Github)
-sha256 e08ab67b2db2d0f0e8f3311d23c54fb8f6d4c1ef6fa0b4047fd5da400e3ce9de glibc-arc-2018.03-release.tar.gz
+sha256 cc2aa6b16641ebcf1492bf6245897d8c263c96b6e30375d09351306a12b6d529 glibc-arc-2018.09-release.tar.gz
# Hashes for license files
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
-sha256 61abdd6930c9c599062d89e916b3e7968783879b6be0ee1c6229dd6169def431 LICENSES
+sha256 35bdb41dc0bcb10702ddacbd51ec4c0fe6fb3129f734e8c85fc02e4d3eb0ce3f LICENSES
diff --git a/package/glibc/glibc.mk b/package/glibc/glibc.mk
index 88178d7eb9..94c7834754 100644
--- a/package/glibc/glibc.mk
+++ b/package/glibc/glibc.mk
@@ -5,7 +5,7 @@
################################################################################
ifeq ($(BR2_arc),y)
-GLIBC_VERSION = arc-2018.03-release
+GLIBC_VERSION = arc-2018.09-release
GLIBC_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,glibc,$(GLIBC_VERSION))
else
# Generate version string using:
diff --git a/package/grpc/0001-target-build-using-host-plugin.patch b/package/grpc/0001-target-build-using-host-plugin.patch
new file mode 100644
index 0000000000..5993987bc8
--- /dev/null
+++ b/package/grpc/0001-target-build-using-host-plugin.patch
@@ -0,0 +1,52 @@
+From aa18148e392ef28275a182db34397ccb66fb4617 Mon Sep 17 00:00:00 2001
+From: Robert Rose <robertroyrose@gmail.com>
+Date: Wed, 28 Nov 2018 09:41:52 -0800
+Subject: [PATCH] CMakeLists.txt: allow passing a pre-existing grpc_cpp_plugin
+
+The grpc_cpp_plugin is meant to be executed during the build process
+of grpc. As such, in cross-compilation contexts, this program needs to
+be built for the host machine and not the target machine. In order to
+allow this, this commit adds an option gRPC_NATIVE_CPP_PLUGIN that can
+be passed on the command line, with the path to an existing
+grpc_cpp_plugin binary. If not passed, grpc_cpp_plugin is built as
+usual.
+
+Signed-off-by: Robert Rose <robertroyrose@gmail.com>
+---
+ CMakeLists.txt | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index fc76cf5..7a22b08 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -13108,6 +13108,18 @@ target_link_libraries(grpc_cli
+ endif (gRPC_BUILD_TESTS)
+ if (gRPC_BUILD_CODEGEN)
+
++if (gRPC_NATIVE_CPP_PLUGIN)
++
++add_executable(grpc_cpp_plugin
++ IMPORTED
++)
++
++set_property(TARGET grpc_cpp_plugin
++ PROPERTY IMPORTED_LOCATION ${gRPC_NATIVE_CPP_PLUGIN}
++)
++
++else()
++
+ add_executable(grpc_cpp_plugin
+ src/compiler/cpp_plugin.cc
+ )
+@@ -13143,6 +13155,7 @@ if (gRPC_INSTALL)
+ ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}
+ )
+ endif()
++endif()
+
+ endif (gRPC_BUILD_CODEGEN)
+ if (gRPC_BUILD_CODEGEN)
+--
+2.20.0.rc0.387.gc7a69e6b6c-goog
+
diff --git a/package/grpc/Config.in b/package/grpc/Config.in
new file mode 100644
index 0000000000..3b17400612
--- /dev/null
+++ b/package/grpc/Config.in
@@ -0,0 +1,23 @@
+config BR2_PACKAGE_GRPC
+ bool "grpc"
+ depends on BR2_INSTALL_LIBSTDCPP # protobuf
+ depends on BR2_TOOLCHAIN_HAS_THREADS # protobuf
+ depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS # protobuf
+ depends on BR2_HOST_GCC_AT_LEAST_4_8 # protobuf
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # protobuf
+ depends on !BR2_STATIC_LIBS # protobuf
+ select BR2_PACKAGE_C_ARES
+ select BR2_PACKAGE_OPENSSL
+ select BR2_PACKAGE_PROTOBUF
+ select BR2_PACKAGE_ZLIB
+ help
+ A language-neutral, platform-neutral, open source, remote
+ procedure call (RPC) system initially developed at Google.
+
+ http://github.com/grpc/grpc
+
+comment "grpc needs a toolchain w/ C++, threads, dynamic library, host and target gcc >= 4.8"
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \
+ || BR2_STATIC_LIBS || !BR2_HOST_GCC_AT_LEAST_4_8 \
+ || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+ depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
diff --git a/package/grpc/grpc.hash b/package/grpc/grpc.hash
new file mode 100644
index 0000000000..9e5011125a
--- /dev/null
+++ b/package/grpc/grpc.hash
@@ -0,0 +1,3 @@
+# Locally computed
+sha256 a5342629fe1b689eceb3be4d4f167b04c70a84b9d61cf8b555e968bc500bdb5a grpc-v1.16.1.tar.gz
+sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE
diff --git a/package/grpc/grpc.mk b/package/grpc/grpc.mk
new file mode 100644
index 0000000000..6ca6536fff
--- /dev/null
+++ b/package/grpc/grpc.mk
@@ -0,0 +1,35 @@
+################################################################################
+#
+# grpc
+#
+################################################################################
+
+GRPC_VERSION = v1.16.1
+GRPC_SITE = $(call github,grpc,grpc,$(GRPC_VERSION))
+GRPC_LICENSE = Apache-2.0
+GRPC_LICENSE_FILES = LICENSE
+
+GRPC_INSTALL_STAGING = YES
+
+# Need to use host grpc_cpp_plugin during cross compilation.
+GRPC_DEPENDENCIES = c-ares host-grpc openssl protobuf zlib
+HOST_GRPC_DEPENDENCIES = host-c-ares host-openssl host-protobuf host-zlib
+
+GRPC_CONF_OPTS = \
+ -D_gRPC_CARES_LIBRARIES=cares \
+ -DgRPC_CARES_PROVIDER=none \
+ -DgRPC_PROTOBUF_PROVIDER=package \
+ -DgRPC_SSL_PROVIDER=package \
+ -DgRPC_ZLIB_PROVIDER=package \
+ -DgRPC_NATIVE_CPP_PLUGIN=$(HOST_DIR)/bin/grpc_cpp_plugin
+
+HOST_GRPC_CONF_OPTS = \
+ -D_gRPC_CARES_LIBRARIES=cares \
+ -DgRPC_CARES_PROVIDER=none \
+ -DgRPC_CARES_PROVIDER=none \
+ -DgRPC_PROTOBUF_PROVIDER=package \
+ -DgRPC_SSL_PROVIDER=package \
+ -DgRPC_ZLIB_PROVIDER=package
+
+$(eval $(cmake-package))
+$(eval $(host-cmake-package))
diff --git a/package/gzip/gzip.mk b/package/gzip/gzip.mk
index d48cb1aa15..8ac6ddd6ed 100644
--- a/package/gzip/gzip.mk
+++ b/package/gzip/gzip.mk
@@ -12,6 +12,7 @@ GZIP_CONF_OPTS = --exec-prefix=/
GZIP_LICENSE = GPL-3.0+
GZIP_LICENSE_FILES = COPYING
GZIP_CONF_ENV += gl_cv_func_fflush_stdin=yes
+HOST_GZIP_CONF_ENV += gl_cv_func_fflush_stdin=yes
# configure substitutes $(SHELL) for the shell shebang in scripts like
# gzexe. Unfortunately, the same $(SHELL) variable will also be used by
# make to run its commands. Fortunately, /bin/sh is always a POSIX shell
@@ -21,3 +22,4 @@ GZIP_CONF_ENV += gl_cv_func_fflush_stdin=yes
GZIP_CONF_ENV += ac_cv_path_shell=/bin/sh
$(eval $(autotools-package))
+$(eval $(host-autotools-package))
diff --git a/package/intel-microcode/intel-microcode.hash b/package/intel-microcode/intel-microcode.hash
index 999b27299d..183ba5aeec 100644
--- a/package/intel-microcode/intel-microcode.hash
+++ b/package/intel-microcode/intel-microcode.hash
@@ -1,3 +1,3 @@
# Locally computed
-sha256 0b381face2df1b0a829dc4fa8fa93f47f39e11b1c9c22ebd44f8614657c1e779 microcode-20180312.tgz
-sha256 6d4deb65ca688d930e188bf93f78430f134097b161e6df4a2ef00728e14965e3 license.txt
+sha256 46ab18699ec42eb6cc01ee1846ec4d7ca979766dee2156f92d69e2f6df548137 microcode-20180807a.tgz
+sha256 c4698c6105d59fec11ad0929e77a003445c560c7706c089990030acbf10c9372 license
diff --git a/package/intel-microcode/intel-microcode.mk b/package/intel-microcode/intel-microcode.mk
index e3134b6408..2113873509 100644
--- a/package/intel-microcode/intel-microcode.mk
+++ b/package/intel-microcode/intel-microcode.mk
@@ -4,23 +4,17 @@
#
################################################################################
-INTEL_MICROCODE_VERSION = 20180312
+INTEL_MICROCODE_VERSION = 20180807a
INTEL_MICROCODE_SOURCE = microcode-$(INTEL_MICROCODE_VERSION).tgz
-INTEL_MICROCODE_SITE = http://downloadmirror.intel.com/27591/eng
+INTEL_MICROCODE_SITE = https://downloadmirror.intel.com/28087/eng
INTEL_MICROCODE_STRIP_COMPONENTS = 0
INTEL_MICROCODE_LICENSE = PROPRIETARY
-INTEL_MICROCODE_LICENSE_FILES = license.txt
+INTEL_MICROCODE_LICENSE_FILES = license
INTEL_MICROCODE_REDISTRIBUTE = NO
-define INTEL_MICROCODE_EXTRACT_LICENSE
- head -n 33 $(@D)/microcode.dat > $(@D)/license.txt
-endef
-
-INTEL_MICROCODE_POST_EXTRACT_HOOKS += INTEL_MICROCODE_EXTRACT_LICENSE
-
define INTEL_MICROCODE_INSTALL_TARGET_CMDS
- $(INSTALL) -D -m 0644 $(@D)/microcode.dat \
- $(TARGET_DIR)/usr/share/misc/intel-microcode.dat
+ $(INSTALL) -D -m 0644 -t $(TARGET_DIR)/lib/firmware/intel-ucode \
+ $(@D)/intel-ucode/*
endef
$(eval $(generic-package))
diff --git a/package/ipset/ipset.hash b/package/ipset/ipset.hash
index f41111c022..5885fdbf60 100644
--- a/package/ipset/ipset.hash
+++ b/package/ipset/ipset.hash
@@ -1,6 +1,6 @@
-# From http://ftp.netfilter.org/pub/ipset/ipset-6.38.tar.bz2.md5sum.txt
-md5 0e5d9c85f6b78e7dff0c996e2900574b ipset-6.38.tar.bz2
+# From http://ipset.netfilter.org/ipset-7.0.tar.bz2.md5sum.txt
+md5 64c4e2e7123481c9db7ee1df127d9531 ipset-7.0.tar.bz2
# Calculated based on the hash above
-sha256 ceef625ba31fe0aaa422926c7231a819de0b07644c02c17ebdd3022a29e3e244 ipset-6.38.tar.bz2
+sha256 c6fa0f3b7d514e3edd0113ea02f82ab299e5467a4b7733dc31e127cdccc741af ipset-7.0.tar.bz2
# Locally calculated
sha256 231f7edcc7352d7734a96eef0b8030f77982678c516876fcb81e25b32d68564c COPYING
diff --git a/package/ipset/ipset.mk b/package/ipset/ipset.mk
index 3ec9448941..98bdcea674 100644
--- a/package/ipset/ipset.mk
+++ b/package/ipset/ipset.mk
@@ -4,7 +4,7 @@
#
################################################################################
-IPSET_VERSION = 6.38
+IPSET_VERSION = 7.0
IPSET_SOURCE = ipset-$(IPSET_VERSION).tar.bz2
IPSET_SITE = http://ipset.netfilter.org
IPSET_DEPENDENCIES = libmnl host-pkgconf
diff --git a/package/iptables/0001-ebtables-vlan-fix-userspace-kernel-headers-collision.patch b/package/iptables/0001-ebtables-vlan-fix-userspace-kernel-headers-collision.patch
new file mode 100644
index 0000000000..37c6f96af4
--- /dev/null
+++ b/package/iptables/0001-ebtables-vlan-fix-userspace-kernel-headers-collision.patch
@@ -0,0 +1,45 @@
+From 51d374ba41ae4f1bb851228c06b030b83dd2092f Mon Sep 17 00:00:00 2001
+From: Baruch Siach <baruch@tkos.co.il>
+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 <baruch@tkos.co.il>
+Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
+---
+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 <getopt.h>
+ #include <ctype.h>
+ #include <xtables.h>
++#include <netinet/if_ether.h>
+ #include <linux/netfilter_bridge/ebt_vlan.h>
+ #include <linux/if_ether.h>
+ #include "iptables/nft.h"
+--
+2.19.1
+
diff --git a/package/iptables/0001-extensions-libxt_bpf-Fix-build-with-old-kernel-versi.patch b/package/iptables/0001-extensions-libxt_bpf-Fix-build-with-old-kernel-versi.patch
deleted file mode 100644
index 966cbe31ab..0000000000
--- a/package/iptables/0001-extensions-libxt_bpf-Fix-build-with-old-kernel-versi.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 5beb1582d13d3bfdd0d2b277f5f3154b2fbf4a8e Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens <hauke@hauke-m.de>
-Date: Tue, 27 Feb 2018 16:56:55 +0100
-Subject: [PATCH] extensions: libxt_bpf: Fix build with old kernel versions
-
-In kernel 3.18 the union bpf_attr does not have a pathname attribute and
-BPF_OBJ_GET is also not defined in these versions.
-This was added in Linux commit b2197755b263 ("bpf: add support for
-persistent maps/progs"). Check for the BPF_FS_MAGIC define which was
-also added in this Linux commit and only activate this code in case we
-find that define.
-
-This fixes a build problem with Linux 3.18.
-Netfilter bug: #1231
-
-Fixes: f17f9ace8a8 ("extensions: libxt_bpf: support ebpf pinned objects")
-Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
-Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
-Patch status: upstream commit 5beb1582d13d
-
- extensions/libxt_bpf.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/extensions/libxt_bpf.c b/extensions/libxt_bpf.c
-index 9510c190f315..92958247c756 100644
---- a/extensions/libxt_bpf.c
-+++ b/extensions/libxt_bpf.c
-@@ -22,6 +22,7 @@
- #include <linux/bpf.h>
- #endif
-
-+#include <linux/magic.h>
- #include <linux/unistd.h>
-
- #define BCODE_FILE_MAX_LEN_B 1024
-@@ -62,7 +63,7 @@ static const struct xt_option_entry bpf_opts_v1[] = {
-
- static int bpf_obj_get(const char *filepath)
- {
--#if defined HAVE_LINUX_BPF_H && defined __NR_bpf
-+#if defined HAVE_LINUX_BPF_H && defined __NR_bpf && defined BPF_FS_MAGIC
- union bpf_attr attr;
-
- memset(&attr, 0, sizeof(attr));
---
-2.16.1
-
diff --git a/package/iptables/0002-xtables-monitor-fix-build-with-older-glibc.patch b/package/iptables/0002-xtables-monitor-fix-build-with-older-glibc.patch
new file mode 100644
index 0000000000..18dbc28f91
--- /dev/null
+++ b/package/iptables/0002-xtables-monitor-fix-build-with-older-glibc.patch
@@ -0,0 +1,77 @@
+From 7c8791edac3e74f6ce0bf21f98bc820db8e55e62 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <baruch@tkos.co.il>
+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 <baruch@tkos.co.il>
+Signed-off-by: Florian Westphal <fw@strlen.de>
+---
+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/package/iptables/0003-include-fix-build-with-kernel-headers-before-4.2.patch b/package/iptables/0003-include-fix-build-with-kernel-headers-before-4.2.patch
new file mode 100644
index 0000000000..c5cd6437f0
--- /dev/null
+++ b/package/iptables/0003-include-fix-build-with-kernel-headers-before-4.2.patch
@@ -0,0 +1,51 @@
+From 8d9d7e4b9ef4c6e6abab2cf35c747d7ca36824bd Mon Sep 17 00:00:00 2001
+From: Baruch Siach <baruch@tkos.co.il>
+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 <baruch@tkos.co.il>
+Signed-off-by: Florian Westphal <fw@strlen.de>
+---
+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 <linux/types.h>
+
++#ifndef _NETINET_IN_H
+ #include <linux/in.h>
++#endif
+ #include <linux/in6.h>
+ #include <limits.h>
+
+--
+2.19.1
+
diff --git a/package/iptables/0004-xtables-monitor-fix-build-with-musl-libc.patch b/package/iptables/0004-xtables-monitor-fix-build-with-musl-libc.patch
new file mode 100644
index 0000000000..0b6358b255
--- /dev/null
+++ b/package/iptables/0004-xtables-monitor-fix-build-with-musl-libc.patch
@@ -0,0 +1,44 @@
+From 90b0d3abfc0b4150b198eb17080d75acc5838a59 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <baruch@tkos.co.il>
+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 <fw@strlen.de>
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+Signed-off-by: Florian Westphal <fw@strlen.de>
+---
+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 <http://www.sophos.com>
+ */
+
++#define _GNU_SOURCE
+ #include <stdlib.h>
+ #include <time.h>
+ #include <string.h>
+--
+2.19.1
+
diff --git a/package/iptables/0005-include-extend-the-headers-conflict-workaround-to-in.patch b/package/iptables/0005-include-extend-the-headers-conflict-workaround-to-in.patch
new file mode 100644
index 0000000000..6b1ffbd639
--- /dev/null
+++ b/package/iptables/0005-include-extend-the-headers-conflict-workaround-to-in.patch
@@ -0,0 +1,37 @@
+From 23dee088cd54aae94f1b71046f2ab2b206eedd42 Mon Sep 17 00:00:00 2001
+Message-Id: <23dee088cd54aae94f1b71046f2ab2b206eedd42.1543092537.git.baruch@tkos.co.il>
+From: Baruch Siach <baruch@tkos.co.il>
+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 <fw@strlen.de>
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+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 <linux/in.h>
+-#endif
+ #include <linux/in6.h>
++#endif
+ #include <limits.h>
+
+ /* Responses from hook functions. */
+--
+2.19.1
+
diff --git a/package/iptables/iptables.hash b/package/iptables/iptables.hash
index 8b191797fb..d84bd3af98 100644
--- a/package/iptables/iptables.hash
+++ b/package/iptables/iptables.hash
@@ -1,3 +1,4 @@
-# From ftp://ftp.netfilter.org/pub/iptables/iptables-1.6.2.tar.bz2.{md5sum,sha1sum}
-md5 7d2b7847e4aa8832a18437b8a4c1873d iptables-1.6.2.tar.bz2
-sha1 6279effbf8f2c7ff53d19ae13308f8a6e6a60dd9 iptables-1.6.2.tar.bz2
+# From https://netfilter.org/projects/iptables/downloads.html
+sha256 a3778b50ed1a3256f9ca975de82c2204e508001fc2471238c8c97f3d1c4c12af iptables-1.8.2.tar.bz2
+# Locally calculated
+sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
diff --git a/package/iptables/iptables.mk b/package/iptables/iptables.mk
index 49a537f608..54494937af 100644
--- a/package/iptables/iptables.mk
+++ b/package/iptables/iptables.mk
@@ -4,9 +4,9 @@
#
################################################################################
-IPTABLES_VERSION = 1.6.2
+IPTABLES_VERSION = 1.8.2
IPTABLES_SOURCE = iptables-$(IPTABLES_VERSION).tar.bz2
-IPTABLES_SITE = http://ftp.netfilter.org/pub/iptables
+IPTABLES_SITE = https://netfilter.org/projects/iptables/files
IPTABLES_INSTALL_STAGING = YES
IPTABLES_DEPENDENCIES = host-pkgconf \
$(if $(BR2_PACKAGE_LIBNETFILTER_CONNTRACK),libnetfilter_conntrack)
diff --git a/package/iucode-tool/S00iucode-tool b/package/iucode-tool/S00iucode-tool
index 0c1e409de2..393c903b41 100644
--- a/package/iucode-tool/S00iucode-tool
+++ b/package/iucode-tool/S00iucode-tool
@@ -3,21 +3,26 @@
# Upload microcode into the processor.
#
-microcode_file="/usr/share/misc/intel-microcode.dat"
+MICROCODE_DIR="/lib/firmware/intel-ucode"
+
+start() {
+ printf 'Starting iucode-tool: '
+ /usr/sbin/iucode_tool -q -k "$MICROCODE_DIR"
+ status="$?"
+ if [ "$status" = 0 ]; then
+ echo "OK"
+ else
+ echo "FAIL"
+ fi
+ return "$status"
+}
case "$1" in
- start)
- echo "Starting iucode-tool:"
- /usr/sbin/iucode_tool -k $microcode_file
- echo "done"
- ;;
- stop)
- ;;
- restart|reload)
- ;;
- *)
- echo "Usage: $0 {start|stop|restart}"
- exit 1
+ start)
+ start;;
+ stop|restart|reload)
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart|reload}"
+ exit 1
esac
-
-exit $?
diff --git a/package/iucode-tool/iucode-tool.hash b/package/iucode-tool/iucode-tool.hash
index 1dab8de978..6d8fb635d0 100644
--- a/package/iucode-tool/iucode-tool.hash
+++ b/package/iucode-tool/iucode-tool.hash
@@ -1,3 +1,3 @@
# Locally computed
-sha256 9810daf925b8a9ca244adc4e1916bcab65601c9ebe87e91c2281f78055982971 iucode-tool_2.2.tar.xz
+sha256 12b88efa4d0d95af08db05a50b3dcb217c0eb2bfc67b483779e33d498ddb2f95 iucode-tool_2.3.1.tar.xz
sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING
diff --git a/package/iucode-tool/iucode-tool.mk b/package/iucode-tool/iucode-tool.mk
index 38f9da438e..e900888d7d 100644
--- a/package/iucode-tool/iucode-tool.mk
+++ b/package/iucode-tool/iucode-tool.mk
@@ -4,7 +4,7 @@
#
################################################################################
-IUCODE_TOOL_VERSION = 2.2
+IUCODE_TOOL_VERSION = 2.3.1
IUCODE_TOOL_SOURCE = iucode-tool_$(IUCODE_TOOL_VERSION).tar.xz
IUCODE_TOOL_SITE = https://gitlab.com/iucode-tool/releases/raw/master
ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y)
diff --git a/package/iwd/0001-monitor-pcap.c-add-missing-sys-stat.h-include.patch b/package/iwd/0001-monitor-pcap.c-add-missing-sys-stat.h-include.patch
new file mode 100644
index 0000000000..83be65dcd1
--- /dev/null
+++ b/package/iwd/0001-monitor-pcap.c-add-missing-sys-stat.h-include.patch
@@ -0,0 +1,46 @@
+From a879fc32d58625bd9361219c1285ab6e5f012467 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Fri, 2 Nov 2018 14:29:53 +0100
+Subject: [PATCH] monitor/pcap.c: add missing sys/stat.h include
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes:
+
+ CC monitor/pcap.o
+ monitor/pcap.c: In function ‘pcap_create’:
+ monitor/pcap.c:121:6: error: ‘S_IRUSR’ undeclared (first use in this function)
+ S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
+ ^
+ monitor/pcap.c:121:6: note: each undeclared identifier is reported only once for each function it appears in
+ monitor/pcap.c:121:16: error: ‘S_IWUSR’ undeclared (first use in this function)
+ S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
+ ^
+ monitor/pcap.c:121:26: error: ‘S_IRGRP’ undeclared (first use in this function)
+ S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
+ ^
+ monitor/pcap.c:121:36: error: ‘S_IROTH’ undeclared (first use in this function)
+ S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
+ ^
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ monitor/pcap.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/monitor/pcap.c b/monitor/pcap.c
+index 54ad9f5..785aefa 100644
+--- a/monitor/pcap.c
++++ b/monitor/pcap.c
+@@ -29,6 +29,7 @@
+ #include <fcntl.h>
+ #include <unistd.h>
+ #include <stdlib.h>
++#include <sys/stat.h>
+ #include <sys/uio.h>
+ #include <sys/types.h>
+ #include <ell/ell.h>
+--
+2.19.1
+
diff --git a/package/iwd/0002-Fix-__iwd_backtrace_init-availability-detection.patch b/package/iwd/0002-Fix-__iwd_backtrace_init-availability-detection.patch
new file mode 100644
index 0000000000..53eeca0595
--- /dev/null
+++ b/package/iwd/0002-Fix-__iwd_backtrace_init-availability-detection.patch
@@ -0,0 +1,62 @@
+From 124f6437c246b60f4254651d95b65140b8964ccc Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Fri, 2 Nov 2018 14:38:37 +0100
+Subject: [PATCH] Fix __iwd_backtrace_init() availability detection
+
+Check for HAVE_EXECINFO_H for all __iwd_backtrace_init usages (and
+remove unused backtrace.h usage from plugins/ofono.c).
+
+Fixes:
+
+ src/main.o: In function `main':
+ main.c:(.text.startup+0x798): undefined reference to `__iwd_backtrace_init'
+ collect2: error: ld returned 1 exit status
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ plugins/ofono.c | 1 -
+ src/backtrace.h | 2 +-
+ src/main.c | 2 +-
+ 3 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/plugins/ofono.c b/plugins/ofono.c
+index 8c019ce..077045f 100644
+--- a/plugins/ofono.c
++++ b/plugins/ofono.c
+@@ -31,7 +31,6 @@
+
+ #include "src/dbus.h"
+ #include "src/simauth.h"
+-#include "src/backtrace.h"
+
+ /*
+ * This plugin takes care of all the communication with ofono in order to
+diff --git a/src/backtrace.h b/src/backtrace.h
+index bfdc858..829ba02 100644
+--- a/src/backtrace.h
++++ b/src/backtrace.h
+@@ -19,7 +19,7 @@
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ */
+-#ifdef __GLIBC__
++#ifdef HAVE_EXECINFO_H
+ void __iwd_backtrace_init();
+ void __iwd_backtrace_print(unsigned int offset);
+ #endif
+diff --git a/src/main.c b/src/main.c
+index c1a2c42..8035fa0 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -445,7 +445,7 @@ int main(int argc, char *argv[])
+ if (debugopt)
+ l_debug_enable(debugopt);
+
+-#ifdef __GLIBC__
++#ifdef HAVE_EXECINFO_H
+ __iwd_backtrace_init();
+ #endif
+
+--
+2.19.1
+
diff --git a/package/iwd/Config.in b/package/iwd/Config.in
new file mode 100644
index 0000000000..c790f3dba1
--- /dev/null
+++ b/package/iwd/Config.in
@@ -0,0 +1,14 @@
+config BR2_PACKAGE_IWD
+ bool "iwd"
+ depends on BR2_TOOLCHAIN_HAS_SYNC_4 # ell
+ depends on !BR2_STATIC_LIBS # ell
+ depends on BR2_USE_WCHAR # ell
+ select BR2_PACKAGE_ELL
+ help
+ iNet Wireless daemon (iwd)
+
+ https://iwd.wiki.kernel.org/
+
+comment "iwd needs a toolchain w/ dynamic library, wchar"
+ depends on BR2_TOOLCHAIN_HAS_SYNC_4 # ell
+ depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR
diff --git a/package/iwd/iwd.hash b/package/iwd/iwd.hash
new file mode 100644
index 0000000000..cc3d419560
--- /dev/null
+++ b/package/iwd/iwd.hash
@@ -0,0 +1,5 @@
+# Locally computed
+sha256 a4f9798d6a203396af06813adb52dce9708d2ad5726a86305435b1174e9b4cb2 iwd-0.11.tar.gz
+
+# License files
+sha256 ec60b993835e2c6b79e6d9226345f4e614e686eb57dc13b6420c15a33a8996e5 COPYING
diff --git a/package/iwd/iwd.mk b/package/iwd/iwd.mk
new file mode 100644
index 0000000000..2ff8f88cf8
--- /dev/null
+++ b/package/iwd/iwd.mk
@@ -0,0 +1,47 @@
+################################################################################
+#
+# iwd
+#
+################################################################################
+
+IWD_VERSION = 0.11
+IWD_SITE = https://git.kernel.org/pub/scm/network/wireless/iwd.git
+IWD_SITE_METHOD = git
+IWD_LICENSE = LGPL-2.1+
+IWD_LICENSE_FILES = COPYING
+# sources from git, no configure script provided
+IWD_AUTORECONF = YES
+
+IWD_CONF_OPTS = --enable-external-ell
+IWD_DEPENDENCIES = ell
+
+# autoreconf requires an existing build-aux directory
+define IWD_MKDIR_BUILD_AUX
+ mkdir -p $(@D)/build-aux
+endef
+IWD_POST_PATCH_HOOKS += IWD_MKDIR_BUILD_AUX
+
+ifeq ($(BR2_PACKAGE_DBUS),y)
+IWD_CONF_OPTS += --enable-dbus-policy
+IWD_DEPENDENCIES += dbus
+else
+IWD_CONF_OPTS += --disable-dbus-policy
+endif
+
+ifeq ($(BR2_PACKAGE_READLINE),y)
+# iwd client depends on readline (GPL-3.0+)
+IWD_LICENSE := $(IWD_LICENSE), GPL-3.0+ (client)
+IWD_CONF_OPTS += --enable-client
+IWD_DEPENDENCIES += readline
+else
+IWD_CONF_OPTS += --disable-client
+endif
+
+ifeq ($(BR2_PACKAGE_SYSTEMD),y)
+IWD_CONF_OPTS += --enable-systemd-service
+IWD_DEPENDENCIES += systemd
+else
+IWD_CONF_OPTS += --disable-systemd-service
+endif
+
+$(eval $(autotools-package))
diff --git a/package/jpeg-turbo/0001-fix-install-of-binaries-with-a-static-only-library.patch b/package/jpeg-turbo/0001-fix-install-of-binaries-with-a-static-only-library.patch
deleted file mode 100644
index 87f9c48382..0000000000
--- a/package/jpeg-turbo/0001-fix-install-of-binaries-with-a-static-only-library.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From f8c7732e24502c06739944f9a721c9d84a50319d Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Sun, 26 Aug 2018 19:11:55 +0200
-Subject: [PATCH] fix install of binaries with a static only library
-
-Define CMAKE_INSTALL_RPATH only if ENABLE_SHARED is set otherwise the
-following error is raised:
-
-CMake Error at cmake_install.cmake:73 (file):
- file RPATH_CHANGE could not write new RPATH:
-
- /usr/lib
-
- to the file:
-
- /home/fabrice/buildroot/output/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/bin/rdjpgcom
-
- No valid ELF RPATH or RUNPATH entry exists in the file;
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-[Upstream status: https://github.com/libjpeg-turbo/libjpeg-turbo/pull/273]
----
- CMakeLists.txt | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 1719522..862ab11 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -109,7 +109,9 @@ endif()
-
- include(cmakescripts/GNUInstallDirs.cmake)
-
-+if(ENABLE_SHARED)
- set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_FULL_LIBDIR})
-+endif()
-
- macro(report_directory var)
- if(CMAKE_INSTALL_${var} STREQUAL CMAKE_INSTALL_FULL_${var})
---
-2.14.1
-
diff --git a/package/jpeg-turbo/jpeg-turbo.hash b/package/jpeg-turbo/jpeg-turbo.hash
index f0fc5396ef..1779324c51 100644
--- a/package/jpeg-turbo/jpeg-turbo.hash
+++ b/package/jpeg-turbo/jpeg-turbo.hash
@@ -1,7 +1,7 @@
-# From https://sourceforge.net/projects/libjpeg-turbo/files/2.0.0/
-sha1 fe49aea935617748c21ecbe46c986d6c1b98f39b libjpeg-turbo-2.0.0.tar.gz
-md5 b12a3fcf1d078db38410f27718a91b83 libjpeg-turbo-2.0.0.tar.gz
+# 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
# Locally computed
-sha256 778876105d0d316203c928fd2a0374c8c01f755d0a00b12a1c8934aeccff8868 libjpeg-turbo-2.0.0.tar.gz
+sha256 e5f86cec31df1d39596e0cca619ab1b01f99025a27dafdfc97a30f3a12f866ff libjpeg-turbo-2.0.1.tar.gz
sha256 8412238c5ad95965cf3c3197791e9dea8b5fae505d133449e33ee2fa754fe61e LICENSE.md
sha256 82fece2bff2669c476495f0fe70096b154e8bc5b40916a64e99836d9a01c3110 README.ijg
diff --git a/package/jpeg-turbo/jpeg-turbo.mk b/package/jpeg-turbo/jpeg-turbo.mk
index 1807cc294e..b848b66899 100644
--- a/package/jpeg-turbo/jpeg-turbo.mk
+++ b/package/jpeg-turbo/jpeg-turbo.mk
@@ -4,7 +4,7 @@
#
################################################################################
-JPEG_TURBO_VERSION = 2.0.0
+JPEG_TURBO_VERSION = 2.0.1
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/package/keepalived/0001-Rename-TIMER_MAX-to-TIMER_MAXIMUM.patch b/package/keepalived/0001-Rename-TIMER_MAX-to-TIMER_MAXIMUM.patch
new file mode 100644
index 0000000000..4402b48a8b
--- /dev/null
+++ b/package/keepalived/0001-Rename-TIMER_MAX-to-TIMER_MAXIMUM.patch
@@ -0,0 +1,61 @@
+From 7d4856e213f349bcd97b3644b01d6170b226de16 Mon Sep 17 00:00:00 2001
+From: Quentin Armitage <quentin@armitage.org.uk>
+Date: Tue, 20 Nov 2018 17:24:58 +0000
+Subject: [PATCH] Rename TIMER_MAX to TIMER_MAXIMUM
+
+ulibC defines TIMER_MAX, so to avoid naming conflict rename it.
+
+This issue was reported by Paul Gildea <gildeap@tcd.ie> who also
+provided the patch.
+
+Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Retrieved from:
+https://github.com/acassen/keepalived/commit/7d4856e213f349bcd97b3644b01d6170b226de16]
+---
+ lib/parser.c | 8 ++++----
+ lib/parser.h | 2 +-
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/lib/parser.c b/lib/parser.c
+index 1d53595c0..cc9b644e2 100644
+--- a/lib/parser.c
++++ b/lib/parser.c
+@@ -1915,20 +1915,20 @@ read_timer(vector_t *strvec, size_t index, unsigned long *res, unsigned long min
+ #endif
+
+ if (!max_time)
+- max_time = TIMER_MAX;
++ max_time = TIMER_MAXIMUM;
+
+ errno = 0;
+ timer = strtoul(vector_slot(strvec, index), &endptr, 10);
+- *res = (timer > TIMER_MAX ? TIMER_MAX : timer) * TIMER_HZ;
++ *res = (timer > TIMER_MAXIMUM ? TIMER_MAXIMUM : timer) * TIMER_HZ;
+
+ if (FMT_STR_VSLOT(strvec, index)[0] == '-')
+ report_config_error(CONFIG_INVALID_NUMBER, "%snegative number '%s'", warn, FMT_STR_VSLOT(strvec, index));
+ else if (*endptr)
+ report_config_error(CONFIG_INVALID_NUMBER, "%sinvalid number '%s'", warn, FMT_STR_VSLOT(strvec, index));
+- else if (errno == ERANGE || timer > TIMER_MAX)
++ else if (errno == ERANGE || timer > TIMER_MAXIMUM)
+ report_config_error(CONFIG_INVALID_NUMBER, "%snumber '%s' outside timer range", warn, FMT_STR_VSLOT(strvec, index));
+ else if (timer < min_time || timer > max_time)
+- report_config_error(CONFIG_INVALID_NUMBER, "number '%s' outside range [%ld, %ld]", FMT_STR_VSLOT(strvec, index), min_time, max_time ? max_time : TIMER_MAX);
++ report_config_error(CONFIG_INVALID_NUMBER, "number '%s' outside range [%ld, %ld]", FMT_STR_VSLOT(strvec, index), min_time, max_time ? max_time : TIMER_MAXIMUM);
+ else
+ return true;
+
+diff --git a/lib/parser.h b/lib/parser.h
+index 88a74474a..291aa8ffe 100644
+--- a/lib/parser.h
++++ b/lib/parser.h
+@@ -38,7 +38,7 @@
+ #define MAXBUF 1024
+
+ /* Maximum time read_timer can return */
+-#define TIMER_MAX (ULONG_MAX / TIMER_HZ)
++#define TIMER_MAXIMUM (ULONG_MAX / TIMER_HZ)
+
+ /* Configuration test errors. These should be in decreasing order of severity */
+ typedef enum {
diff --git a/package/keepalived/0001-configure.ac-do-not-force-PIE.patch b/package/keepalived/0001-configure.ac-do-not-force-PIE.patch
deleted file mode 100644
index b51a4e334b..0000000000
--- a/package/keepalived/0001-configure.ac-do-not-force-PIE.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 4da31a615412e15f7658d21770708e8084be149c Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
-Date: Wed, 4 Apr 2018 22:29:45 +0200
-Subject: [PATCH] configure.ac: do not force PIE
-
-PIE is not necessarily supported on all architectures, so leave it up
-to the user to pass the appropriate CFLAGS/LDFLAGS if he wants to use
-PIE.
-
-This fixes the build on the m68k and Microblaze architecture:
-
- http://autobuild.buildroot.net/results/a536f5947b3b70fdaecad1af5542572c504ad046/
- http://autobuild.buildroot.net/results/0ffbf1e8d181c9463847a5b2be6f9baa18face24/
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
-Upstream-status: https://github.com/acassen/keepalived/pull/830
----
- configure.ac | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index c344f07e..06545c91 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -233,8 +233,8 @@ AC_SUBST(ARFLAGS)
- # AC_PROG_LIBTOOL
-
- KA_CPPFLAGS="$kernelinc"
--KA_CFLAGS="-Wall -Wunused -Wstrict-prototypes -Wextra -g -O2 -fPIE -D_GNU_SOURCE"
--KA_LDFLAGS="-pie"
-+KA_CFLAGS="-Wall -Wunused -Wstrict-prototypes -Wextra -g -O2 -D_GNU_SOURCE"
-+KA_LDFLAGS=""
- KA_LIBS=
- NEED_LIBDL=No
- #KA_LIBTOOLFLAGS =
---
-2.14.3
-
diff --git a/package/keepalived/Config.in b/package/keepalived/Config.in
index 0140e62ae2..c71821545c 100644
--- a/package/keepalived/Config.in
+++ b/package/keepalived/Config.in
@@ -4,7 +4,6 @@ config BR2_PACKAGE_KEEPALIVED
depends on !BR2_STATIC_LIBS # uses libdl
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4
select BR2_PACKAGE_OPENSSL
- select BR2_PACKAGE_POPT
help
The main goal of the keepalived project is to add a strong &
robust keepalive facility to the Linux Virtual Server
diff --git a/package/keepalived/keepalived.hash b/package/keepalived/keepalived.hash
index ed7d2fb0a0..3ad3e6e6ac 100644
--- a/package/keepalived/keepalived.hash
+++ b/package/keepalived/keepalived.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 4e2d7cc01a6ee29a3955f5c622d47704ba7d9dd758189f15e9def016a2d1faa3 keepalived-1.4.2.tar.gz
+sha256 40e0e55afed9ca313d621a9c5878579696fafb5504dab521aadaf20ba6e7f597 keepalived-2.0.10.tar.gz
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
diff --git a/package/keepalived/keepalived.mk b/package/keepalived/keepalived.mk
index e8a280a19c..584da6bb48 100644
--- a/package/keepalived/keepalived.mk
+++ b/package/keepalived/keepalived.mk
@@ -4,14 +4,26 @@
#
################################################################################
-KEEPALIVED_VERSION = 1.4.2
+KEEPALIVED_VERSION = 2.0.10
KEEPALIVED_SITE = http://www.keepalived.org/software
-KEEPALIVED_DEPENDENCIES = host-pkgconf openssl popt
+KEEPALIVED_DEPENDENCIES = host-pkgconf openssl
KEEPALIVED_LICENSE = GPL-2.0+
KEEPALIVED_LICENSE_FILES = COPYING
-# 0001-configure.ac-do-not-force-PIE.patch
-KEEPALIVED_AUTORECONF = YES
+KEEPALIVED_CONF_OPTS = --disable-hardening
+
+ifeq ($(BR2_PACKAGE_JSON_C),y)
+KEEPALIVED_DEPENDENCIES += json-c
+KEEPALIVED_CONF_OPTS += --enable-json
+else
+KEEPALIVED_CONF_OPTS += --disable-json
+endif
+
+ifeq ($(BR2_PACKAGE_LIBGLIB2),y)
+KEEPALIVED_DEPENDENCIES += libglib2
+KEEPALIVED_CONF_OPTS += --enable-dbus
+else
KEEPALIVED_CONF_OPTS += --disable-dbus
+endif
ifeq ($(BR2_PACKAGE_LIBNL)$(BR2_PACKAGE_LIBNFNETLINK),yy)
KEEPALIVED_DEPENDENCIES += libnl libnfnetlink
diff --git a/package/libcurl/Config.in b/package/libcurl/Config.in
index 21c2ee2b7f..9c62539e4d 100644
--- a/package/libcurl/Config.in
+++ b/package/libcurl/Config.in
@@ -19,4 +19,36 @@ config BR2_PACKAGE_LIBCURL_VERBOSE
help
Enable verbose text strings
+config BR2_PACKAGE_LIBCURL_TLS_SUPPORT
+ bool
+ default y if BR2_PACKAGE_OPENSSL
+ default y if BR2_PACKAGE_GNUTLS
+ default y if BR2_PACKAGE_LIBNSS
+ default y if BR2_PACKAGE_MBEDTLS
+
+choice
+ prompt "SSL/TLS library to use"
+ depends on BR2_PACKAGE_LIBCURL_TLS_SUPPORT
+
+config BR2_PACKAGE_LIBCURL_OPENSSL
+ bool "OpenSSL"
+ depends on BR2_PACKAGE_OPENSSL
+
+config BR2_PACKAGE_LIBCURL_GNUTLS
+ bool "GnuTLS"
+ depends on BR2_PACKAGE_GNUTLS
+
+config BR2_PACKAGE_LIBCURL_LIBNSS
+ bool "NSS"
+ depends on BR2_PACKAGE_LIBNSS
+
+config BR2_PACKAGE_LIBCURL_MBEDTLS
+ bool "mbed TLS"
+ depends on BR2_PACKAGE_MBEDTLS
+
+endchoice
+
+comment "A TLS library is needed for SSL/TLS support"
+ depends on !BR2_PACKAGE_LIBCURL_TLS_SUPPORT
+
endif
diff --git a/package/libcurl/libcurl.mk b/package/libcurl/libcurl.mk
index 99a451b636..5aa6d542ad 100644
--- a/package/libcurl/libcurl.mk
+++ b/package/libcurl/libcurl.mk
@@ -19,7 +19,8 @@ LIBCURL_INSTALL_STAGING = YES
# probably almost never used. See
# http://curl.haxx.se/docs/manpage.html#--ntlm.
LIBCURL_CONF_OPTS = --disable-manual --disable-ntlm-wb \
- --enable-hidden-symbols --with-random=/dev/urandom --disable-curldebug
+ --enable-hidden-symbols --with-random=/dev/urandom --disable-curldebug \
+ --without-polarssl
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
LIBCURL_CONF_OPTS += --enable-threaded-resolver
@@ -35,7 +36,7 @@ endif
LIBCURL_CONFIG_SCRIPTS = curl-config
-ifeq ($(BR2_PACKAGE_OPENSSL),y)
+ifeq ($(BR2_PACKAGE_LIBCURL_OPENSSL),y)
LIBCURL_DEPENDENCIES += openssl
# configure adds the cross openssl dir to LD_LIBRARY_PATH which screws up
# native stuff during the rest of configure when target == host.
@@ -44,19 +45,30 @@ LIBCURL_DEPENDENCIES += openssl
LIBCURL_CONF_ENV += LD_LIBRARY_PATH=$(if $(LD_LIBRARY_PATH),$(LD_LIBRARY_PATH):)/lib:/usr/lib
LIBCURL_CONF_OPTS += --with-ssl=$(STAGING_DIR)/usr \
--with-ca-path=/etc/ssl/certs
-else ifeq ($(BR2_PACKAGE_GNUTLS),y)
+else
+LIBCURL_CONF_OPTS += -without-ssl
+endif
+
+ifeq ($(BR2_PACKAGE_LIBCURL_GNUTLS),y)
LIBCURL_CONF_OPTS += --with-gnutls=$(STAGING_DIR)/usr
LIBCURL_DEPENDENCIES += gnutls
-else ifeq ($(BR2_PACKAGE_LIBNSS),y)
+else
+LIBCURL_CONF_OPTS += --without-gnutls
+endif
+
+ifeq ($(BR2_PACKAGE_LIBCURL_LIBNSS),y)
LIBCURL_CONF_OPTS += --with-nss=$(STAGING_DIR)/usr
LIBCURL_CONF_ENV += CPPFLAGS="$(TARGET_CPPFLAGS) `$(PKG_CONFIG_HOST_BINARY) nspr nss --cflags`"
LIBCURL_DEPENDENCIES += libnss
-else ifeq ($(BR2_PACKAGE_MBEDTLS),y)
+else
+LIBCURL_CONF_OPTS += --without-nss
+endif
+
+ifeq ($(BR2_PACKAGE_LIBCURL_MBEDTLS),y)
LIBCURL_CONF_OPTS += --with-mbedtls=$(STAGING_DIR)/usr
LIBCURL_DEPENDENCIES += mbedtls
else
-LIBCURL_CONF_OPTS += --without-ssl --without-gnutls \
- --without-polarssl --without-nss --without-mbedtls
+LIBCURL_CONF_OPTS += --without-mbedtls
endif
ifeq ($(BR2_PACKAGE_C_ARES),y)
@@ -98,7 +110,7 @@ endif
define LIBCURL_FIX_DOT_PC
printf 'Requires: openssl\n' >>$(@D)/libcurl.pc.in
endef
-LIBCURL_POST_PATCH_HOOKS += $(if $(BR2_PACKAGE_OPENSSL),LIBCURL_FIX_DOT_PC)
+LIBCURL_POST_PATCH_HOOKS += $(if $(BR2_PACKAGE_LIBCURL_OPENSSL),LIBCURL_FIX_DOT_PC)
ifeq ($(BR2_PACKAGE_CURL),)
define LIBCURL_TARGET_CLEANUP
diff --git a/package/libdrm/libdrm.mk b/package/libdrm/libdrm.mk
index 18ef9cdd2e..06efa20195 100644
--- a/package/libdrm/libdrm.mk
+++ b/package/libdrm/libdrm.mk
@@ -115,6 +115,9 @@ endif
ifeq ($(BR2_PACKAGE_LIBDRM_INSTALL_TESTS),y)
LIBDRM_CONF_OPTS += --enable-install-test-programs
+ifeq ($(BR2_PACKAGE_CUNIT),y)
+LIBDRM_DEPENDENCIES += cunit
+endif
endif
$(eval $(autotools-package))
diff --git a/package/libid3tag/id3tag.pc b/package/libid3tag/id3tag.pc
new file mode 100644
index 0000000000..845eb3276b
--- /dev/null
+++ b/package/libid3tag/id3tag.pc
@@ -0,0 +1,11 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: id3tag
+Description: ID3 tag reading library
+Version: 0.15.1b
+Requires:
+Libs: -L${libdir} -lid3tag
+Cflags: -I${includedir}
diff --git a/package/libid3tag/libid3tag.mk b/package/libid3tag/libid3tag.mk
index 402e154ae1..3ec145725f 100644
--- a/package/libid3tag/libid3tag.mk
+++ b/package/libid3tag/libid3tag.mk
@@ -15,4 +15,11 @@ LIBID3TAG_DEPENDENCIES = zlib
# is able to properly behave in the face of a missing C++ compiler.
LIBID3TAG_AUTORECONF = YES
+define LIBID3TAG_INSTALL_STAGING_PC
+ $(INSTALL) -D package/libid3tag/id3tag.pc \
+ $(STAGING_DIR)/usr/lib/pkgconfig/id3tag.pc
+endef
+
+LIBID3TAG_POST_INSTALL_STAGING_HOOKS += LIBID3TAG_INSTALL_STAGING_PC
+
$(eval $(autotools-package))
diff --git a/package/libkrb5/libkrb5.hash b/package/libkrb5/libkrb5.hash
index 2980947faa..733c6c9d6f 100644
--- a/package/libkrb5/libkrb5.hash
+++ b/package/libkrb5/libkrb5.hash
@@ -1,5 +1,5 @@
# Locally calculated after checking pgp signature
-sha256 214ffe394e3ad0c730564074ec44f1da119159d94281bbec541dc29168d21117 krb5-1.16.1.tar.gz
+sha256 9f721e1fe593c219174740c71de514c7228a97d23eb7be7597b2ae14e487f027 krb5-1.16.2.tar.gz
# Hash for license file:
sha256 58534f00ed877fd32936fcab094f49d399aeef7716393204d8028c4b89050c82 NOTICE
diff --git a/package/libkrb5/libkrb5.mk b/package/libkrb5/libkrb5.mk
index d9d7160ae8..5ba0ab1806 100644
--- a/package/libkrb5/libkrb5.mk
+++ b/package/libkrb5/libkrb5.mk
@@ -5,7 +5,7 @@
################################################################################
LIBKRB5_VERSION_MAJOR = 1.16
-LIBKRB5_VERSION = $(LIBKRB5_VERSION_MAJOR).1
+LIBKRB5_VERSION = $(LIBKRB5_VERSION_MAJOR).2
LIBKRB5_SITE = https://web.mit.edu/kerberos/dist/krb5/$(LIBKRB5_VERSION_MAJOR)
LIBKRB5_SOURCE = krb5-$(LIBKRB5_VERSION).tar.gz
LIBKRB5_SUBDIR = src
diff --git a/package/libmicrohttpd/libmicrohttpd.hash b/package/libmicrohttpd/libmicrohttpd.hash
index e534e8e80b..d54d2bbc14 100644
--- a/package/libmicrohttpd/libmicrohttpd.hash
+++ b/package/libmicrohttpd/libmicrohttpd.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 9b9ccd7d0b11b0e179f1f58dc2caa3e0c62c8609e1e1dc7dcaadf941b67d923c libmicrohttpd-0.9.59.tar.gz
+sha256 cd0e5d3f95a9e55ef7cdf4d0530e997ba00b8411af9149d9287db785d729c471 libmicrohttpd-0.9.60.tar.gz
sha256 70e12e2a60151b9ed1a4c94a5ffeb99cd086fa94542b5a92fec581506e8d3121 COPYING
diff --git a/package/libmicrohttpd/libmicrohttpd.mk b/package/libmicrohttpd/libmicrohttpd.mk
index d5c6366d8d..fd7c370855 100644
--- a/package/libmicrohttpd/libmicrohttpd.mk
+++ b/package/libmicrohttpd/libmicrohttpd.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBMICROHTTPD_VERSION = 0.9.59
+LIBMICROHTTPD_VERSION = 0.9.60
LIBMICROHTTPD_SITE = $(BR2_GNU_MIRROR)/libmicrohttpd
LIBMICROHTTPD_LICENSE_FILES = COPYING
LIBMICROHTTPD_INSTALL_STAGING = YES
diff --git a/package/libnfs/0002-libnfs.c-include-time.h-in-libnfs.c.patch b/package/libnfs/0002-libnfs.c-include-time.h-in-libnfs.c.patch
new file mode 100644
index 0000000000..34e584017e
--- /dev/null
+++ b/package/libnfs/0002-libnfs.c-include-time.h-in-libnfs.c.patch
@@ -0,0 +1,35 @@
+From b56bd3d99f67a3273fec3c0c5d9560413465a1db Mon Sep 17 00:00:00 2001
+From: Anna Lyons <Anna.Lyons@data61.csiro.au>
+Date: Thu, 12 Jul 2018 17:45:23 +1000
+Subject: [PATCH] libnfs.c: include <time.h> in libnfs.c
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+time() is used in this file, which is from time.h. Fixes a warning.
+
+Note, that building with musl breaks otherwise, as it is more strict regarding
+missing header inclusions.
+
+Backported from: 794a29f01f8e5961adc5c79d5ba5ac1062877e6c
+
+Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
+---
+ lib/libnfs.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/lib/libnfs.c b/lib/libnfs.c
+index d89d84d..43c17b9 100755
+--- a/lib/libnfs.c
++++ b/lib/libnfs.c
+@@ -70,6 +70,7 @@
+ #include <stdarg.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <time.h>
+ #include "slist.h"
+ #include "libnfs.h"
+ #include "libnfs-raw.h"
+--
+2.19.1
+
diff --git a/package/libnfs/libnfs.hash b/package/libnfs/libnfs.hash
index 2bd8caf255..0e4dc6fbc9 100644
--- a/package/libnfs/libnfs.hash
+++ b/package/libnfs/libnfs.hash
@@ -1,6 +1,6 @@
# Locally calculated
-sha256 7ea6cd8fa6c461d01091e584d424d28e137d23ff4b65b95d01a3fd0ef95d120e libnfs-libnfs-2.0.0.tar.gz
-sha256 2d152e3a2f31ef0fe14d4908377277f8215fb5c82ec9329d1eed081c845fc85f COPYING
+sha256 445d92c5fc55e4a5b115e358e60486cf8f87ee50e0103d46a02e7fb4618566a5 libnfs-libnfs-3.0.0.tar.gz
+sha256 edd960c0142b8ada98b43b6396b78f4e557b0bc70ac601a51e397ad04070e2c5 COPYING
sha256 d9406ced95457941032aa11d04623b8ab71f2827a3395ebef137aec475be35b1 LICENCE-BSD.txt
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENCE-LGPL-2.1.txt
sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENCE-GPL-3.txt
diff --git a/package/libnfs/libnfs.mk b/package/libnfs/libnfs.mk
index 0cf07d2143..3a84e0aafa 100644
--- a/package/libnfs/libnfs.mk
+++ b/package/libnfs/libnfs.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBNFS_VERSION = libnfs-2.0.0
+LIBNFS_VERSION = libnfs-3.0.0
LIBNFS_SITE = $(call github,sahlberg,libnfs,$(LIBNFS_VERSION))
LIBNFS_INSTALL_STAGING = YES
LIBNFS_AUTORECONF = YES
diff --git a/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch b/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch
index 1062f2b01a..213aab79eb 100644
--- a/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch
+++ b/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch
@@ -1,4 +1,4 @@
-From a51cdce6fd271a5cc393c5e56996846d9c453d6a Mon Sep 17 00:00:00 2001
+From 90a0152c224fa90f648b27187859bd84f6426e1b Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Thu, 2 Jun 2016 23:03:27 -0300
Subject: [PATCH] Rename xfree() to libnftnl_xfree() to avoid symbol naming
@@ -22,31 +22,33 @@ libnftnl_xfree().
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Gustavo: update for version 1.0.7]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-[baruch: update for version 1.0.9]
+[baruch: update for versions 1.0.9, 1.1.2]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---
- 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/immediate.c | 2 +-
- src/expr/log.c | 6 +++---
- src/expr/lookup.c | 2 +-
- src/expr/match.c | 6 +++---
- src/expr/target.c | 6 +++---
- 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 +-
- 21 files changed, 104 insertions(+), 104 deletions(-)
+ 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
@@ -62,7 +64,7 @@ index 3cc659652fe2..820556715013 100644
#define div_round_up(n, d) (((n) + (d) - 1) / (d))
diff --git a/src/chain.c b/src/chain.c
-index eff518680873..03033bbcb93b 100644
+index 01d62c84f140..93e193955934 100644
--- a/src/chain.c
+++ b/src/chain.c
@@ -97,14 +97,14 @@ EXPORT_SYMBOL(nftnl_chain_free);
@@ -176,7 +178,7 @@ index eff518680873..03033bbcb93b 100644
c->type = strdup(mnl_attr_get_str(tb[NFTA_CHAIN_TYPE]));
if (!c->type)
return -1;
-@@ -902,7 +902,7 @@ void nftnl_chain_list_free(struct nftnl_chain_list *list)
+@@ -711,7 +711,7 @@ void nftnl_chain_list_free(struct nftnl_chain_list *list)
list_del(&r->head);
nftnl_chain_free(r);
}
@@ -185,7 +187,7 @@ index eff518680873..03033bbcb93b 100644
}
EXPORT_SYMBOL(nftnl_chain_list_is_empty);
-@@ -988,5 +988,5 @@ struct nftnl_chain *nftnl_chain_list_iter_next(struct nftnl_chain_list_iter *ite
+@@ -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)
{
@@ -193,7 +195,7 @@ index eff518680873..03033bbcb93b 100644
+ nftnl_xfree(iter);
}
diff --git a/src/common.c b/src/common.c
-index 561c95439114..d0124134ea29 100644
+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)
@@ -206,7 +208,7 @@ index 561c95439114..d0124134ea29 100644
EXPORT_SYMBOL(nftnl_parse_perror);
diff --git a/src/expr.c b/src/expr.c
-index 62565e046996..97f16275f44f 100644
+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)
@@ -218,7 +220,7 @@ index 62565e046996..97f16275f44f 100644
}
EXPORT_SYMBOL(nftnl_expr_is_set);
-@@ -270,7 +270,7 @@ struct nftnl_expr *nftnl_expr_parse(struct nlattr *attr)
+@@ -260,7 +260,7 @@ struct nftnl_expr *nftnl_expr_parse(struct nlattr *attr)
return expr;
err2:
@@ -228,10 +230,10 @@ index 62565e046996..97f16275f44f 100644
return NULL;
}
diff --git a/src/expr/data_reg.c b/src/expr/data_reg.c
-index 1b28b291617b..8c7abdb91d21 100644
+index 67165feb931f..c6f3cec48caf 100644
--- a/src/expr/data_reg.c
+++ b/src/expr/data_reg.c
-@@ -379,7 +379,7 @@ void nftnl_free_verdict(const union nftnl_data_reg *data)
+@@ -225,7 +225,7 @@ void nftnl_free_verdict(const union nftnl_data_reg *data)
switch(data->verdict) {
case NFT_JUMP:
case NFT_GOTO:
@@ -241,10 +243,10 @@ index 1b28b291617b..8c7abdb91d21 100644
default:
break;
diff --git a/src/expr/dynset.c b/src/expr/dynset.c
-index 160d0e15c151..614124d841c7 100644
+index 68115ba50c94..4e8093b7e9db 100644
--- a/src/expr/dynset.c
+++ b/src/expr/dynset.c
-@@ -330,7 +330,7 @@ static void nftnl_expr_dynset_free(const struct nftnl_expr *e)
+@@ -276,7 +276,7 @@ static void nftnl_expr_dynset_free(const struct nftnl_expr *e)
{
struct nftnl_expr_dynset *dynset = nftnl_expr_data(e);
@@ -252,9 +254,22 @@ index 160d0e15c151..614124d841c7 100644
+ nftnl_xfree(dynset->set_name);
}
- static bool nftnl_expr_dynset_cmp(const struct nftnl_expr *e1,
+ 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 b0570bd539a4..6a0732c38ebd 100644
+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,
@@ -267,7 +282,7 @@ index b0570bd539a4..6a0732c38ebd 100644
imm->data.chain = strdup(data);
if (!imm->data.chain)
diff --git a/src/expr/log.c b/src/expr/log.c
-index 86d965136cd4..0624a7712237 100644
+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,
@@ -288,7 +303,7 @@ index 86d965136cd4..0624a7712237 100644
log->prefix = strdup(mnl_attr_get_str(tb[NFTA_LOG_PREFIX]));
if (!log->prefix)
-@@ -317,7 +317,7 @@ static void nftnl_expr_log_free(const struct nftnl_expr *e)
+@@ -255,7 +255,7 @@ static void nftnl_expr_log_free(const struct nftnl_expr *e)
{
struct nftnl_expr_log *log = nftnl_expr_data(e);
@@ -296,12 +311,12 @@ index 86d965136cd4..0624a7712237 100644
+ nftnl_xfree(log->prefix);
}
- static bool nftnl_expr_log_cmp(const struct nftnl_expr *e1,
+ struct expr_ops expr_ops_log = {
diff --git a/src/expr/lookup.c b/src/expr/lookup.c
-index 5fcb81f3a7a2..45f5dfefd33f 100644
+index a495ac0fdcfc..4fce24288c57 100644
--- a/src/expr/lookup.c
+++ b/src/expr/lookup.c
-@@ -258,7 +258,7 @@ static void nftnl_expr_lookup_free(const struct nftnl_expr *e)
+@@ -209,7 +209,7 @@ static void nftnl_expr_lookup_free(const struct nftnl_expr *e)
{
struct nftnl_expr_lookup *lookup = nftnl_expr_data(e);
@@ -309,9 +324,9 @@ index 5fcb81f3a7a2..45f5dfefd33f 100644
+ nftnl_xfree(lookup->set_name);
}
- static bool nftnl_expr_lookup_cmp(const struct nftnl_expr *e1,
+ struct expr_ops expr_ops_lookup = {
diff --git a/src/expr/match.c b/src/expr/match.c
-index dd09e1e85192..09e35c528aca 100644
+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,
@@ -332,7 +347,7 @@ index dd09e1e85192..09e35c528aca 100644
match_data = calloc(1, len);
if (match_data == NULL)
-@@ -217,7 +217,7 @@ static void nftnl_expr_match_free(const struct nftnl_expr *e)
+@@ -186,7 +186,7 @@ static void nftnl_expr_match_free(const struct nftnl_expr *e)
{
struct nftnl_expr_match *match = nftnl_expr_data(e);
@@ -340,9 +355,9 @@ index dd09e1e85192..09e35c528aca 100644
+ nftnl_xfree(match->data);
}
- static bool nftnl_expr_match_cmp(const struct nftnl_expr *e1,
+ struct expr_ops expr_ops_match = {
diff --git a/src/expr/target.c b/src/expr/target.c
-index ed4bf7df6328..5e28925debeb 100644
+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,
@@ -363,7 +378,7 @@ index ed4bf7df6328..5e28925debeb 100644
target_data = calloc(1, len);
if (target_data == NULL)
-@@ -217,7 +217,7 @@ static void nftnl_expr_target_free(const struct nftnl_expr *e)
+@@ -186,7 +186,7 @@ static void nftnl_expr_target_free(const struct nftnl_expr *e)
{
struct nftnl_expr_target *target = nftnl_expr_data(e);
@@ -371,9 +386,115 @@ index ed4bf7df6328..5e28925debeb 100644
+ nftnl_xfree(target->data);
}
- static bool nftnl_expr_target_cmp(const struct nftnl_expr *e1,
+ 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 f92180c7baf6..4fe078d3832c 100644
+index 1fc909930d86..c69f6f87deae 100644
--- a/src/gen.c
+++ b/src/gen.c
@@ -38,7 +38,7 @@ struct nftnl_gen *nftnl_gen_alloc(void)
@@ -386,10 +507,10 @@ index f92180c7baf6..4fe078d3832c 100644
EXPORT_SYMBOL(nftnl_gen_is_set);
diff --git a/src/object.c b/src/object.c
-index 30000f748da4..1b5965d7abdc 100644
+index e88203a82441..28e04486c76c 100644
--- a/src/object.c
+++ b/src/object.c
-@@ -50,11 +50,11 @@ EXPORT_SYMBOL(nftnl_obj_free);
+@@ -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))
@@ -404,7 +525,7 @@ index 30000f748da4..1b5965d7abdc 100644
}
EXPORT_SYMBOL(nftnl_obj_is_set);
-@@ -77,11 +77,11 @@ void nftnl_obj_set_data(struct nftnl_obj *obj, uint16_t attr,
+@@ -81,11 +81,11 @@ void nftnl_obj_set_data(struct nftnl_obj *obj, uint16_t attr,
switch (attr) {
case NFTNL_OBJ_TABLE:
@@ -418,7 +539,7 @@ index 30000f748da4..1b5965d7abdc 100644
obj->name = strdup(data);
break;
case NFTNL_OBJ_TYPE:
-@@ -523,7 +523,7 @@ void nftnl_obj_list_free(struct nftnl_obj_list *list)
+@@ -452,7 +452,7 @@ void nftnl_obj_list_free(struct nftnl_obj_list *list)
list_del(&r->head);
nftnl_obj_free(r);
}
@@ -427,7 +548,7 @@ index 30000f748da4..1b5965d7abdc 100644
}
EXPORT_SYMBOL(nftnl_obj_list_is_empty);
-@@ -610,5 +610,5 @@ struct nftnl_obj *nftnl_obj_list_iter_next(struct nftnl_obj_list_iter *iter)
+@@ -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)
{
@@ -435,7 +556,7 @@ index 30000f748da4..1b5965d7abdc 100644
+ nftnl_xfree(iter);
}
diff --git a/src/rule.c b/src/rule.c
-index e4cba1f7a352..911f327a6f9f 100644
+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)
@@ -532,7 +653,7 @@ index e4cba1f7a352..911f327a6f9f 100644
r->user.len = mnl_attr_get_payload_len(tb[NFTA_RULE_USERDATA]);
-@@ -910,7 +910,7 @@ struct nftnl_expr *nftnl_expr_iter_next(struct nftnl_expr_iter *iter)
+@@ -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)
{
@@ -540,8 +661,8 @@ index e4cba1f7a352..911f327a6f9f 100644
+ nftnl_xfree(iter);
}
- EXPORT_SYMBOL(nftnl_rule_cmp);
-@@ -971,7 +971,7 @@ void nftnl_rule_list_free(struct nftnl_rule_list *list)
+ 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);
}
@@ -550,7 +671,7 @@ index e4cba1f7a352..911f327a6f9f 100644
}
EXPORT_SYMBOL(nftnl_rule_list_is_empty);
-@@ -1063,5 +1063,5 @@ struct nftnl_rule *nftnl_rule_list_iter_next(struct nftnl_rule_list_iter *iter)
+@@ -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)
{
@@ -558,10 +679,10 @@ index e4cba1f7a352..911f327a6f9f 100644
+ nftnl_xfree(iter);
}
diff --git a/src/ruleset.c b/src/ruleset.c
-index eb49fde582c2..1639cae68c61 100644
+index 2468bd46cd5d..16059a305309 100644
--- a/src/ruleset.c
+++ b/src/ruleset.c
-@@ -72,7 +72,7 @@ void nftnl_ruleset_free(const struct nftnl_ruleset *r)
+@@ -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);
@@ -571,7 +692,7 @@ index eb49fde582c2..1639cae68c61 100644
EXPORT_SYMBOL(nftnl_ruleset_is_set);
diff --git a/src/set.c b/src/set.c
-index ac24eae6bb16..2b758c4ec89a 100644
+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)
@@ -607,9 +728,9 @@ index ac24eae6bb16..2b758c4ec89a 100644
- xfree(s->name);
+ nftnl_xfree(s->name);
break;
+ case NFTNL_SET_HANDLE:
case NFTNL_SET_FLAGS:
- case NFTNL_SET_KEY_TYPE:
-@@ -92,7 +92,7 @@ void nftnl_set_unset(struct nftnl_set *s, uint16_t attr)
+@@ -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:
@@ -618,7 +739,7 @@ index ac24eae6bb16..2b758c4ec89a 100644
break;
default:
return;
-@@ -125,7 +125,7 @@ int nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data,
+@@ -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))
@@ -627,7 +748,7 @@ index ac24eae6bb16..2b758c4ec89a 100644
s->table = strdup(data);
if (!s->table)
-@@ -133,7 +133,7 @@ int nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data,
+@@ -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))
@@ -636,7 +757,7 @@ index ac24eae6bb16..2b758c4ec89a 100644
s->name = strdup(data);
if (!s->name)
-@@ -177,7 +177,7 @@ int nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data,
+@@ -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))
@@ -645,7 +766,7 @@ index ac24eae6bb16..2b758c4ec89a 100644
s->user.data = malloc(data_len);
if (!s->user.data)
-@@ -478,7 +478,7 @@ int nftnl_set_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s)
+@@ -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))
@@ -654,7 +775,7 @@ index ac24eae6bb16..2b758c4ec89a 100644
s->table = strdup(mnl_attr_get_str(tb[NFTA_SET_TABLE]));
if (!s->table)
return -1;
-@@ -486,7 +486,7 @@ int nftnl_set_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s)
+@@ -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))
@@ -663,7 +784,7 @@ index ac24eae6bb16..2b758c4ec89a 100644
s->name = strdup(mnl_attr_get_str(tb[NFTA_SET_NAME]));
if (!s->name)
return -1;
-@@ -982,7 +982,7 @@ void nftnl_set_list_free(struct nftnl_set_list *list)
+@@ -742,7 +742,7 @@ void nftnl_set_list_free(struct nftnl_set_list *list)
list_del(&s->head);
nftnl_set_free(s);
}
@@ -672,7 +793,7 @@ index ac24eae6bb16..2b758c4ec89a 100644
}
EXPORT_SYMBOL(nftnl_set_list_is_empty);
-@@ -1074,7 +1074,7 @@ struct nftnl_set *nftnl_set_list_iter_next(struct nftnl_set_list_iter *iter)
+@@ -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)
{
@@ -682,7 +803,7 @@ index ac24eae6bb16..2b758c4ec89a 100644
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 e02a38791c9a..100ccda699c6 100644
+index ff983a67d62a..fac96cd368f1 100644
--- a/src/set_elem.c
+++ b/src/set_elem.c
@@ -43,18 +43,18 @@ EXPORT_SYMBOL(nftnl_set_elem_free);
@@ -760,7 +881,7 @@ index e02a38791c9a..100ccda699c6 100644
s->objref = strdup(data);
if (!s->objref)
-@@ -431,7 +431,7 @@ static int nftnl_set_elems_parse2(struct nftnl_set *s, const struct nlattr *nest
+@@ -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))
@@ -769,7 +890,7 @@ index e02a38791c9a..100ccda699c6 100644
e->user.len = mnl_attr_get_payload_len(tb[NFTA_SET_ELEM_USERDATA]);
e->user.data = malloc(e->user.len);
-@@ -516,7 +516,7 @@ int nftnl_set_elems_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s)
+@@ -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))
@@ -778,7 +899,7 @@ index e02a38791c9a..100ccda699c6 100644
s->table =
strdup(mnl_attr_get_str(tb[NFTA_SET_ELEM_LIST_TABLE]));
if (!s->table)
-@@ -525,7 +525,7 @@ int nftnl_set_elems_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s)
+@@ -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))
@@ -787,7 +908,7 @@ index e02a38791c9a..100ccda699c6 100644
s->name =
strdup(mnl_attr_get_str(tb[NFTA_SET_ELEM_LIST_SET]));
if (!s->name)
-@@ -816,7 +816,7 @@ struct nftnl_set_elem *nftnl_set_elems_iter_next(struct nftnl_set_elems_iter *it
+@@ -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)
{
@@ -797,10 +918,10 @@ index e02a38791c9a..100ccda699c6 100644
static bool nftnl_attr_nest_overflow(struct nlmsghdr *nlh,
diff --git a/src/table.c b/src/table.c
-index 7f97ca4e5807..7ac57c33021b 100644
+index 54259eec7d06..888991b1b80d 100644
--- a/src/table.c
+++ b/src/table.c
-@@ -46,9 +46,9 @@ EXPORT_SYMBOL(nftnl_table_free);
+@@ -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))
@@ -812,7 +933,7 @@ index 7f97ca4e5807..7ac57c33021b 100644
}
EXPORT_SYMBOL(nftnl_table_is_set);
-@@ -65,7 +65,7 @@ void nftnl_table_unset(struct nftnl_table *t, uint16_t attr)
+@@ -66,7 +66,7 @@ void nftnl_table_unset(struct nftnl_table *t, uint16_t attr)
switch (attr) {
case NFTNL_TABLE_NAME:
@@ -820,8 +941,8 @@ index 7f97ca4e5807..7ac57c33021b 100644
+ nftnl_xfree(t->name);
break;
case NFTNL_TABLE_FLAGS:
- case NFTNL_TABLE_FAMILY:
-@@ -91,7 +91,7 @@ int nftnl_table_set_data(struct nftnl_table *t, uint16_t attr,
+ 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))
@@ -830,7 +951,7 @@ index 7f97ca4e5807..7ac57c33021b 100644
t->name = strdup(data);
if (!t->name)
-@@ -230,7 +230,7 @@ int nftnl_table_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_table *t)
+@@ -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))
@@ -839,7 +960,7 @@ index 7f97ca4e5807..7ac57c33021b 100644
t->name = strdup(mnl_attr_get_str(tb[NFTA_TABLE_NAME]));
if (!t->name)
return -1;
-@@ -452,7 +452,7 @@ void nftnl_table_list_free(struct nftnl_table_list *list)
+@@ -395,7 +395,7 @@ void nftnl_table_list_free(struct nftnl_table_list *list)
list_del(&r->head);
nftnl_table_free(r);
}
@@ -848,7 +969,7 @@ index 7f97ca4e5807..7ac57c33021b 100644
}
EXPORT_SYMBOL(nftnl_table_list_is_empty);
-@@ -538,5 +538,5 @@ struct nftnl_table *nftnl_table_list_iter_next(struct nftnl_table_list_iter *ite
+@@ -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)
{
@@ -881,7 +1002,7 @@ index f4264377508e..8a18391d83d1 100644
EXPORT_SYMBOL(nftnl_trace_is_set);
diff --git a/src/udata.c b/src/udata.c
-index 6bd965161c43..049819304ef5 100644
+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)
@@ -894,10 +1015,10 @@ index 6bd965161c43..049819304ef5 100644
EXPORT_SYMBOL(nftnl_udata_buf_len);
diff --git a/src/utils.c b/src/utils.c
-index 3e449609395e..08f668f56a95 100644
+index f641bf93ec68..02e7476a0ced 100644
--- a/src/utils.c
+++ b/src/utils.c
-@@ -264,7 +264,7 @@ int nftnl_fprintf(FILE *fp, const void *obj, uint32_t cmd, uint32_t type,
+@@ -304,7 +304,7 @@ int nftnl_fprintf(FILE *fp, const void *obj, uint32_t cmd, uint32_t type,
out:
if (buf != _buf)
@@ -907,5 +1028,5 @@ index 3e449609395e..08f668f56a95 100644
return ret;
}
--
-2.15.1
+2.19.1
diff --git a/package/libnftnl/libnftnl.hash b/package/libnftnl/libnftnl.hash
index c798dd2bb1..3ecaeb8a11 100644
--- a/package/libnftnl/libnftnl.hash
+++ b/package/libnftnl/libnftnl.hash
@@ -1,6 +1,3 @@
# From http://www.netfilter.org/projects/libnftnl/downloads.html
-sha1 90b70f52a26f88ab1106671e797faac21265fa6a libnftnl-1.0.9.tar.bz2
-# Locally calculated after checking pgp signature
-# http://www.netfilter.org/projects/libnftnl/files/libnftnl-1.0.9.tar.bz2.sig
-sha256 fec1d824aee301e59a11aeaae2a2d429cb99ead81e6bafab791a4dd6569b3635 libnftnl-1.0.9.tar.bz2
+sha256 a5c7b7a6c13c9c5898b13fcb1126fefce2015d5a96d7c354b19aaa40b6aece5d libnftnl-1.1.2.tar.bz2
sha256 98193898c663001eff2fdcfb676e210c13042bc1a05e8d570c363efa396f8e24 COPYING
diff --git a/package/libnftnl/libnftnl.mk b/package/libnftnl/libnftnl.mk
index 8c8b3f8243..b8e015baf8 100644
--- a/package/libnftnl/libnftnl.mk
+++ b/package/libnftnl/libnftnl.mk
@@ -4,8 +4,8 @@
#
################################################################################
-LIBNFTNL_VERSION = 1.0.9
-LIBNFTNL_SITE = http://netfilter.org/projects/libnftnl/files
+LIBNFTNL_VERSION = 1.1.2
+LIBNFTNL_SITE = https://netfilter.org/projects/libnftnl/files
LIBNFTNL_SOURCE = libnftnl-$(LIBNFTNL_VERSION).tar.bz2
LIBNFTNL_LICENSE = GPL-2.0+
LIBNFTNL_LICENSE_FILES = COPYING
diff --git a/package/libostree/libostree.hash b/package/libostree/libostree.hash
index 35bf2caf0a..ddd15b5099 100644
--- a/package/libostree/libostree.hash
+++ b/package/libostree/libostree.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 9a3c17af133e6d381bb997473c6371ef8f048c1cfb6bd0acdb5662ede712aa5a libostree-2018.9.tar.xz
+sha256 f263cfed75dcc9e312a874d28241e7143d8a0d8c774938f2165327bae67dbe06 libostree-2018.9.1.tar.xz
sha256 b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c COPYING
diff --git a/package/libostree/libostree.mk b/package/libostree/libostree.mk
index 4c841dbe4d..e8cdd64d6e 100644
--- a/package/libostree/libostree.mk
+++ b/package/libostree/libostree.mk
@@ -4,9 +4,10 @@
#
################################################################################
-LIBOSTREE_VERSION = 2018.9
+LIBOSTREE_VERSION_MAJOR = 2018.9
+LIBOSTREE_VERSION= $(LIBOSTREE_VERSION_MAJOR).1
LIBOSTREE_SOURCE = libostree-$(LIBOSTREE_VERSION).tar.xz
-LIBOSTREE_SITE = https://github.com/ostreedev/ostree/releases/download/v$(LIBOSTREE_VERSION)
+LIBOSTREE_SITE = https://github.com/ostreedev/ostree/releases/download/v$(LIBOSTREE_VERSION_MAJOR)
LIBOSTREE_LICENSE = LGPL-2.0+
LIBOSTREE_LICENSE_FILES = COPYING
@@ -68,4 +69,13 @@ else
LIBOSTREE_CONF_OPTS += --without-selinux
endif
+ifeq ($(BR2_INIT_SYSTEMD),y)
+LIBOSTREE_CONF_OPTS += \
+ --with-libsystemd \
+ --with-systemdsystemunitdir=/usr/lib/systemd/system
+LIBOSTREE_DEPENDENCIES += systemd
+else
+LIBOSTREE_CONF_OPTS += --without-libsystemd
+endif
+
$(eval $(autotools-package))
diff --git a/package/libpng/libpng.hash b/package/libpng/libpng.hash
index 0a0cebee91..27f66a5d01 100644
--- a/package/libpng/libpng.hash
+++ b/package/libpng/libpng.hash
@@ -1,7 +1,7 @@
-# From http://sourceforge.net/projects/libpng/files/libpng16/1.6.34/
-md5 c05b6ca7190a5e387b78657dbe5536b2 libpng-1.6.34.tar.xz
-sha1 45de4ec996ffcc3e18037e7c128abe95f4d0292a libpng-1.6.34.tar.xz
+# From https://sourceforge.net/projects/libpng/files/libpng16/1.6.35/
+md5 678b7e696a62a193ed3503b04bf449d6 libpng-1.6.35.tar.xz
+sha1 0df1561aa1da610e892239348970d574b14deed0 libpng-1.6.35.tar.xz
# Locally computed:
-sha256 2f1e960d92ce3b3abd03d06dfec9637dfbd22febf107a536b44f7a47c60659f6 libpng-1.6.34.tar.xz
-sha256 a247c24f82bacf0403fe2f3d5550493a91cdb575fe7036b764bda8cacf3efd9c LICENSE
+sha256 23912ec8c9584917ed9b09c5023465d71709dce089be503c7867fec68a93bcd7 libpng-1.6.35.tar.xz
+sha256 f9850940c6606003eea9c8864b2a3f177eb5c963614aba5a3c5a24c47dd043ab LICENSE
diff --git a/package/libpng/libpng.mk b/package/libpng/libpng.mk
index ace62cd876..b6d1d8d071 100644
--- a/package/libpng/libpng.mk
+++ b/package/libpng/libpng.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBPNG_VERSION = 1.6.34
+LIBPNG_VERSION = 1.6.35
LIBPNG_SERIES = 16
LIBPNG_SOURCE = libpng-$(LIBPNG_VERSION).tar.xz
LIBPNG_SITE = http://downloads.sourceforge.net/project/libpng/libpng$(LIBPNG_SERIES)/$(LIBPNG_VERSION)
diff --git a/package/libressl/libressl.hash b/package/libressl/libressl.hash
index 111fe4feed..b0d1928e10 100644
--- a/package/libressl/libressl.hash
+++ b/package/libressl/libressl.hash
@@ -1,4 +1,4 @@
# From https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/SHA256
-sha256 1e3a9fada06c1c060011470ad0ff960de28f9a0515277d7336f7e09362517da6 libressl-2.7.4.tar.gz
+sha256 b8cb31e59f1294557bfc80f2a662969bc064e83006ceef0574e2553a1c254fd5 libressl-2.8.2.tar.gz
# Locally computed
sha256 5c63613f008f16a9c0025c096bbd736cecf720494d121b5c5203e0ec6e5955b1 COPYING
diff --git a/package/libressl/libressl.mk b/package/libressl/libressl.mk
index 35494c8239..f035f9044e 100644
--- a/package/libressl/libressl.mk
+++ b/package/libressl/libressl.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBRESSL_VERSION = 2.7.4
+LIBRESSL_VERSION = 2.8.2
LIBRESSL_SITE = https://ftp.openbsd.org/pub/OpenBSD/LibreSSL
LIBRESSL_LICENSE = ISC (new additions), OpenSSL or SSLeay (original OpenSSL code)
LIBRESSL_LICENSE_FILES = COPYING
diff --git a/package/libsigrok/Config.in b/package/libsigrok/Config.in
index fb74beaab5..bb76e09d2d 100644
--- a/package/libsigrok/Config.in
+++ b/package/libsigrok/Config.in
@@ -4,6 +4,7 @@ config BR2_PACKAGE_LIBSIGROK
depends on BR2_USE_WCHAR
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU
+ depends on BR2_ENABLE_LOCALE
depends on !BR2_STATIC_LIBS # libzip
# std=c11
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
@@ -35,7 +36,7 @@ comment "C++ bindings need a toolchain w/ C++, gcc >= 4.9"
endif
-comment "libsigrok needs a toolchain w/ wchar, threads, dynamic library, gcc >= 4.7"
+comment "libsigrok needs a toolchain w/ wchar, locale, threads, dynamic library, gcc >= 4.7"
depends on BR2_USE_MMU
depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS \
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 || BR2_STATIC_LIBS
diff --git a/package/libsigrok/libsigrok.hash b/package/libsigrok/libsigrok.hash
index 47ad6129f6..7a52c6ca1b 100644
--- a/package/libsigrok/libsigrok.hash
+++ b/package/libsigrok/libsigrok.hash
@@ -1,2 +1,2 @@
# Locally computed
-sha256 4c8c86779b880a5c419f6c77a08b1147021e5a19fa83b0f3b19da27463c9f3a4 libsigrok-0.5.0.tar.gz
+sha256 e40fde7af98d29e922e9d3cbe0a6c0569889153fc31e47b8b1afe4d846292b9c libsigrok-0.5.1.tar.gz
diff --git a/package/libsigrok/libsigrok.mk b/package/libsigrok/libsigrok.mk
index ef7fab82bd..5bca9ad518 100644
--- a/package/libsigrok/libsigrok.mk
+++ b/package/libsigrok/libsigrok.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBSIGROK_VERSION = 0.5.0
+LIBSIGROK_VERSION = 0.5.1
LIBSIGROK_SITE = http://sigrok.org/download/source/libsigrok
LIBSIGROK_LICENSE = GPL-3.0+
LIBSIGROK_LICENSE_FILES = COPYING
diff --git a/package/libsigrokdecode/libsigrokdecode.hash b/package/libsigrokdecode/libsigrokdecode.hash
index c2e15f61cb..e6eb4a080b 100644
--- a/package/libsigrokdecode/libsigrokdecode.hash
+++ b/package/libsigrokdecode/libsigrokdecode.hash
@@ -1,3 +1,3 @@
# Locally computed
-sha256 493d8b555ae4c245a5feebbd94de33aec7ee85a4f16bc3f4c3985961b459b51e libsigrokdecode-0.5.1.tar.gz
+sha256 e08d9e797c54eccf3144da631b6e5f1498ac531e51520428df537a1da82583f0 libsigrokdecode-0.5.2.tar.gz
sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING
diff --git a/package/libsigrokdecode/libsigrokdecode.mk b/package/libsigrokdecode/libsigrokdecode.mk
index 8b4802a7f3..f509fbdf7e 100644
--- a/package/libsigrokdecode/libsigrokdecode.mk
+++ b/package/libsigrokdecode/libsigrokdecode.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBSIGROKDECODE_VERSION = 0.5.1
+LIBSIGROKDECODE_VERSION = 0.5.2
LIBSIGROKDECODE_SITE = http://sigrok.org/download/source/libsigrokdecode
LIBSIGROKDECODE_LICENSE = GPL-3.0+
LIBSIGROKDECODE_LICENSE_FILES = COPYING
diff --git a/package/libtirpc/libtirpc.hash b/package/libtirpc/libtirpc.hash
index 643a5d2050..eacc94d1de 100644
--- a/package/libtirpc/libtirpc.hash
+++ b/package/libtirpc/libtirpc.hash
@@ -1,5 +1,5 @@
# From sourceforge's info on download page:
-sha1 48adb32dc7c3b73c66f001c239da76b8398abf11 libtirpc-1.0.3.tar.bz2
+sha1 d85717035cb9bd6c45557a1eb1351d3af9a69ff7 libtirpc-1.1.4.tar.bz2
# Locally computed
-sha256 86c3a78fc1bddefa96111dd233124c703b22a78884203c55c3e06b3be6a0fd5e libtirpc-1.0.3.tar.bz2
+sha256 2ca529f02292e10c158562295a1ffd95d2ce8af97820e3534fe1b0e3aec7561d libtirpc-1.1.4.tar.bz2
sha256 17cf6098f95bdbb269f0bbc68e76c88fe20487ca7ec53f454923ab4256ecd2e7 COPYING
diff --git a/package/libtirpc/libtirpc.mk b/package/libtirpc/libtirpc.mk
index 36f9f7ef21..1e1905b713 100644
--- a/package/libtirpc/libtirpc.mk
+++ b/package/libtirpc/libtirpc.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBTIRPC_VERSION = 1.0.3
+LIBTIRPC_VERSION = 1.1.4
LIBTIRPC_SOURCE = libtirpc-$(LIBTIRPC_VERSION).tar.bz2
LIBTIRPC_SITE = http://downloads.sourceforge.net/project/libtirpc/libtirpc/$(LIBTIRPC_VERSION)
LIBTIRPC_LICENSE = BSD-3-Clause
diff --git a/package/libtool/libtool.mk b/package/libtool/libtool.mk
index bf97ee12b5..10af8cf715 100644
--- a/package/libtool/libtool.mk
+++ b/package/libtool/libtool.mk
@@ -7,12 +7,22 @@
LIBTOOL_VERSION = 2.4.6
LIBTOOL_SOURCE = libtool-$(LIBTOOL_VERSION).tar.xz
LIBTOOL_SITE = $(BR2_GNU_MIRROR)/libtool
+
+# For the target variant, we only want to build/install libltdl
+LIBTOOL_SUBDIR = libltdl
+HOST_LIBTOOL_SUBDIR = .
+
LIBTOOL_INSTALL_STAGING = YES
-LIBTOOL_CONF_ENV = HELP2MAN=true
+
+LIBTOOL_CONF_OPTS = --enable-ltdl-install
+
LIBTOOL_DEPENDENCIES = host-m4
HOST_LIBTOOL_DEPENDENCIES = host-m4
-LIBTOOL_LICENSE = GPL-2.0+
-LIBTOOL_LICENSE_FILES = COPYING
+
+LIBTOOL_LICENSE = LGPL-2.1+
+LIBTOOL_LICENSE_FILES = $(LIBTOOL_SUBDIR)/COPYING.LIB
+HOST_LIBTOOL_LICENSE = GPL-2.0+ (libtool), LGPL-2.1+ (libltdl)
+HOST_LIBTOOL_LICENSE_FILES = COPYING $(LIBTOOL_SUBDIR)/COPYING.LIB
HOST_LIBTOOL_CONF_ENV = MAKEINFO=true
HOST_LIBTOOL_LIBTOOL_PATCH = NO
diff --git a/package/libtorrent-rasterbar/Config.in b/package/libtorrent-rasterbar/Config.in
new file mode 100644
index 0000000000..aa986f2388
--- /dev/null
+++ b/package/libtorrent-rasterbar/Config.in
@@ -0,0 +1,21 @@
+comment "libtorrent-rasterbar needs a toolchain w/ C++, threads, wchar, gcc >= 4.8"
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
+ !BR2_HOST_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+
+config BR2_PACKAGE_LIBTORRENT_RASTERBAR
+ bool "libtorrent-rasterbar"
+ depends on BR2_INSTALL_LIBSTDCPP # boost
+ depends on BR2_HOST_GCC_AT_LEAST_4_8
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+ depends on BR2_TOOLCHAIN_HAS_THREADS # boost
+ depends on BR2_USE_WCHAR # boost
+ select BR2_PACKAGE_BOOST
+ select BR2_PACKAGE_BOOST_CHRONO
+ select BR2_PACKAGE_BOOST_SYSTEM
+ select BR2_PACKAGE_BOOST_RANDOM
+ select BR2_PACKAGE_OPENSSL
+ help
+ libtorrent is a feature complete C++ bittorrent implementation
+ focusing on efficiency and scalability.
+
+ https://www.libtorrent.org/
diff --git a/package/libtorrent-rasterbar/libtorrent-rasterbar.hash b/package/libtorrent-rasterbar/libtorrent-rasterbar.hash
new file mode 100644
index 0000000000..e38c0f4f1d
--- /dev/null
+++ b/package/libtorrent-rasterbar/libtorrent-rasterbar.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 7c23deba7fa279825642307587609d51c9935ac7606e0ef2f2d0ba10728b5847 libtorrent-rasterbar-1.1.11.tar.gz
+sha256 f3a5dd1558cce616b12edad521427ec8976ce2bb0af33f7f359cfa648bf55ad8 COPYING
diff --git a/package/libtorrent-rasterbar/libtorrent-rasterbar.mk b/package/libtorrent-rasterbar/libtorrent-rasterbar.mk
new file mode 100644
index 0000000000..24bd011ae7
--- /dev/null
+++ b/package/libtorrent-rasterbar/libtorrent-rasterbar.mk
@@ -0,0 +1,25 @@
+################################################################################
+#
+# libtorrent-rasterbar
+#
+################################################################################
+
+LIBTORRENT_RASTERBAR_VERSION = 1.1.11
+LIBTORRENT_RASTERBAR_SITE = https://github.com/arvidn/libtorrent/releases/download/libtorrent_$(subst .,_,$(LIBTORRENT_RASTERBAR_VERSION))
+LIBTORRENT_RASTERBAR_LICENSE = BSD-3-Clause
+LIBTORRENT_RASTERBAR_LICENSE_FILES = COPYING
+LIBTORRENT_RASTERBAR_DEPENDENCIES = host-pkgconf boost openssl
+LIBTORRENT_RASTERBAR_INSTALL_STAGING = YES
+LIBTORRENT_RASTERBAR_CONF_OPTS = \
+ --with-boost-libdir=$(STAGING_DIR)/usr/lib \
+ --disable-invariant-checks
+LIBTORRENT_RASTERBAR_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11"
+
+ifeq ($(BR2_ENABLE_LOCALE)$(BR2_PACKAGE_LIBICONV),y)
+LIBTORRENT_RASTERBAR_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBICONV),libiconv)
+LIBTORRENT_RASTERBAR_CONF_OPTS += --with-libiconv
+else
+LIBTORRENT_RASTERBAR_CONF_OPTS += --without-libiconv
+endif
+
+$(eval $(autotools-package))
diff --git a/package/libuv/libuv.hash b/package/libuv/libuv.hash
index 0a039480ad..c19aba9c9a 100644
--- a/package/libuv/libuv.hash
+++ b/package/libuv/libuv.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 30af979c4f4b8d1b895ae6d115f7400c751542ccb9e656350fc89fda08d4eabd libuv-v1.23.2.tar.gz
+sha256 55587c525196a7a550fa7e5eb61794c377ec23b44adb435fdded86e8f7f31a16 libuv-v1.24.0.tar.gz
sha256 6d20216ae022fbeed23916f48508fd807ece3d8464992330643b0e64e5c0c24b LICENSE
diff --git a/package/libuv/libuv.mk b/package/libuv/libuv.mk
index ff3903b568..ddf6eb8112 100644
--- a/package/libuv/libuv.mk
+++ b/package/libuv/libuv.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBUV_VERSION = v1.23.2
+LIBUV_VERSION = v1.24.0
LIBUV_SITE = $(call github,libuv,libuv,$(LIBUV_VERSION))
LIBUV_DEPENDENCIES = host-pkgconf
LIBUV_INSTALL_STAGING = YES
diff --git a/package/linux-firmware/linux-firmware.hash b/package/linux-firmware/linux-firmware.hash
index ca6ad8f59d..12310d55ed 100644
--- a/package/linux-firmware/linux-firmware.hash
+++ b/package/linux-firmware/linux-firmware.hash
@@ -1,11 +1,11 @@
# Locally calculated
-sha256 b279ca4d086887c2efab13e28a7ca36e409410d3df38a62d7c7b5799ee3de916 linux-firmware-44d4fca9922a252a0bd81f6307bcc072a78da54a.tar.gz
+sha256 5c636765fd1ac638176893feccfd4a4854f59fc3d01b38f3ccdbb89bd5bb6ef1 linux-firmware-1baa34868b2c0a004dc595b20678145e3fff83e7.tar.gz
sha256 8116433f4004fc0c24d72b3d9e497808b724aa0e5e1cd63fc1bf66b715b1e2e9 LICENCE.Abilis
sha256 4b3ea5d5a03c0db81bee0bcb14b30d75b30ef568597bb5be7d4dee57f434265f LICENSE.amdgpu
sha256 38f2037aa14631b4b29826d7a99379613c41a97064d1defdee30a7a022138b20 LICENCE.Marvell
sha256 802b7014b26c606cf6248ae8b0ab1ce6d2d1b0db236d38dd269e676cd70710f2 LICENCE.atheros_firmware
sha256 3b5eb392b2d9d8c46d6aae26d06c187e5ea3029b12d13bc2b8deb8b3ce6bfa53 ath10k/QCA6174/hw3.0/notice_ath10k_firmware-4.txt
-sha256 c565861ff7c42f5df98e15239241f1f42614e5e15f362094a2d3e8da724dc842 ath10k/QCA6174/hw3.0/notice_ath10k_firmware-6.txt
+sha256 8ce5c6ea0542bf4aac31fc3ae16a39792ad22d0eae4543063fac56fb3380f021 ath10k/QCA6174/hw3.0/notice_ath10k_firmware-6.txt
sha256 b16056fc91b82a0e3e8de8f86c2dac98201aa9dc3cbd33e8d38f1b087fcec30d LICENCE.broadcom_bcm43xx
sha256 a5777f9e80aca0603b0648454de996168b1c530322550ccda94d6d78bcf6c061 LICENCE.chelsio_firmware
sha256 60fbc9cccb455e1a3306c97db942d6f24fa93664be61d54c497637e6d0e2ae83 LICENCE.fw_sst_0f28
@@ -27,5 +27,5 @@ sha256 8542aeabf2761935122d693561e16766ce1bcc2b0d003204f9040b7d6d929f2e LICENSE.
sha256 be904cd28cb292b80cdb6cf412ab0d9159d431671e987ad433c1f62e0988a9bc LICENSE.qcom
sha256 fc6223d4bfe9f2f9e2eddc44b9fe5721d0caf49f01cb08d602906add686d8c6f LICENSE.radeon
sha256 2bdd2e716f05d9737d3f9a20f9a3a3c0caee0e866100ddb0673f1178e42f92b9 LICENSE.sdma_firmware
-sha256 ef38a9a8bb4b0f72b369d337426eea63ef8fc9d48453f127028d935f7dbc5820 WHENCE
+sha256 9b873499a822762177a7a02d2a3ead9fdf0d514c0f9899fb16a2d22ed99f4acc WHENCE
sha256 fa43e1b9a13b341a07adca9dbe73d0f9072d7966fdfe811c01f0dd2872d7309a qcom/NOTICE.txt
diff --git a/package/linux-firmware/linux-firmware.mk b/package/linux-firmware/linux-firmware.mk
index 4eba57434b..60f39804a2 100644
--- a/package/linux-firmware/linux-firmware.mk
+++ b/package/linux-firmware/linux-firmware.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LINUX_FIRMWARE_VERSION = 44d4fca9922a252a0bd81f6307bcc072a78da54a
+LINUX_FIRMWARE_VERSION = 1baa34868b2c0a004dc595b20678145e3fff83e7
LINUX_FIRMWARE_SITE = http://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
LINUX_FIRMWARE_SITE_METHOD = git
diff --git a/package/linux-headers/Config.in.host b/package/linux-headers/Config.in.host
index 756fe81a57..1b2a585280 100644
--- a/package/linux-headers/Config.in.host
+++ b/package/linux-headers/Config.in.host
@@ -6,7 +6,7 @@ config BR2_PACKAGE_HOST_LINUX_HEADERS
choice
prompt "Kernel Headers"
default BR2_KERNEL_HEADERS_AS_KERNEL if BR2_LINUX_KERNEL
- default BR2_KERNEL_HEADERS_4_18
+ default BR2_KERNEL_HEADERS_4_19
help
Select the kernel version to get headers from.
@@ -60,6 +60,10 @@ config BR2_KERNEL_HEADERS_4_18
bool "Linux 4.18.x kernel headers"
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18
+config BR2_KERNEL_HEADERS_4_19
+ bool "Linux 4.19.x kernel headers"
+ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19
+
config BR2_KERNEL_HEADERS_VERSION
bool "Manually specified Linux version"
help
@@ -125,6 +129,10 @@ choice
This is used to hide/show some packages that have strict
requirements on the version of kernel headers.
+config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19
+ bool "4.19.x"
+ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19
+
config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18
bool "4.18.x"
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18
@@ -295,6 +303,7 @@ config BR2_DEFAULT_KERNEL_HEADERS
default "4.14.83" if BR2_KERNEL_HEADERS_4_14
default "4.16.18" if BR2_KERNEL_HEADERS_4_16
default "4.18.20" if BR2_KERNEL_HEADERS_4_18
+ default "4.19.2" if BR2_KERNEL_HEADERS_4_19
default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
default "custom" if BR2_KERNEL_HEADERS_CUSTOM_TARBALL
default BR2_KERNEL_HEADERS_CUSTOM_REPO_VERSION \
diff --git a/package/linux-tools/Config.in b/package/linux-tools/Config.in
index 349dc6bf0d..f4199fd618 100644
--- a/package/linux-tools/Config.in
+++ b/package/linux-tools/Config.in
@@ -34,6 +34,15 @@ config BR2_PACKAGE_LINUX_TOOLS_IIO
These tools are available only from kernel version 4.7.
+config BR2_PACKAGE_LINUX_TOOLS_PCI
+ bool "pci"
+ select BR2_PACKAGE_LINUX_TOOLS
+ help
+ pcitest is a tool for testing capabilities related to a
+ PCI Endpoint (only works with specific Endpoints).
+
+ These tools are available only from kernel version 4.20.
+
config BR2_PACKAGE_LINUX_TOOLS_PERF
bool "perf"
select BR2_PACKAGE_LINUX_TOOLS
diff --git a/package/linux-tools/linux-tool-pci.mk.in b/package/linux-tools/linux-tool-pci.mk.in
new file mode 100644
index 0000000000..4ef0368a32
--- /dev/null
+++ b/package/linux-tools/linux-tool-pci.mk.in
@@ -0,0 +1,27 @@
+################################################################################
+#
+# pci
+#
+################################################################################
+
+LINUX_TOOLS += pci
+
+PCI_MAKE_OPTS = $(LINUX_MAKE_FLAGS)
+
+define PCI_BUILD_CMDS
+ $(Q)if ! grep install $(LINUX_DIR)/tools/pci/Makefile >/dev/null 2>&1 ; then \
+ echo "Your kernel version is too old and does not have install section in the pci tools." ; \
+ echo "At least kernel 4.20 must be used." ; \
+ exit 1 ; \
+ fi
+
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(LINUX_DIR)/tools/pci \
+ $(PCI_MAKE_OPTS)
+endef
+
+define PCI_INSTALL_TARGET_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(LINUX_DIR)/tools/pci \
+ $(PCI_MAKE_OPTS) \
+ DESTDIR=$(TARGET_DIR) \
+ install
+endef
diff --git a/package/linuxptp/linuxptp.hash b/package/linuxptp/linuxptp.hash
index ef2db56226..5e6c7741cd 100644
--- a/package/linuxptp/linuxptp.hash
+++ b/package/linuxptp/linuxptp.hash
@@ -1,2 +1,9 @@
+# From https://sourceforge.net/projects/linuxptp/files/v2.0/
+sha1 592ca42c6146a79c1fcabed7c19fa7af4803d4f6 linuxptp-2.0.tgz
+md5 d8bb7374943bb747db7786ac26f17f11 linuxptp-2.0.tgz
+
# Locally computed:
-sha256 d0ccc4591966e21819cdc248765ebbe02456bc8ca37845eb7c23c2d1ff9bcf6b linuxptp-303b08cbf55096aba55bd08a314e0701e5c33482.tar.gz
+sha256 0a24d9401e87d4af023d201e234d91127d82c350daad93432106284aa9459c7d linuxptp-2.0.tgz
+
+# Hash for license file:
+sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
diff --git a/package/linuxptp/linuxptp.mk b/package/linuxptp/linuxptp.mk
index f43fee6f69..c304ff6d6e 100644
--- a/package/linuxptp/linuxptp.mk
+++ b/package/linuxptp/linuxptp.mk
@@ -4,9 +4,9 @@
#
################################################################################
-LINUXPTP_VERSION = 303b08cbf55096aba55bd08a314e0701e5c33482
-LINUXPTP_SITE_METHOD = git
-LINUXPTP_SITE = git://git.code.sf.net/p/linuxptp/code
+LINUXPTP_VERSION = 2.0
+LINUXPTP_SOURCE = linuxptp-$(LINUXPTP_VERSION).tgz
+LINUXPTP_SITE = http://downloads.sourceforge.net/linuxptp
LINUXPTP_LICENSE = GPL-2.0+
LINUXPTP_LICENSE_FILES = COPYING
diff --git a/package/lldpd/0001-build-ability-to-disable-libbsd-with-without-libbsd.patch b/package/lldpd/0001-build-ability-to-disable-libbsd-with-without-libbsd.patch
new file mode 100644
index 0000000000..7301ac636b
--- /dev/null
+++ b/package/lldpd/0001-build-ability-to-disable-libbsd-with-without-libbsd.patch
@@ -0,0 +1,106 @@
+From ff3dcc4ad71c1105bd8ea11afe7e07efd48c038d Mon Sep 17 00:00:00 2001
+From: Vincent Bernat <vincent@bernat.ch>
+Date: Tue, 25 Sep 2018 10:57:49 +0200
+Subject: [PATCH] build: ability to disable libbsd with --without-libbsd
+
+This is useful when user wants to ensure reproducibility of the build
+whatever libbsd is present or not.
+
+Signed-off-by: Trent Piepho <tpiepho@impinj.com>
+---
+ configure.ac | 59 +++++++++++++++++++++++++++++++++++++++--------------------
+ src/marshal.h | 1 +
+ 2 files changed, 40 insertions(+), 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 9b40473..589cd96 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -173,26 +173,44 @@ AC_FUNC_REALLOC
+ AC_FUNC_FORK
+
+ # Some functions can be in libbsd
+-PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [
+- _save_CFLAGS="$CFLAGS"
+- _save_LIBS="$LIBS"
+- CFLAGS="$CFLAGS $libbsd_CFLAGS"
+- LIBS="$LIBS $libbsd_LIBS"
+- AC_MSG_CHECKING([if libbsd can be linked correctly])
+- AC_TRY_LINK([
+-@%:@include <sys/time.h>
+-@%:@include <sys/types.h>
+-],[],
+- [
+- AC_MSG_RESULT(yes)
+- LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS"
+- LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS"
+- ],[
+- AC_MSG_RESULT(no)
+- CFLAGS="$_save_CFLAGS"
+- LIBS="$_save_LIBS"
+- ])
+-], [:])
++AC_ARG_WITH([libbsd],
++ AS_HELP_STRING(
++ [--with-libbsd],
++ [Use libbsd @<:@default=auto@:>@]),
++ [],
++ [with_libbsd=auto])
++if test x"$with_libbsd" != x"no"; then
++ PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [
++ _save_CFLAGS="$CFLAGS"
++ _save_LIBS="$LIBS"
++ CFLAGS="$CFLAGS $libbsd_CFLAGS"
++ LIBS="$LIBS $libbsd_LIBS"
++ AC_MSG_CHECKING([if libbsd can be linked correctly])
++ AC_TRY_LINK([
++ @%:@include <sys/time.h>
++ @%:@include <sys/types.h>
++ ],[],
++ [
++ AC_MSG_RESULT(yes)
++ LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS"
++ LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS"
++ with_libbsd=yes
++ ],[
++ AC_MSG_RESULT(no)
++ CFLAGS="$_save_CFLAGS"
++ LIBS="$_save_LIBS"
++ if test x"$with_libbsd" = x"yes"; then
++ AC_MSG_FAILURE([*** no libbsd support found])
++ fi
++ with_libbsd=no
++ ])
++ ], [
++ if test x"$with_libbsd" = x"yes"; then
++ AC_MSG_FAILURE([*** no libbsd support found])
++ fi
++ with_libbsd=no
++ ])
++fi
+
+ # setproctitle may have an _init function
+ AC_REPLACE_FUNCS([setproctitle])
+@@ -412,6 +430,7 @@ cat <<EOF
+ XML output.....: ${with_xml-no}
+ Oldies support.: $enable_oldies
+ seccomp........: ${with_seccomp-no}
++ libbsd.........: ${with_libbsd-no}
+
+ Privilege separation:
+ Enabled........: $enable_privsep
+diff --git a/src/marshal.h b/src/marshal.h
+index b0e8032..0a782d5 100644
+--- a/src/marshal.h
++++ b/src/marshal.h
+@@ -19,6 +19,7 @@
+ #define _MARSHAL_H
+
+ #include <stddef.h>
++#include <stdint.h>
+ #include <sys/types.h>
+
+ struct marshal_info;
+--
+2.14.4
+
diff --git a/package/lldpd/0001-build-make-generation-of-atom-glue-compatible-with-o.patch b/package/lldpd/0001-build-make-generation-of-atom-glue-compatible-with-o.patch
deleted file mode 100644
index d5675d39af..0000000000
--- a/package/lldpd/0001-build-make-generation-of-atom-glue-compatible-with-o.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 106aa50d4e5b336f7dd2d5cf4d882e692d205e91 Mon Sep 17 00:00:00 2001
-From: Vincent Bernat <vincent@bernat.im>
-Date: Sat, 18 Jun 2016 22:18:41 +0200
-Subject: [PATCH] build: make generation of atom-glue compatible with older gcc
- versions
-
-With old versions, cpp doesn't accept several files as input. See #186.
-
-Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
----
- src/lib/Makefile.am | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
-index 250e32a..2a5cdb3 100644
---- a/src/lib/Makefile.am
-+++ b/src/lib/Makefile.am
-@@ -20,8 +20,9 @@ nodist_liblldpctl_la_SOURCES = atom-glue.c
- liblldpctl_la_LIBADD = $(top_builddir)/src/libcommon-daemon-lib.la libfixedpoint.la
-
- atom-glue.c: $(ATOM_FILES) Makefile
-- $(AM_V_GEN)($(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(ATOM_FILES:%=$(srcdir)/%) | \
-+ $(AM_V_GEN)(for f in $(ATOM_FILES:%=$(srcdir)/%); do \
-+ $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $$f; done | \
- $(SED) -n 's+^void init_atom_builder_\([^(]*\)().*, \([0-9]*\)).*+\2 \1+p' | \
- sort | \
- $(AWK) '{ atoms[$$2] = 1 } \
-@@ -30,8 +31,9 @@ atom-glue.c: $(ATOM_FILES) Makefile
- print " static int init = 0; if (init) return; init++;"; \
- for (atom in atoms) { print " init_atom_builder_"atom"();" } \
- print "}"; }' && \
-+ for f in $(ATOM_FILES:%=$(srcdir)/%); do \
- $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(ATOM_FILES:%=$(srcdir)/%) | \
-+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $$f; done | \
- $(SED) -n 's+^void init_atom_map_\([^(]*\)().*, \([0-9]*\)).*+\2 \1+p' | \
- sort -n | \
- $(AWK) '{ atoms[$$2] = 1 } \
---
-2.9.0
-
diff --git a/package/lldpd/0002-configure-do-not-check-for-libbsd.patch b/package/lldpd/0002-configure-do-not-check-for-libbsd.patch
deleted file mode 100644
index 4d63274526..0000000000
--- a/package/lldpd/0002-configure-do-not-check-for-libbsd.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 0801a066cd4a24a858ddfa7c62c7802e0f5533a8 Mon Sep 17 00:00:00 2001
-From: "Yann E. MORIN" <yann.morin.1998@free.fr>
-Date: Sun, 14 Aug 2016 12:15:17 +0200
-Subject: [PATCH] configure: do not check for libbsd
-
-libbsd causes build issues because its libbsd-overlay.pc file is borked:
-it contains -isystem in CFLAGS, which is not munged by pkgconf, so we
-end up using the headers of the build machine, causing all sorts of
-hard-to-debug trouble at build time.
-
-lldpd uses libbsd-overlay for a few helper functions, but has fallbacks
-in case it is not available. The only feature that is lost when not using
-it is that the neighbour name is no longer displayed in /proc/self/cmdline.
-As the author of lldpd said on IRC: "people should survive! ;-)"
-
-So we just remove the detection of libbsd altogether.
-
-Fixes:
- http://autobuild.buildroot.org/results/6b7/6b70fa379e834ec71cc260ba6af771b531ca3511/
- http://autobuild.buildroot.org/results/769/769074c4bb67336ae6679f2c1cd2a8220d2bec24/
- http://autobuild.buildroot.org/results/c8a/c8a6001f437701ecc75f6c9252935645bda8a8c8/
- [...]
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
----
- configure.ac | 19 -------------------
- 1 file changed, 19 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index dd723b0..45498ce 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -165,25 +165,6 @@ AC_FUNC_MALLOC
- AC_FUNC_REALLOC
- AC_FUNC_FORK
-
--# Some functions can be in libbsd
--PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [
-- _save_CFLAGS="$CFLAGS"
-- _save_LIBS="$LIBS"
-- CFLAGS="$CFLAGS $libbsd_CFLAGS"
-- LIBS="$LIBS $libbsd_LIBS"
-- AC_MSG_CHECKING([if libbsd can be linked correctly])
-- AC_LINK_IFELSE([AC_LANG_SOURCE([[int main() { return 0; }]])],
-- [
-- AC_MSG_RESULT(yes)
-- LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS"
-- LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS"
-- ],[
-- AC_MSG_RESULT(no)
-- CFLAGS="$_save_CFLAGS"
-- LIBS="$_save_LIBS"
-- ])
--], [:])
--
- # setproctitle may have an _init function
- AC_REPLACE_FUNCS([setproctitle])
- AC_CHECK_FUNCS([setproctitle_init])
---
-2.7.4
-
diff --git a/package/lldpd/0003-configure-remove-check-on-CXX-compiler.patch b/package/lldpd/0003-configure-remove-check-on-CXX-compiler.patch
deleted file mode 100644
index 880f603f71..0000000000
--- a/package/lldpd/0003-configure-remove-check-on-CXX-compiler.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From d28b3bfa1b224f7770004dddf4dfaf10ad7ad6c9 Mon Sep 17 00:00:00 2001
-From: Damien Riegel <damien.riegel@savoirfairelinux.com>
-Date: Mon, 18 Dec 2017 14:37:08 -0500
-Subject: [PATCH] configure: remove check on CXX compiler
-
-lldpd fails to build if the toolchain doesn't have a C++ compiler
-because configure fails with the following error:
-
- checking how to run the C++ preprocessor... /lib/cpp
- configure: error: in `/home/dkc/src/buildroot/build-zii/build/lldpd-0.9.4':
- configure: error: C++ preprocessor "/lib/cpp" fails sanity check
-
-Since "8d92800b: build: cleaner way to not alter CFLAGS/CPPFLAGS/LDFLAGS",
-it seems that the dependency on C++ is not required anymore, so there
-is no reason to keep this restriction. Dropping AC_PROG_CXX allows to
-build with a toolchain that doesn't have C++ just fine.
----
- configure.ac | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 0edceb1..5afe8f2 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -48,7 +48,6 @@ AC_PROG_CC_C99
- if test x"$ac_cv_prog_cc_c99" = x"no"; then
- AC_MSG_FAILURE([*** C99 support is mandatory])
- fi
--AC_PROG_CXX
- AM_PROG_CC_C_O
- AC_PROG_LIBTOOL
- AC_PROG_LN_S
---
-2.15.1
-
diff --git a/package/lldpd/lldpd.hash b/package/lldpd/lldpd.hash
index fc3d21f487..1785197737 100644
--- a/package/lldpd/lldpd.hash
+++ b/package/lldpd/lldpd.hash
@@ -1,2 +1,2 @@
# Locally computed
-sha256 eb1f5beff2ff5c13c5e0342b5b9da815ed4a63866262445e1168a79ee65c9079 lldpd-0.9.4.tar.gz
+sha256 450b622aac7ae1758f1ef82f3b7b94ec47f2ff33abfb0e6ac82555b9ee55f151 lldpd-1.0.1.tar.gz
diff --git a/package/lldpd/lldpd.mk b/package/lldpd/lldpd.mk
index 2bdda0213e..939cd128fa 100644
--- a/package/lldpd/lldpd.mk
+++ b/package/lldpd/lldpd.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LLDPD_VERSION = 0.9.4
+LLDPD_VERSION = 1.0.1
LLDPD_SITE = http://media.luffy.cx/files/lldpd
LLDPD_DEPENDENCIES = host-pkgconf libevent
LLDPD_LICENSE = ISC
@@ -28,14 +28,15 @@ endif
LLDPD_CONF_ENV = ac_cv_prog_cc_c99=-std=gnu99
LLDPD_CONF_OPTS = \
- --without-readline \
--without-embedded-libevent \
--without-snmp \
--without-xml \
--without-json \
--without-seccomp \
+ --without-libbsd \
--disable-hardening \
--disable-privsep \
+ $(if $(BR2_PACKAGE_READLINE),--with-readline,--without-readline) \
$(if $(BR2_PACKAGE_LLDPD_CDP),--enable-cdp,--disable-cdp) \
$(if $(BR2_PACKAGE_LLDPD_FDP),--enable-fdp,--disable-fdp) \
$(if $(BR2_PACKAGE_LLDPD_EDP),--enable-edp,--disable-edp) \
@@ -50,4 +51,10 @@ define LLDPD_INSTALL_INIT_SYSV
$(TARGET_DIR)/etc/init.d/S60lldpd
endef
+define LLDPD_INSTALL_INIT_SYSTEMD
+ mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+ ln -sf ../../../../usr/lib/systemd/system/lldpd.service \
+ $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/lldpd.service
+endef
+
$(eval $(autotools-package))
diff --git a/package/luarocks/luarocks-br-config.lua b/package/luarocks/luarocks-br-config.lua
new file mode 100644
index 0000000000..32d71e1e21
--- /dev/null
+++ b/package/luarocks/luarocks-br-config.lua
@@ -0,0 +1,13 @@
+-- BR cross-compilation
+local function getenv (name) return os_getenv(name) or '' end
+variables.LUA_INCDIR = getenv('STAGING_DIR') .. [[/usr/include]]
+variables.LUA_LIBDIR = getenv('STAGING_DIR') .. [[/usr/lib]]
+variables.CC = getenv('TARGET_CC')
+variables.LD = getenv('TARGET_CC')
+variables.CFLAGS = getenv('TARGET_CFLAGS')
+variables.LIBFLAG = [[-shared ]] .. getenv('TARGET_LDFLAGS')
+external_deps_dirs = { getenv('STAGING_DIR') .. [[/usr]] }
+gcc_rpath = false
+rocks_trees = { getenv('TARGET_DIR') .. [[/usr]] }
+wrap_bin_scripts = false
+deps_mode = [[none]]
diff --git a/package/luarocks/luarocks.mk b/package/luarocks/luarocks.mk
index cfef8f19b3..1b29a21406 100644
--- a/package/luarocks/luarocks.mk
+++ b/package/luarocks/luarocks.mk
@@ -30,23 +30,16 @@ endef
define HOST_LUAROCKS_INSTALL_CMDS
rm -f $(LUAROCKS_CONFIG_FILE)
$(MAKE1) -C $(@D) install
- echo "-- BR cross-compilation" >> $(LUAROCKS_CONFIG_FILE)
- echo "variables.LUA_INCDIR = [[$(STAGING_DIR)/usr/include]]" >> $(LUAROCKS_CONFIG_FILE)
- echo "variables.LUA_LIBDIR = [[$(STAGING_DIR)/usr/lib]]" >> $(LUAROCKS_CONFIG_FILE)
- echo "variables.CC = [[$(TARGET_CC)]]" >> $(LUAROCKS_CONFIG_FILE)
- echo "variables.LD = [[$(TARGET_CC)]]" >> $(LUAROCKS_CONFIG_FILE)
- echo "variables.CFLAGS = [[$(LUAROCKS_CFLAGS)]]" >> $(LUAROCKS_CONFIG_FILE)
- echo "variables.LIBFLAG = [[-shared $(TARGET_LDFLAGS)]]" >> $(LUAROCKS_CONFIG_FILE)
- echo "external_deps_dirs = { [[$(STAGING_DIR)/usr]] }" >> $(LUAROCKS_CONFIG_FILE)
- echo "gcc_rpath = false" >> $(LUAROCKS_CONFIG_FILE)
- echo "rocks_trees = { [[$(TARGET_DIR)/usr]] }" >> $(LUAROCKS_CONFIG_FILE)
- echo "wrap_bin_scripts = false" >> $(LUAROCKS_CONFIG_FILE)
- echo "deps_mode = [[none]]" >> $(LUAROCKS_CONFIG_FILE)
+ cat $(HOST_LUAROCKS_PKGDIR)/luarocks-br-config.lua >> $(LUAROCKS_CONFIG_FILE)
endef
$(eval $(host-generic-package))
-LUAROCKS_RUN_ENV = LUA_PATH="$(HOST_DIR)/share/lua/$(LUAINTERPRETER_ABIVER)/?.lua"
+LUAROCKS_RUN_ENV = \
+ LUA_PATH="$(HOST_DIR)/share/lua/$(LUAINTERPRETER_ABIVER)/?.lua" \
+ TARGET_CC="$(TARGET_CC)" \
+ TARGET_CFLAGS="$(LUAROCKS_CFLAGS)" \
+ TARGET_LDFLAGS="$(TARGET_LDFLAGS)"
LUAROCKS_RUN_CMD = $(LUA_RUN) $(HOST_DIR)/bin/luarocks
define LUAROCKS_FINALIZE_TARGET
diff --git a/package/memcached/memcached.hash b/package/memcached/memcached.hash
index c3cc11c3b4..df430cf4ff 100644
--- a/package/memcached/memcached.hash
+++ b/package/memcached/memcached.hash
@@ -1,6 +1,6 @@
-# From http://www.memcached.org/files/memcached-1.5.10.tar.gz.sha1
-sha1 fff9351b360a09497cd805d3e4c1ffbe860d067d memcached-1.5.10.tar.gz
+# From http://www.memcached.org/files/memcached-1.5.12.tar.gz.sha1
+sha1 f67096ba64b0c47668bcad5b680010c4f8987d4c memcached-1.5.12.tar.gz
# Locally computed
-sha256 494c060dbd96d546c74ab85a3cc3984d009b4423767ac33e05dd2340c01f1c4b memcached-1.5.10.tar.gz
+sha256 c02f97d5685617b209fbe25f3464317b234d765b427d254c2413410a5c095b29 memcached-1.5.12.tar.gz
sha256 bc887c4ad8051fe690ace9528fe37a2e0bb362e6d963331d82e845ca9b585a0c COPYING
diff --git a/package/memcached/memcached.mk b/package/memcached/memcached.mk
index f591fcf1c3..b7c36ec155 100644
--- a/package/memcached/memcached.mk
+++ b/package/memcached/memcached.mk
@@ -4,7 +4,7 @@
#
################################################################################
-MEMCACHED_VERSION = 1.5.10
+MEMCACHED_VERSION = 1.5.12
MEMCACHED_SITE = http://www.memcached.org/files
MEMCACHED_DEPENDENCIES = libevent
MEMCACHED_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99'
diff --git a/package/mesa3d-headers/mesa3d-headers.mk b/package/mesa3d-headers/mesa3d-headers.mk
index 99dfb431a9..d1a836b145 100644
--- a/package/mesa3d-headers/mesa3d-headers.mk
+++ b/package/mesa3d-headers/mesa3d-headers.mk
@@ -12,7 +12,7 @@ endif
# Not possible to directly refer to mesa3d variables, because of
# first/second expansion trickery...
-MESA3D_HEADERS_VERSION = 18.2.4
+MESA3D_HEADERS_VERSION = 18.2.5
MESA3D_HEADERS_SOURCE = mesa-$(MESA3D_HEADERS_VERSION).tar.xz
MESA3D_HEADERS_SITE = https://mesa.freedesktop.org/archive
MESA3D_HEADERS_DL_SUBDIR = mesa3d
diff --git a/package/mesa3d/mesa3d.hash b/package/mesa3d/mesa3d.hash
index 9ee353ee15..c3464c3d0c 100644
--- a/package/mesa3d/mesa3d.hash
+++ b/package/mesa3d/mesa3d.hash
@@ -1,7 +1,7 @@
-# From https://lists.freedesktop.org/archives/mesa-announce/2018-October/000471.html
-md5 33c4b4ad2f33d4faedec3206da7853d3 mesa-18.2.4.tar.xz
-sha1 9ebe58bdf03a1ff5e671de75f92c3c739edd3c4e mesa-18.2.4.tar.xz
-sha256 621d1aebb57876d5b6a5d2dcf4eb7e0620e650c6fe5cf3655c65e243adc9cb4e mesa-18.2.4.tar.xz
-sha512 088d43b087f4005752e4db75eaa6897e0fcb6de7b9a1f2d2b2ce3b5557d1dff829022e0092e8b1038ff01182c863ca0f26c97b9adde34bca462d3fa24502bfde mesa-18.2.4.tar.xz
+# From https://lists.freedesktop.org/archives/mesa-announce/2018-November/000475.html
+md5 b31a43ebb8b37fb704a9a75c90bbd71b mesa-18.2.5.tar.xz
+sha1 1ada7d5fc5fabca63c78396b5afa587b94b9f2e0 mesa-18.2.5.tar.xz
+sha256 b12c32872832e5353155e1e8026e1f1ab75bba9dc5b178d712045684d26c2b73 mesa-18.2.5.tar.xz
+sha512 dd454c720241dffa61f3380be62479979a43004b2a52293b817bd3ea95f75960edee680e7380a13fae09b67a90dc0393e4a022d543db91b2f142f2468a9661f0 mesa-18.2.5.tar.xz
# License
sha256 630e75b4fdeb75ee2bf9e55db54dd1e3ff7353d52d9314ca8512bfd460f8e24c docs/license.html
diff --git a/package/mesa3d/mesa3d.mk b/package/mesa3d/mesa3d.mk
index 1a1fb17c72..1651b5f260 100644
--- a/package/mesa3d/mesa3d.mk
+++ b/package/mesa3d/mesa3d.mk
@@ -5,7 +5,7 @@
################################################################################
# When updating the version, please also update mesa3d-headers
-MESA3D_VERSION = 18.2.4
+MESA3D_VERSION = 18.2.5
MESA3D_SOURCE = mesa-$(MESA3D_VERSION).tar.xz
MESA3D_SITE = https://mesa.freedesktop.org/archive
MESA3D_LICENSE = MIT, SGI, Khronos
diff --git a/package/mini-snmpd/0001-Prepend-zero-byte-before-unsigned-integers.patch b/package/mini-snmpd/0001-Prepend-zero-byte-before-unsigned-integers.patch
new file mode 100644
index 0000000000..36ddee422f
--- /dev/null
+++ b/package/mini-snmpd/0001-Prepend-zero-byte-before-unsigned-integers.patch
@@ -0,0 +1,31 @@
+From 949ae648bf7c654b8fae607a0988bfa672607156 Mon Sep 17 00:00:00 2001
+From: Patrick Rauscher <prauscher@prauscher.de>
+Date: Fri, 18 Aug 2017 17:31:23 +0200
+Subject: [PATCH] Prepend zero-byte before unsigned integers
+
+fixes #8
+
+Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
+---
+ mib.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/mib.c b/mib.c
+index 7d2e513..a9ffbe2 100644
+--- a/mib.c
++++ b/mib.c
+@@ -207,6 +207,11 @@ static int encode_unsigned(data_t *data, int type, unsigned int ticks_value)
+ else
+ length = 1;
+
++ /* check if the integer could be interpreted negative during a signed decode and prepend a zero-byte if necessary */
++ if ((ticks_value >> (8 * (length - 1))) & 0x80) {
++ length++;
++ }
++
+ *buffer++ = type;
+ *buffer++ = length;
+ while (length--)
+--
+2.13.2
+
diff --git a/package/mini-snmpd/0002-mib.c-allow-unsigned-integers-to-have-an-extra-byte.patch b/package/mini-snmpd/0002-mib.c-allow-unsigned-integers-to-have-an-extra-byte.patch
new file mode 100644
index 0000000000..045d296913
--- /dev/null
+++ b/package/mini-snmpd/0002-mib.c-allow-unsigned-integers-to-have-an-extra-byte.patch
@@ -0,0 +1,28 @@
+From 556c8a406c9e08dd9444222e072f7eb9c82a81e8 Mon Sep 17 00:00:00 2001
+From: Patrick Rauscher <prauscher@prauscher.de>
+Date: Fri, 18 Aug 2017 17:44:32 +0200
+Subject: [PATCH] mib.c: allow unsigned integers to have an extra byte
+
+The extra byte can be needed when encoding huge unsigned numbers (i.e. 0x80000000 or higher). In this case, during encoding we need an extra byte to make sure clients decoding as signed int do not get negative numbers. For further details, see commit 949ae648
+
+Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
+---
+ mib.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/mib.c b/mib.c
+index a9ffbe2..83cc20d 100644
+--- a/mib.c
++++ b/mib.c
+@@ -372,7 +372,7 @@ static int data_alloc(data_t *data, int type)
+ case BER_TYPE_COUNTER:
+ case BER_TYPE_GAUGE:
+ case BER_TYPE_TIME_TICKS:
+- data->max_length = sizeof(unsigned int) + 2;
++ data->max_length = sizeof(unsigned int) + 3;
+ data->encoded_length = 0;
+ data->buffer = allocate(data->max_length);
+ break;
+--
+2.13.2
+
diff --git a/package/mini-snmpd/Config.in b/package/mini-snmpd/Config.in
new file mode 100644
index 0000000000..1f61cddbcf
--- /dev/null
+++ b/package/mini-snmpd/Config.in
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_MINI_SNMPD
+ bool "mini-snmpd"
+ help
+ Mini SNMPd is a minimal implementation targeted at small or
+ embedded UNIX systems with limited resources
+
+ http://troglobit.com/mini-snmpd.html
diff --git a/package/mini-snmpd/mini-snmpd.hash b/package/mini-snmpd/mini-snmpd.hash
new file mode 100644
index 0000000000..19118b7f96
--- /dev/null
+++ b/package/mini-snmpd/mini-snmpd.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 59f84e94ef7c9ff36d243c7974a100903a4a9a0bb529b67cf6f0d3352138a86b mini-snmpd-v1.4.tar.gz
+sha256 8a43b895972a24567297f44f35dab0f5f9ed3b7db6dac0bf6094075b27ab9d56 COPYING
diff --git a/package/mini-snmpd/mini-snmpd.mk b/package/mini-snmpd/mini-snmpd.mk
new file mode 100644
index 0000000000..ebcbcce1ce
--- /dev/null
+++ b/package/mini-snmpd/mini-snmpd.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# mini-snmpd
+#
+################################################################################
+
+MINI_SNMPD_VERSION = v1.4
+MINI_SNMPD_SITE = $(call github,troglobit,mini-snmpd,$(MINI_SNMPD_VERSION))
+MINI_SNMPD_LICENSE = GPL-2.0
+MINI_SNMPD_LICENSE_FILES = COPYING
+MINI_SNMPD_AUTORECONF = YES
+
+define MINI_SNMPD_INSTALL_INIT_SYSTEMD
+ $(INSTALL) -D -m 644 package/mini-snmpd/mini-snmpd.service \
+ $(TARGET_DIR)/usr/lib/systemd/system/mini-snmpd.service
+ mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+ ln -sf ../../../../usr/lib/systemd/system/mini-snmpd.service \
+ $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/mini-snmpd.service
+endef
+
+$(eval $(autotools-package))
diff --git a/package/mini-snmpd/mini-snmpd.service b/package/mini-snmpd/mini-snmpd.service
new file mode 100644
index 0000000000..8a15585e6e
--- /dev/null
+++ b/package/mini-snmpd/mini-snmpd.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Mini SNMP Daemon
+StartLimitIntervalSec=0
+
+[Service]
+Environment='COMMUNITY=public'
+ExecStart=/sbin/mini_snmpd -a -n -c ${COMMUNITY} $EXTRA_PARAMS
+Restart=always
+RestartSec=1
+
+[Install]
+WantedBy=multi-user.target
diff --git a/package/mmc-utils/0002-fix-overlapping-with-strncpy.patch b/package/mmc-utils/0002-fix-overlapping-with-strncpy.patch
index a134dd3c5a..a562845ffa 100644
--- a/package/mmc-utils/0002-fix-overlapping-with-strncpy.patch
+++ b/package/mmc-utils/0002-fix-overlapping-with-strncpy.patch
@@ -1,7 +1,7 @@
From 1c90a7534658056b884d71ef82dc7ca8bad4271b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Cl=C3=A9ment=20P=C3=A9ron?= <peron.clem@gmail.com>
Date: Wed, 24 Oct 2018 13:00:47 +0200
-Subject: [PATCH 1/1] mmc-utils: fix overlapping with strncpy
+Subject: [PATCH] mmc-utils: fix overlapping with strncpy
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
diff --git a/package/msgpack/msgpack.hash b/package/msgpack/msgpack.hash
index f1033ade42..df4e54b181 100644
--- a/package/msgpack/msgpack.hash
+++ b/package/msgpack/msgpack.hash
@@ -1,2 +1,4 @@
# Locally computed:
-sha256 9c87f80fc651b900772deaef0ab154b63160c74d292529b5be6d06d6485d4640 msgpack-2.1.5.tar.gz
+sha256 bda49f996a73d2c6080ff0523e7b535917cd28c8a79c3a5da54fc29332d61d1e msgpack-3.1.1.tar.gz
+sha256 664550b43996452a5a2c7471bb0ff77185a58c69ccafa60f983dc4c162e1ee22 COPYING
+sha256 c9bff75738922193e67fa726fa225535870d2aa1059f91452c411736284ad566 LICENSE_1_0.txt
diff --git a/package/msgpack/msgpack.mk b/package/msgpack/msgpack.mk
index abb6e2e214..781e67e37a 100644
--- a/package/msgpack/msgpack.mk
+++ b/package/msgpack/msgpack.mk
@@ -4,7 +4,7 @@
#
################################################################################
-MSGPACK_VERSION = 2.1.5
+MSGPACK_VERSION = 3.1.1
MSGPACK_SITE = $(call github,msgpack,msgpack-c,cpp-$(MSGPACK_VERSION))
MSGPACK_LICENSE = BSL-1.0
MSGPACK_LICENSE_FILES = COPYING LICENSE_1_0.txt
diff --git a/package/msmtp/Config.in b/package/msmtp/Config.in
index 46bb1985e3..c83525d5ba 100644
--- a/package/msmtp/Config.in
+++ b/package/msmtp/Config.in
@@ -5,4 +5,4 @@ config BR2_PACKAGE_MSMTP
mail to an SMTP server (for example at a free mail provider)
which takes care of further delivery.
- http://msmtp.sourceforge.net/
+ https://marlam.de/msmtp/
diff --git a/package/msmtp/msmtp.hash b/package/msmtp/msmtp.hash
index 0b66cec862..f966e5d6d4 100644
--- a/package/msmtp/msmtp.hash
+++ b/package/msmtp/msmtp.hash
@@ -1,9 +1,6 @@
-# From http://sourceforge.net/projects/msmtp/files/msmtp/1.6.6/
-md5 82b0520b57db4b2cf05333d11fb5974d msmtp-1.6.6.tar.xz
-sha1 f997f40dfb3f882df837cfd9a63bd4d271dcdc41 msmtp-1.6.6.tar.xz
# Locally calculated after checking signature
-# http://downloads.sourceforge.net/project/msmtp/msmtp/1.6.6/msmtp-1.6.6.tar.xz.sig
-sha256 da15db1f62bd0201fce5310adb89c86188be91cd745b7cb3b62b81a501e7fb5e msmtp-1.6.6.tar.xz
+# https://marlam.de/msmtp/releases/msmtp-1.8.0.tar.xz.sig
+sha256 bd730cbf000d1b8382849ea21d569a387e63f936be00dc07c569f67915e53ccd msmtp-1.8.0.tar.xz
# Hash for license file:
sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING
diff --git a/package/msmtp/msmtp.mk b/package/msmtp/msmtp.mk
index 65fd0e4319..a495072abf 100644
--- a/package/msmtp/msmtp.mk
+++ b/package/msmtp/msmtp.mk
@@ -4,14 +4,21 @@
#
################################################################################
-MSMTP_VERSION = 1.6.6
-MSMTP_SITE = http://downloads.sourceforge.net/project/msmtp/msmtp/$(MSMTP_VERSION)
+MSMTP_VERSION = 1.8.0
+MSMTP_SITE = https://marlam.de/msmtp/releases
MSMTP_SOURCE = msmtp-$(MSMTP_VERSION).tar.xz
MSMTP_DEPENDENCIES = host-pkgconf
MSMTP_CONF_OPTS = --disable-gai-idn
MSMTP_LICENSE = GPL-3.0+
MSMTP_LICENSE_FILES = COPYING
+# msmtpd needs fork
+ifeq ($(BR2_USE_MMU),y)
+MSMTP_CONF_OPTS += --with-msmtpd
+else
+MSMTP_CONF_OPTS += --without-msmtpd
+endif
+
ifeq ($(BR2_PACKAGE_LIBGSASL),y)
MSMTP_CONF_OPTS += --with-libgsasl
MSMTP_DEPENDENCIES += libgsasl
@@ -19,9 +26,9 @@ else
MSMTP_CONF_OPTS += --without-libgsasl
endif
-ifeq ($(BR2_PACKAGE_LIBIDN),y)
+ifeq ($(BR2_PACKAGE_LIBIDN2),y)
MSMTP_CONF_OPTS += --with-libidn
-MSMTP_DEPENDENCIES += libidn
+MSMTP_DEPENDENCIES += libidn2
else
MSMTP_CONF_OPTS += --without-libidn
endif
diff --git a/package/netsnmp/netsnmp.mk b/package/netsnmp/netsnmp.mk
index 65a3f16a4d..4bd65ef17a 100644
--- a/package/netsnmp/netsnmp.mk
+++ b/package/netsnmp/netsnmp.mk
@@ -106,12 +106,4 @@ define NETSNMP_INSTALL_INIT_SYSV
endef
endif
-define NETSNMP_STAGING_NETSNMP_CONFIG_FIXUP
- $(SED) "s,^includedir=.*,includedir=\'$(STAGING_DIR)/usr/include\',g" \
- -e "s,^libdir=.*,libdir=\'$(STAGING_DIR)/usr/lib\',g" \
- $(STAGING_DIR)/usr/bin/net-snmp-config
-endef
-
-NETSNMP_POST_INSTALL_STAGING_HOOKS += NETSNMP_STAGING_NETSNMP_CONFIG_FIXUP
-
$(eval $(autotools-package))
diff --git a/package/nftables/nftables.hash b/package/nftables/nftables.hash
index 3effe68f2e..a0e0d5e779 100644
--- a/package/nftables/nftables.hash
+++ b/package/nftables/nftables.hash
@@ -1,6 +1,3 @@
-# From http://www.netfilter.org/projects/nftables/downloads.html
-sha1 533cb3bf17e90579d24f9621fdb22bdb4f7e3287 nftables-0.8.3.tar.bz2
-# Locally calculated after checking pgp signature
-# http://www.netfilter.org/projects/nftables/files/nftables-0.8.3.tar.bz2.sig
-sha256 d16be1f5db88e95d29fc0b0e4df88acd079f3ee8e2b872ec7673f9a0d5d95e38 nftables-0.8.3.tar.bz2
+# From https://netfilter.org/projects/nftables/downloads.html
+sha256 ad8181b5fcb9ca572f444bed54018749588522ee97e4c21922648bb78d7e7e91 nftables-0.9.0.tar.bz2
sha256 c17bc4fa5b2434c6f283ffcb2312e5bf3c7cdf5787b79505f094d8de734ac53e COPYING
diff --git a/package/nftables/nftables.mk b/package/nftables/nftables.mk
index 571cd33ad5..9f12e42c58 100644
--- a/package/nftables/nftables.mk
+++ b/package/nftables/nftables.mk
@@ -4,9 +4,9 @@
#
################################################################################
-NFTABLES_VERSION = 0.8.3
+NFTABLES_VERSION = 0.9.0
NFTABLES_SOURCE = nftables-$(NFTABLES_VERSION).tar.bz2
-NFTABLES_SITE = http://www.netfilter.org/projects/nftables/files
+NFTABLES_SITE = https://www.netfilter.org/projects/nftables/files
NFTABLES_DEPENDENCIES = gmp libmnl libnftnl host-bison host-flex \
host-pkgconf $(TARGET_NLS_DEPENDENCIES)
NFTABLES_LICENSE = GPL-2.0
@@ -20,6 +20,13 @@ else
NFTABLES_CONF_OPTS += --without-cli
endif
+ifeq ($(BR2_PACKAGE_JANSSON),y)
+NFTABLES_DEPENDENCIES += jansson
+NFTABLES_CONF_OPTS += --with-json
+else
+NFTABLES_CONF_OPTS += --without-json
+endif
+
ifeq ($(BR2_STATIC_LIBS)$(BR2_PACKAGE_LIBNFTNL_JSON),yy)
NFTABLES_LIBS += -ljansson -lm
endif
diff --git a/package/paho-mqtt-c/0001-Declare-mqtt-tests-as-a-C-only-project.patch b/package/paho-mqtt-c/0001-Declare-mqtt-tests-as-a-C-only-project.patch
deleted file mode 100644
index 9edb2c4a8b..0000000000
--- a/package/paho-mqtt-c/0001-Declare-mqtt-tests-as-a-C-only-project.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 6556e62a07972eafccaefdcdf32bd0d386c64ca2 Mon Sep 17 00:00:00 2001
-From: Yegor Yefremov <yegorslists@googlemail.com>
-Date: Wed, 13 Sep 2017 07:59:50 +0200
-Subject: [PATCH] Declare mqtt-tests as a C-only project
-
-This way CMake doesn't break the build on the systems without
-C++ compiler.
-
-Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
-Reported-by: Marcus Hoffmann <m.hoffmann@cartelsol.com>
----
- test/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
-index 5c88c44..3aca80f 100644
---- a/test/CMakeLists.txt
-+++ b/test/CMakeLists.txt
-@@ -1,4 +1,4 @@
--PROJECT(mqtt-tests)
-+PROJECT(mqtt-tests C)
-
- IF (WIN32)
- SET(MQTT_TEST_BROKER "tcp://mqtt.iotree.co.uk:1883" CACHE STRING "Hostname of a test MQTT broker to use")
---
-2.1.4
-
diff --git a/package/paho-mqtt-c/paho-mqtt-c.hash b/package/paho-mqtt-c/paho-mqtt-c.hash
index 3bee8914f9..d628d06611 100644
--- a/package/paho-mqtt-c/paho-mqtt-c.hash
+++ b/package/paho-mqtt-c/paho-mqtt-c.hash
@@ -1,4 +1,4 @@
# Locally computed:
-sha256 0cb0396554ebe0e8ac6b0de1cbc16601ef169b6a63baf6f0f3ddeb405f5471a5 paho-mqtt-c-v1.2.0.tar.gz
+sha256 87cf846b02dde6328b84832287d8725d91f12f41366eecb4d59eeda1d6c7efdf paho-mqtt-c-v1.3.0.tar.gz
sha256 83bbba033dc985487e321b6dfde111772affb73460be48726299fed3da684b1c edl-v10
sha256 44277b2bec6093e4ac313afec251a4de599d24c4e768f8574d95b13a9d2d97b5 epl-v10
diff --git a/package/paho-mqtt-c/paho-mqtt-c.mk b/package/paho-mqtt-c/paho-mqtt-c.mk
index 5df7a55c62..9e8ae29999 100644
--- a/package/paho-mqtt-c/paho-mqtt-c.mk
+++ b/package/paho-mqtt-c/paho-mqtt-c.mk
@@ -4,7 +4,7 @@
#
################################################################################
-PAHO_MQTT_C_VERSION = v1.2.0
+PAHO_MQTT_C_VERSION = v1.3.0
PAHO_MQTT_C_SITE = $(call github,eclipse,paho.mqtt.c,$(PAHO_MQTT_C_VERSION))
PAHO_MQTT_C_LICENSE = EPL-1.0 or BSD-3-Clause
PAHO_MQTT_C_LICENSE_FILES = epl-v10 edl-v10
diff --git a/package/perl-time-hires/Config.in b/package/perl-time-hires/Config.in
deleted file mode 100644
index db2ca039cb..0000000000
--- a/package/perl-time-hires/Config.in
+++ /dev/null
@@ -1,10 +0,0 @@
-config BR2_PACKAGE_PERL_TIME_HIRES
- bool "perl-time-hires"
- depends on !BR2_STATIC_LIBS
- help
- High resolution alarm, sleep, gettimeofday, interval timers.
-
- https://metacpan.org/release/Time-HiRes
-
-comment "perl-time-hires needs a toolchain w/ dynamic library"
- depends on BR2_STATIC_LIBS
diff --git a/package/perl-time-hires/perl-time-hires.hash b/package/perl-time-hires/perl-time-hires.hash
deleted file mode 100644
index 4260766681..0000000000
--- a/package/perl-time-hires/perl-time-hires.hash
+++ /dev/null
@@ -1,6 +0,0 @@
-# retrieved by scancpan from http://cpan.metacpan.org/
-md5 8f998cb60966c86e24c500016e4d1ce8 Time-HiRes-1.9758.tar.gz
-sha256 5bfa145bc11e70a8e337543b1084a293743a690691b568493455dedf58f34b1e Time-HiRes-1.9758.tar.gz
-
-# computed by scancpan
-sha256 ecc20782bd6c34d2d632356020f9ad0150c7ae1803ae9560258d76d4533030da README
diff --git a/package/perl-time-hires/perl-time-hires.mk b/package/perl-time-hires/perl-time-hires.mk
deleted file mode 100644
index 03322c3fb0..0000000000
--- a/package/perl-time-hires/perl-time-hires.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-################################################################################
-#
-# perl-time-hires
-#
-################################################################################
-
-PERL_TIME_HIRES_VERSION = 1.9758
-PERL_TIME_HIRES_SOURCE = Time-HiRes-$(PERL_TIME_HIRES_VERSION).tar.gz
-PERL_TIME_HIRES_SITE = $(BR2_CPAN_MIRROR)/authors/id/J/JH/JHI
-PERL_TIME_HIRES_LICENSE = Artistic or GPL-1.0+
-PERL_TIME_HIRES_LICENSE_FILES = README
-PERL_TIME_HIRES_DISTNAME = Time-HiRes
-
-$(eval $(perl-package))
diff --git a/package/pkg-download.mk b/package/pkg-download.mk
index 0def845cbc..7cd87c38ff 100644
--- a/package/pkg-download.mk
+++ b/package/pkg-download.mk
@@ -15,7 +15,6 @@ export BZR := $(call qstrip,$(BR2_BZR))
export GIT := $(call qstrip,$(BR2_GIT))
export HG := $(call qstrip,$(BR2_HG))
export SCP := $(call qstrip,$(BR2_SCP))
-SSH := $(call qstrip,$(BR2_SSH))
export LOCALFILES := $(call qstrip,$(BR2_LOCALFILES))
DL_WRAPPER = support/download/dl-wrapper
diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk
index 7a95ea19cc..a27aa1f7fd 100644
--- a/package/pkg-generic.mk
+++ b/package/pkg-generic.mk
@@ -173,6 +173,7 @@ $(BUILD_DIR)/%/.stamp_extracted:
$(BUILD_DIR)/%/.stamp_rsynced:
@$(call step_start,rsync)
@$(call MESSAGE,"Syncing from source dir $(SRCDIR)")
+ @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)
@@ -238,6 +239,7 @@ $(BUILD_DIR)/%/.stamp_built::
$(BUILD_DIR)/%/.stamp_host_installed:
@$(call step_start,install-host)
@$(call MESSAGE,"Installing to host directory")
+ @mkdir -p $(HOST_DIR)
$(foreach hook,$($(PKG)_PRE_INSTALL_HOOKS),$(call $(hook))$(sep))
+$($(PKG)_INSTALL_CMDS)
$(foreach hook,$($(PKG)_POST_INSTALL_HOOKS),$(call $(hook))$(sep))
@@ -267,17 +269,19 @@ $(BUILD_DIR)/%/.stamp_host_installed:
$(BUILD_DIR)/%/.stamp_staging_installed:
@$(call step_start,install-staging)
@$(call MESSAGE,"Installing to staging directory")
+ @mkdir -p $(STAGING_DIR)
$(foreach hook,$($(PKG)_PRE_INSTALL_STAGING_HOOKS),$(call $(hook))$(sep))
+$($(PKG)_INSTALL_STAGING_CMDS)
$(foreach hook,$($(PKG)_POST_INSTALL_STAGING_HOOKS),$(call $(hook))$(sep))
$(Q)if test -n "$($(PKG)_CONFIG_SCRIPTS)" ; then \
$(call MESSAGE,"Fixing package configuration files") ;\
- $(SED) "s,$(BASE_DIR),@BASE_DIR@,g" \
- -e "s,$(STAGING_DIR),@STAGING_DIR@,g" \
+ $(SED) "s,$(HOST_DIR),@HOST_DIR@,g" \
+ -e "s,$(BASE_DIR),@BASE_DIR@,g" \
-e "s,^\(exec_\)\?prefix=.*,\1prefix=@STAGING_DIR@/usr,g" \
-e "s,-I/usr/,-I@STAGING_DIR@/usr/,g" \
-e "s,-L/usr/,-L@STAGING_DIR@/usr/,g" \
- -e "s,@STAGING_DIR@,$(STAGING_DIR),g" \
+ -e 's,@STAGING_DIR@,$$(dirname $$(realpath -e $$0))/../..,g' \
+ -e 's,@HOST_DIR@,$$(dirname $$(realpath -e $$0))/../../../..,g' \
-e "s,@BASE_DIR@,$(BASE_DIR),g" \
$(addprefix $(STAGING_DIR)/usr/bin/,$($(PKG)_CONFIG_SCRIPTS)) ;\
fi
@@ -298,6 +302,7 @@ $(BUILD_DIR)/%/.stamp_staging_installed:
# Install to images dir
$(BUILD_DIR)/%/.stamp_images_installed:
@$(call step_start,install-image)
+ @mkdir -p $(BINARIES_DIR)
$(foreach hook,$($(PKG)_PRE_INSTALL_IMAGES_HOOKS),$(call $(hook))$(sep))
@$(call MESSAGE,"Installing to images directory")
+$($(PKG)_INSTALL_IMAGES_CMDS)
@@ -309,6 +314,7 @@ $(BUILD_DIR)/%/.stamp_images_installed:
$(BUILD_DIR)/%/.stamp_target_installed:
@$(call step_start,install-target)
@$(call MESSAGE,"Installing to target")
+ @mkdir -p $(TARGET_DIR)
$(foreach hook,$($(PKG)_PRE_INSTALL_TARGET_HOOKS),$(call $(hook))$(sep))
+$($(PKG)_INSTALL_TARGET_CMDS)
$(if $(BR2_INIT_SYSTEMD),\
@@ -583,7 +589,9 @@ $(2)_DEPENDENCIES += host-skeleton
endif
ifneq ($$(filter cvs git svn,$$($(2)_SITE_METHOD)),)
-$(2)_DOWNLOAD_DEPENDENCIES += $(BR2_TAR_HOST_DEPENDENCY)
+$(2)_DOWNLOAD_DEPENDENCIES += \
+ $(BR2_GZIP_HOST_DEPENDENCY) \
+ $(BR2_TAR_HOST_DEPENDENCY)
endif
ifeq ($$(filter host-tar host-skeleton host-fakedate,$(1)),)
@@ -735,7 +743,7 @@ $$($(2)_TARGET_BUILD): $$($(2)_TARGET_CONFIGURE)
$(1)-configure: $$($(2)_TARGET_CONFIGURE)
$$($(2)_TARGET_CONFIGURE): | $$($(2)_FINAL_DEPENDENCIES)
-$$($(2)_TARGET_SOURCE) $$($(2)_TARGET_RSYNC): | dirs prepare
+$$($(2)_TARGET_SOURCE) $$($(2)_TARGET_RSYNC): | prepare
$$($(2)_TARGET_SOURCE) $$($(2)_TARGET_RSYNC): | dependencies
ifeq ($$($(2)_OVERRIDE_SRCDIR),)
diff --git a/package/pkg-luarocks.mk b/package/pkg-luarocks.mk
index e2b48cfb4c..f0985433b7 100644
--- a/package/pkg-luarocks.mk
+++ b/package/pkg-luarocks.mk
@@ -42,7 +42,8 @@ $(2)_SITE ?= $$(call qstrip,$$(BR2_LUAROCKS_MIRROR))
# Since we do not support host-luarocks-package, we know this is
# a target package, and can just add the required dependencies
-$(2)_DEPENDENCIES += host-luarocks luainterpreter
+$(2)_DEPENDENCIES += luainterpreter
+$(2)_EXTRACT_DEPENDENCIES += host-luarocks
#
# Extract step. Extract into a temporary dir and move the relevant part to the
@@ -62,7 +63,7 @@ endif
#
ifndef $(2)_INSTALL_TARGET_CMDS
define $(2)_INSTALL_TARGET_CMDS
- cd $$($(2)_SRCDIR) && $$(LUAROCKS_RUN_ENV) flock $$(TARGET_DIR) \
+ cd $$($(2)_SRCDIR) && $$(LUAROCKS_RUN_ENV) \
$$(LUAROCKS_RUN_CMD) make --keep $$($(2)_ROCKSPEC) $$($(2)_BUILD_OPTS)
endef
endif
@@ -71,10 +72,6 @@ endif
# make targets
$(call inner-generic-package,$(1),$(2),$(3),$(4))
-# $(2)_DEPENDENCIES are handled for configure step (too late)
-# but host-luarocks is required to do the extract
-$$($(2)_TARGET_EXTRACT): | host-luarocks
-
endef
################################################################################
diff --git a/package/pkg-python.mk b/package/pkg-python.mk
index f57e486dad..1ee465ba5d 100644
--- a/package/pkg-python.mk
+++ b/package/pkg-python.mk
@@ -42,10 +42,12 @@ PKG_PYTHON_DISTUTILS_BUILD_OPTS = \
--executable=/usr/bin/python
PKG_PYTHON_DISTUTILS_INSTALL_TARGET_OPTS = \
- --prefix=$(TARGET_DIR)/usr
+ --prefix=/usr \
+ --root=$(TARGET_DIR)
PKG_PYTHON_DISTUTILS_INSTALL_STAGING_OPTS = \
- --prefix=$(STAGING_DIR)/usr
+ --prefix=/usr \
+ --root=$(STAGING_DIR)
# Host distutils-based packages
HOST_PKG_PYTHON_DISTUTILS_ENV = \
@@ -66,16 +68,16 @@ PKG_PYTHON_SETUPTOOLS_ENV = \
_python_exec_prefix=/usr
PKG_PYTHON_SETUPTOOLS_INSTALL_TARGET_OPTS = \
- --prefix=$(TARGET_DIR)/usr \
+ --prefix=/usr \
--executable=/usr/bin/python \
--single-version-externally-managed \
- --root=/
+ --root=$(TARGET_DIR)
PKG_PYTHON_SETUPTOOLS_INSTALL_STAGING_OPTS = \
- --prefix=$(STAGING_DIR)/usr \
+ --prefix=/usr \
--executable=/usr/bin/python \
--single-version-externally-managed \
- --root=/
+ --root=$(STAGING_DIR)
# Host setuptools-based packages
HOST_PKG_PYTHON_SETUPTOOLS_ENV = \
diff --git a/package/pkg-rebar.mk b/package/pkg-rebar.mk
index e2b4a58681..b6b095929c 100644
--- a/package/pkg-rebar.mk
+++ b/package/pkg-rebar.mk
@@ -94,6 +94,12 @@ define install-rebar-deps
$(REBAR_$(2)_DEPS_DIR)/$($(PKG)_ERLANG_APP)
endef
+# Remove the "deps" statement from a rebar.config file
+define remove-rebar-config-dependencies
+ $(SED) '/^{deps/,/}\.$$/d' $($(PKG)_DIR)/rebar.config
+endef
+
+
################################################################################
# inner-rebar-package -- defines how the configuration, compilation
# and installation of a rebar package should be done, implements a few
@@ -227,6 +233,12 @@ $(2)_REBAR = rebar
$(2)_DEPENDENCIES += host-erlang-rebar
endif
+# Remove dependencies listed in rebar.config unless the package says
+# otherwise
+ifeq ($$($(2)_KEEP_DEPENDENCIES),)
+$(2)_POST_PATCH_HOOKS += remove-rebar-config-dependencies
+endif
+
# The package sub-infra to use
#
ifeq ($$($(2)_USE_AUTOCONF),YES)
diff --git a/package/proftpd/Config.in b/package/proftpd/Config.in
index b615a5ff4c..478a7e80e1 100644
--- a/package/proftpd/Config.in
+++ b/package/proftpd/Config.in
@@ -65,4 +65,17 @@ config BR2_PACKAGE_PROFTPD_MOD_QUOTATAB_SQL
Compile mod_quotatab with mod_quotatab_sql table.
endif
+
+config BR2_PACKAGE_PROFTPD_BUFFER_SIZE
+ int "buffer size in bytes (0 for default)"
+ default "0"
+ help
+ By increasing the buffer size above the default of 1K,
+ proftpd reads and writes data in larger chunks, and makes
+ fewer expensive system calls. Use of this option to set buffer
+ sizes of 8K or more has been reported to drastically increase
+ transfer speeds (depending on network configurations).
+
+ 0 uses the default size of 1024.
+
endif
diff --git a/package/proftpd/proftpd.mk b/package/proftpd/proftpd.mk
index 8f3ff5088e..a228d58e03 100644
--- a/package/proftpd/proftpd.mk
+++ b/package/proftpd/proftpd.mk
@@ -20,6 +20,7 @@ PROFTPD_CONF_OPTS = \
--disable-ncurses \
--disable-facl \
--disable-dso \
+ --enable-sendfile \
--enable-shadow \
--with-gnu-ld
@@ -121,4 +122,8 @@ define PROFTPD_INSTALL_INIT_SYSTEMD
$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/proftpd.service
endef
+ifneq ($(BR2_PACKAGE_PROFTPD_BUFFER_SIZE),0)
+PROFTPD_CONF_OPTS += --enable-buffer-size=$(BR2_PACKAGE_PROFTPD_BUFFER_SIZE)
+endif
+
$(eval $(autotools-package))
diff --git a/package/pulseview/pulseview.hash b/package/pulseview/pulseview.hash
index 7883eabe59..09b9d67bc2 100644
--- a/package/pulseview/pulseview.hash
+++ b/package/pulseview/pulseview.hash
@@ -1,2 +1,2 @@
# Locally computed
-sha256 78f8291045c6f65b4827b12e83c8e68cea2d5e7268b15a51aaca9726c8100eb9 pulseview-0.4.0.tar.gz
+sha256 9ee7ce3dd1457c6a5f5e4e9c2469903a1f070ba077ea68535cc29ef1dfac6f2f pulseview-0.4.1.tar.gz
diff --git a/package/pulseview/pulseview.mk b/package/pulseview/pulseview.mk
index e9bbf4f5c0..67d525f626 100644
--- a/package/pulseview/pulseview.mk
+++ b/package/pulseview/pulseview.mk
@@ -4,7 +4,7 @@
#
################################################################################
-PULSEVIEW_VERSION = 0.4.0
+PULSEVIEW_VERSION = 0.4.1
PULSEVIEW_SITE = http://sigrok.org/download/source/pulseview
PULSEVIEW_LICENSE = GPL-3.0+
PULSEVIEW_LICENSE_FILES = COPYING
diff --git a/package/python-aiodns/Config.in b/package/python-aiodns/Config.in
new file mode 100644
index 0000000000..aa5970598f
--- /dev/null
+++ b/package/python-aiodns/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_PYTHON_AIODNS
+ bool "python-aiodns"
+ depends on BR2_PACKAGE_PYTHON3
+ select BR2_PACKAGE_PYTHON_PYCARES # runtime
+ help
+ Simple DNS resolver for asyncio.
+
+ http://github.com/saghul/aiodns
diff --git a/package/python-aiodns/python-aiodns.hash b/package/python-aiodns/python-aiodns.hash
new file mode 100644
index 0000000000..b66693f869
--- /dev/null
+++ b/package/python-aiodns/python-aiodns.hash
@@ -0,0 +1,5 @@
+# md5, sha256 from https://pypi.org/pypi/aiodns/json
+md5 80e0419b49bb4c540b4857ec142219b8 aiodns-1.1.1.tar.gz
+sha256 d8677adc679ce8d0ef706c14d9c3d2f27a0e0cc11d59730cdbaf218ad52dd9ea aiodns-1.1.1.tar.gz
+# Locally computed sha256 checksums
+sha256 eb0455d35129425ed399883cd710923de3e246a510e2eb84d9f00032d0bbec97 LICENSE
diff --git a/package/python-aiodns/python-aiodns.mk b/package/python-aiodns/python-aiodns.mk
new file mode 100644
index 0000000000..94f719d39e
--- /dev/null
+++ b/package/python-aiodns/python-aiodns.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-aiodns
+#
+################################################################################
+
+PYTHON_AIODNS_VERSION = 1.1.1
+PYTHON_AIODNS_SOURCE = aiodns-$(PYTHON_AIODNS_VERSION).tar.gz
+PYTHON_AIODNS_SITE = https://files.pythonhosted.org/packages/3b/45/dcee156eabca900af3a1bab8acb9531636b13db4b677d44ba468a43969e0
+PYTHON_AIODNS_SETUP_TYPE = setuptools
+PYTHON_AIODNS_LICENSE = MIT
+PYTHON_AIODNS_LICENSE_FILES = LICENSE
+
+$(eval $(python-package))
diff --git a/package/python-aiohttp/Config.in b/package/python-aiohttp/Config.in
new file mode 100644
index 0000000000..81862c9bba
--- /dev/null
+++ b/package/python-aiohttp/Config.in
@@ -0,0 +1,14 @@
+config BR2_PACKAGE_PYTHON_AIOHTTP
+ bool "python-aiohttp"
+ depends on BR2_PACKAGE_PYTHON3
+ select BR2_PACKAGE_PYTHON_ATTRS # runtime
+ select BR2_PACKAGE_PYTHON_CCHARDET if BR2_INSTALL_LIBSTDCPP # runtime
+ select BR2_PACKAGE_PYTHON_CHARDET if !BR2_INSTALL_LIBSTDCPP # runtime
+ select BR2_PACKAGE_PYTHON_MULTIDICT # runtime
+ select BR2_PACKAGE_PYTHON_ASYNC_TIMEOUT # runtime
+ select BR2_PACKAGE_PYTHON_YARL # runtime
+ select BR2_PACKAGE_PYTHON_AIODNS # runtime
+ help
+ Async http client/server framework (asyncio).
+
+ https://github.com/aio-libs/aiohttp
diff --git a/package/python-aiohttp/python-aiohttp.hash b/package/python-aiohttp/python-aiohttp.hash
new file mode 100644
index 0000000000..8f158af3cb
--- /dev/null
+++ b/package/python-aiohttp/python-aiohttp.hash
@@ -0,0 +1,5 @@
+# md5, sha256 from https://pypi.org/pypi/aiohttp/json
+md5 80a6e0c6c452d511d1d37755d6f0995a aiohttp-3.4.4.tar.gz
+sha256 51afec6ffa50a9da4cdef188971a802beb1ca8e8edb40fa429e5e529db3475fa aiohttp-3.4.4.tar.gz
+# Locally computed sha256 checksums
+sha256 bb0c0eeae85492ebfa03442b7784d4c42a623e15346df54ae85f55df972a82af LICENSE.txt
diff --git a/package/python-aiohttp/python-aiohttp.mk b/package/python-aiohttp/python-aiohttp.mk
new file mode 100644
index 0000000000..df8bdfb4b2
--- /dev/null
+++ b/package/python-aiohttp/python-aiohttp.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-aiohttp
+#
+################################################################################
+
+PYTHON_AIOHTTP_VERSION = 3.4.4
+PYTHON_AIOHTTP_SOURCE = aiohttp-$(PYTHON_AIOHTTP_VERSION).tar.gz
+PYTHON_AIOHTTP_SITE = https://files.pythonhosted.org/packages/70/27/6098b4b60a3302a97f8ec97eb85d42f55a2fa904da4a369235a8e3b84352
+PYTHON_AIOHTTP_SETUP_TYPE = setuptools
+PYTHON_AIOHTTP_LICENSE = Apache-2.0
+PYTHON_AIOHTTP_LICENSE_FILES = LICENSE.txt
+
+$(eval $(python-package))
diff --git a/package/python-autobahn/python-autobahn.hash b/package/python-autobahn/python-autobahn.hash
index 522e28b5e5..024617fd81 100644
--- a/package/python-autobahn/python-autobahn.hash
+++ b/package/python-autobahn/python-autobahn.hash
@@ -1,5 +1,5 @@
# md5, sha256 from https://pypi.org/pypi/autobahn/json
-md5 a3a0648371b41328282a9ab7fe48ccbe autobahn-18.11.1.tar.gz
-sha256 c7e775e46fc033160fa89942de4953ca739f26167f74431dc2c8a3cd165b8755 autobahn-18.11.1.tar.gz
+md5 4a63c94ea306e07602eaca6befd86751 autobahn-18.11.2.tar.gz
+sha256 43262e500aaf8b89fb5f0b60ab13163500ee877908cdd6861208546d95c6dba0 autobahn-18.11.2.tar.gz
# Locally computed sha256 checksums
sha256 0387eefce570453daaa60633f28676003731eeca28b2d0a0071c628e3a0004ef LICENSE
diff --git a/package/python-autobahn/python-autobahn.mk b/package/python-autobahn/python-autobahn.mk
index c5faacf965..d175244fc0 100644
--- a/package/python-autobahn/python-autobahn.mk
+++ b/package/python-autobahn/python-autobahn.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_AUTOBAHN_VERSION = 18.11.1
+PYTHON_AUTOBAHN_VERSION = 18.11.2
PYTHON_AUTOBAHN_SOURCE = autobahn-$(PYTHON_AUTOBAHN_VERSION).tar.gz
-PYTHON_AUTOBAHN_SITE = https://files.pythonhosted.org/packages/01/ee/d401d58dc7732fadf4fd12d7fb87dd2f3e5e2d0ba65865495565f97c2c31
+PYTHON_AUTOBAHN_SITE = https://files.pythonhosted.org/packages/3a/9f/9552ce8fec2703370f63eedbedffa1151865f1265fbfc5c3bbd1029710cc
PYTHON_AUTOBAHN_LICENSE = MIT
PYTHON_AUTOBAHN_LICENSE_FILES = LICENSE
PYTHON_AUTOBAHN_SETUP_TYPE = setuptools
diff --git a/package/python-cchardet/Config.in b/package/python-cchardet/Config.in
new file mode 100644
index 0000000000..74153126fb
--- /dev/null
+++ b/package/python-cchardet/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_PYTHON_CCHARDET
+ bool "python-cchardet"
+ depends on BR2_INSTALL_LIBSTDCPP
+ help
+ cChardet is high speed universal character encoding
+ detector.
+
+ https://github.com/PyYoshi/cChardet
+
+comment "python-cchardet needs a toolchain w/ C++"
+ depends on !BR2_INSTALL_LIBSTDCPP
diff --git a/package/python-cchardet/python-cchardet.hash b/package/python-cchardet/python-cchardet.hash
new file mode 100644
index 0000000000..231804ee3c
--- /dev/null
+++ b/package/python-cchardet/python-cchardet.hash
@@ -0,0 +1,5 @@
+# md5, sha256 from https://pypi.org/pypi/cchardet/json
+md5 17af20af67cb18e958854e273d857a88 cchardet-2.1.4.tar.gz
+sha256 cc9745e0400da4cfb49f075e7819f22473b66443f953427058fee2c7b9547cc0 cchardet-2.1.4.tar.gz
+# Locally computed sha256 checksums
+sha256 107a29ccdd2d778aa2df5462f85dddfa099059abd22e064e07ec2cc9bafc37cd COPYING
diff --git a/package/python-cchardet/python-cchardet.mk b/package/python-cchardet/python-cchardet.mk
new file mode 100644
index 0000000000..9ac170c22d
--- /dev/null
+++ b/package/python-cchardet/python-cchardet.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-cchardet
+#
+################################################################################
+
+PYTHON_CCHARDET_VERSION = 2.1.4
+PYTHON_CCHARDET_SOURCE = cchardet-$(PYTHON_CCHARDET_VERSION).tar.gz
+PYTHON_CCHARDET_SITE = https://files.pythonhosted.org/packages/74/64/3988d388315c1af3e24f447689dadf30edead43366fb2041cb103380b57f
+PYTHON_CCHARDET_SETUP_TYPE = setuptools
+PYTHON_CCHARDET_LICENSE = MPL-1.1
+PYTHON_CCHARDET_LICENSE_FILES = COPYING
+
+$(eval $(python-package))
diff --git a/package/python-certifi/python-certifi.hash b/package/python-certifi/python-certifi.hash
index 596475fc25..3d0e48f6c2 100644
--- a/package/python-certifi/python-certifi.hash
+++ b/package/python-certifi/python-certifi.hash
@@ -1,5 +1,5 @@
# md5, sha256 from https://pypi.org/pypi/certifi/json
-md5 3f4ca75a66bc65fea0693b8040f66d13 certifi-2018.10.15.tar.gz
-sha256 6d58c986d22b038c8c0df30d639f23a3e6d172a05c3583e766f4c0b785c0986a certifi-2018.10.15.tar.gz
+md5 8160cf662212bc731eccf1af8042c0af certifi-2018.11.29.tar.gz
+sha256 47f9c83ef4c0c621eaef743f133f09fa8a74a9b75f037e8624f83bd1b6626cb7 certifi-2018.11.29.tar.gz
# Locally computed sha256 checksums
sha256 6a70a4bf6b010016d59a64b8ae4ad8dc7f5ef16f1fb453cc2ecd771c5a341131 LICENSE
diff --git a/package/python-certifi/python-certifi.mk b/package/python-certifi/python-certifi.mk
index addb52fc11..29b646922a 100644
--- a/package/python-certifi/python-certifi.mk
+++ b/package/python-certifi/python-certifi.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_CERTIFI_VERSION = 2018.10.15
+PYTHON_CERTIFI_VERSION = 2018.11.29
PYTHON_CERTIFI_SOURCE = certifi-$(PYTHON_CERTIFI_VERSION).tar.gz
-PYTHON_CERTIFI_SITE = https://files.pythonhosted.org/packages/41/b6/4f0cefba47656583217acd6cd797bc2db1fede0d53090fdc28ad2c8e0716
+PYTHON_CERTIFI_SITE = https://files.pythonhosted.org/packages/55/54/3ce77783acba5979ce16674fc98b1920d00b01d337cfaaf5db22543505ed
PYTHON_CERTIFI_SETUP_TYPE = setuptools
PYTHON_CERTIFI_LICENSE = ISC (Python code), MPL-2.0 (cacert.pem)
PYTHON_CERTIFI_LICENSE_FILES = LICENSE
diff --git a/package/python-crossbar/python-crossbar.hash b/package/python-crossbar/python-crossbar.hash
index aee07a7382..4b73f81338 100644
--- a/package/python-crossbar/python-crossbar.hash
+++ b/package/python-crossbar/python-crossbar.hash
@@ -1,5 +1,5 @@
# md5, sha256 from https://pypi.org/pypi/crossbar/json
-md5 e3f0c51c6c496a3d7f1c62d7f64f23db crossbar-18.11.1.tar.gz
-sha256 ab24031f40077ee283469aab5f270bdc223b29b1e6f45d69cf38bf4cad80df2a crossbar-18.11.1.tar.gz
+md5 2f48f40f7a43eced7cb74353a303c3db crossbar-18.11.2.tar.gz
+sha256 8236f207222167747de006784a431cfa546f98b51f47e82cd71e7008f5a09690 crossbar-18.11.2.tar.gz
# Locally computed
sha256 57c8ff33c9c0cfc3ef00e650a1cc910d7ee479a8bc509f6c9209a7c2a11399d6 LICENSE
diff --git a/package/python-crossbar/python-crossbar.mk b/package/python-crossbar/python-crossbar.mk
index de5dcea931..2a796f201f 100644
--- a/package/python-crossbar/python-crossbar.mk
+++ b/package/python-crossbar/python-crossbar.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_CROSSBAR_VERSION = 18.11.1
+PYTHON_CROSSBAR_VERSION = 18.11.2
PYTHON_CROSSBAR_SOURCE = crossbar-$(PYTHON_CROSSBAR_VERSION).tar.gz
-PYTHON_CROSSBAR_SITE = https://files.pythonhosted.org/packages/99/02/7f7f7dee3e8787e44d9452cc1d712183e5903d8a76455693b15a900385eb
+PYTHON_CROSSBAR_SITE = https://files.pythonhosted.org/packages/f8/c7/1388883cb64db073c4878e0c83afedf785fd22e4cebc96523e105a000088
PYTHON_CROSSBAR_LICENSE = AGPL-3.0
PYTHON_CROSSBAR_LICENSE_FILES = LICENSE
PYTHON_CROSSBAR_SETUP_TYPE = setuptools
diff --git a/package/python-cython/python-cython.hash b/package/python-cython/python-cython.hash
index 8326dfe132..4ce7b3cd55 100644
--- a/package/python-cython/python-cython.hash
+++ b/package/python-cython/python-cython.hash
@@ -1,6 +1,6 @@
# md5, sha256 from https://pypi.org/pypi/cython/json
-md5 5cb227772fbb0318be3c73b532d249ac Cython-0.29.tar.gz
-sha256 94916d1ede67682638d3cc0feb10648ff14dc51fb7a7f147f4fedce78eaaea97 Cython-0.29.tar.gz
+md5 3cf61c7ef8e5daa47e469cf7ba2e598c Cython-0.29.1.tar.gz
+sha256 18ab7646985a97e02cee72e1ddba2e732d4931d4e1732494ff30c5aa084bfb97 Cython-0.29.1.tar.gz
# Locally computed sha256 checksums
sha256 a6cba85bc92e0cff7a450b1d873c0eaa2e9fc96bf472df0247a26bec77bf3ff9 LICENSE.txt
sha256 e1eb1c49a8508e8173dac30157e4a6439a44ad8846194746c424fbc3fc2b95d7 COPYING.txt
diff --git a/package/python-cython/python-cython.mk b/package/python-cython/python-cython.mk
index f4cff975f1..852146406a 100644
--- a/package/python-cython/python-cython.mk
+++ b/package/python-cython/python-cython.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_CYTHON_VERSION = 0.29
+PYTHON_CYTHON_VERSION = 0.29.1
PYTHON_CYTHON_SOURCE = Cython-$(PYTHON_CYTHON_VERSION).tar.gz
-PYTHON_CYTHON_SITE = https://files.pythonhosted.org/packages/f0/66/6309291b19b498b672817bd237caec787d1b18013ee659f17b1ec5844887
+PYTHON_CYTHON_SITE = https://files.pythonhosted.org/packages/f0/f8/7f406aac4c6919d5a4ce16509bbe059cd256e9ad94bae5ccac14094b7c51
PYTHON_CYTHON_SETUP_TYPE = setuptools
PYTHON_CYTHON_LICENSE = Apache-2.0
PYTHON_CYTHON_LICENSE_FILES = COPYING.txt LICENSE.txt
diff --git a/package/python-engineio/python-engineio.hash b/package/python-engineio/python-engineio.hash
index 7bf1a49410..7a9a1fdad0 100644
--- a/package/python-engineio/python-engineio.hash
+++ b/package/python-engineio/python-engineio.hash
@@ -1,5 +1,5 @@
# md5, sha256 from https://pypi.org/pypi/python-engineio/json
-md5 92d2e1b62083ce8f0dcd8fd905b0dd9d python-engineio-2.3.2.tar.gz
-sha256 871f4d022eb9171e380281266ba2aef0759b264ba862350bc94e7a597a98a443 python-engineio-2.3.2.tar.gz
+md5 a7930cb8bf957f1b12e1a21ae5b57982 python-engineio-3.0.0.tar.gz
+sha256 bb8b5888adb852614b4b1861586ee7d89145cbd2ebba03ed7043e64c029bbb3b python-engineio-3.0.0.tar.gz
# Locally computed sha256 checksums
sha256 c9e97d3dbc1fbbcdb4f7808b282cd646db887aff4f5313fe6bbe8d4c31405a9c LICENSE
diff --git a/package/python-engineio/python-engineio.mk b/package/python-engineio/python-engineio.mk
index e730c39cd2..9bda632661 100644
--- a/package/python-engineio/python-engineio.mk
+++ b/package/python-engineio/python-engineio.mk
@@ -4,8 +4,8 @@
#
################################################################################
-PYTHON_ENGINEIO_VERSION = 2.3.2
-PYTHON_ENGINEIO_SITE = https://files.pythonhosted.org/packages/66/18/09516793c68e0f7fb759d54c109a09a86e31c3e685eb77884613a1c1a7b3
+PYTHON_ENGINEIO_VERSION = 3.0.0
+PYTHON_ENGINEIO_SITE = https://files.pythonhosted.org/packages/51/a4/1642a75f1206a14e9a75f286d38b1794b13e9ee3169f57cb939cb99ffea3
PYTHON_ENGINEIO_SETUP_TYPE = setuptools
PYTHON_ENGINEIO_LICENSE = MIT
PYTHON_ENGINEIO_LICENSE_FILES = LICENSE
diff --git a/package/python-jsonmodels/python-jsonmodels.hash b/package/python-jsonmodels/python-jsonmodels.hash
index f5b1ac5ef1..16e200b03f 100644
--- a/package/python-jsonmodels/python-jsonmodels.hash
+++ b/package/python-jsonmodels/python-jsonmodels.hash
@@ -1,4 +1,5 @@
-# md5 from https://pypi.python.org/pypi/jsonmodels/json, sha256 locally computed
-md5 e42b6c0078e731035ec3f1bf8a6cdc92 jsonmodels-2.3.tar.gz
-sha256 09e9639c85531e0f37991bb23a363494e37a2e89fb480dbc03d9556258f4ea47 jsonmodels-2.3.tar.gz
+# md5, sha256 from https://pypi.org/pypi/jsonmodels/json
+md5 96132e252887f840d23792c03fad2039 jsonmodels-2.4.tar.gz
+sha256 abc8dc334a1794513e511a75639f77c271ef6a2992b6793f3753c7335dd18775 jsonmodels-2.4.tar.gz
+# Locally computed sha256 checksums
sha256 3b1219763eec6924ddd4c4d61dee6a53c5fc9ab62707a9ad763ee363d3050cc5 LICENSE
diff --git a/package/python-jsonmodels/python-jsonmodels.mk b/package/python-jsonmodels/python-jsonmodels.mk
index 4d4da87969..4e4eecf233 100644
--- a/package/python-jsonmodels/python-jsonmodels.mk
+++ b/package/python-jsonmodels/python-jsonmodels.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_JSONMODELS_VERSION = 2.3
+PYTHON_JSONMODELS_VERSION = 2.4
PYTHON_JSONMODELS_SOURCE = jsonmodels-$(PYTHON_JSONMODELS_VERSION).tar.gz
-PYTHON_JSONMODELS_SITE = https://pypi.python.org/packages/ab/0f/e214845b49881d3b2bebd1f387eedc5b26ac5580353a0a38074e94439957
+PYTHON_JSONMODELS_SITE = https://files.pythonhosted.org/packages/68/00/524668dc751f9ef91e73c795b2073bf2ddb79728a474d1bcab9c6dc426d8
PYTHON_JSONMODELS_SETUP_TYPE = setuptools
PYTHON_JSONMODELS_LICENSE = BSD-3-Clause
PYTHON_JSONMODELS_LICENSE_FILES = LICENSE
diff --git a/package/python-msgpack/python-msgpack.hash b/package/python-msgpack/python-msgpack.hash
index 74785837d8..98027009ad 100644
--- a/package/python-msgpack/python-msgpack.hash
+++ b/package/python-msgpack/python-msgpack.hash
@@ -1,5 +1,5 @@
-# md5, sha256 from https://pypi.org/pypi/msgpack-python/json
-md5 6d644c06a87a5a111bbbf5b34b4be440 msgpack-python-0.5.6.tar.gz
-sha256 378cc8a6d3545b532dfd149da715abae4fda2a3adb6d74e525d0d5e51f46909b msgpack-python-0.5.6.tar.gz
+# md5, sha256 from https://pypi.org/pypi/msgpack/json
+md5 be3043cc2c1e3b5ebf08463ffa71cf17 msgpack-0.6.0.tar.gz
+sha256 64abc6bf3a2ac301702f5760f4e6e227d0fd4d84d9014ef9a40faa9d43365259 msgpack-0.6.0.tar.gz
# Locally computed sha256
sha256 492dedba85da5872f78e6091bcd1fea474d660d35acb4dee964b8aab3f007427 COPYING
diff --git a/package/python-msgpack/python-msgpack.mk b/package/python-msgpack/python-msgpack.mk
index e0544f5d33..8bbae9283d 100644
--- a/package/python-msgpack/python-msgpack.mk
+++ b/package/python-msgpack/python-msgpack.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_MSGPACK_VERSION = 0.5.6
-PYTHON_MSGPACK_SOURCE = msgpack-python-$(PYTHON_MSGPACK_VERSION).tar.gz
-PYTHON_MSGPACK_SITE = https://files.pythonhosted.org/packages/8a/20/6eca772d1a5830336f84aca1d8198e5a3f4715cd1c7fc36d3cc7f7185091
+PYTHON_MSGPACK_VERSION = 0.6.0
+PYTHON_MSGPACK_SOURCE = msgpack-$(PYTHON_MSGPACK_VERSION).tar.gz
+PYTHON_MSGPACK_SITE = https://files.pythonhosted.org/packages/3a/bb/dc3f9fc608a6c1c7a471c2bebc761d9c8dbb2f7179a4283a89b9451765b5
PYTHON_MSGPACK_LICENSE = Apache-2.0
PYTHON_MSGPACK_LICENSE_FILES = COPYING
PYTHON_MSGPACK_SETUP_TYPE = setuptools
diff --git a/package/python-multidict/python-multidict.hash b/package/python-multidict/python-multidict.hash
index aa15eed1c7..a98c4553d4 100644
--- a/package/python-multidict/python-multidict.hash
+++ b/package/python-multidict/python-multidict.hash
@@ -1,5 +1,5 @@
# md5, sha256 from https://pypi.org/pypi/multidict/json
-md5 55d19168f955e5463c6f6b530e913da3 multidict-4.4.2.tar.gz
-sha256 3c11e92c3dfc321014e22fb442bc9eb70e01af30d6ce442026b0c35723448c66 multidict-4.4.2.tar.gz
+md5 5e9d8f7e1ada9a22932aed6a72f88e43 multidict-4.5.2.tar.gz
+sha256 024b8129695a952ebd93373e45b5d341dbb87c17ce49637b34000093f243dd4f multidict-4.5.2.tar.gz
# Locally computed sha256 checksums
sha256 a1c5825513279d3085a0ba46880e148ea3710c149bbaedcf2d11605a5ed3c4ad LICENSE
diff --git a/package/python-multidict/python-multidict.mk b/package/python-multidict/python-multidict.mk
index f88135cb69..7b9cd39283 100644
--- a/package/python-multidict/python-multidict.mk
+++ b/package/python-multidict/python-multidict.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_MULTIDICT_VERSION = 4.4.2
+PYTHON_MULTIDICT_VERSION = 4.5.2
PYTHON_MULTIDICT_SOURCE = multidict-$(PYTHON_MULTIDICT_VERSION).tar.gz
-PYTHON_MULTIDICT_SITE = https://files.pythonhosted.org/packages/b3/5f/5c29cde8511c95fad045b9ecaf2e76f0da18761e8363a82594f5a58c2ced
+PYTHON_MULTIDICT_SITE = https://files.pythonhosted.org/packages/7f/8f/b3c8c5b062309e854ce5b726fc101195fbaa881d306ffa5c2ba19efa3af2
PYTHON_MULTIDICT_SETUP_TYPE = setuptools
PYTHON_MULTIDICT_LICENSE = Apache-2.0
PYTHON_MULTIDICT_LICENSE_FILES = LICENSE
diff --git a/package/python-networkmanager/python-networkmanager.hash b/package/python-networkmanager/python-networkmanager.hash
index 1fed4befb7..83621761cd 100644
--- a/package/python-networkmanager/python-networkmanager.hash
+++ b/package/python-networkmanager/python-networkmanager.hash
@@ -1,3 +1,3 @@
-# md5 from https://pypi.python.org/pypi/python-networkmanager/json, sha256 locally computed
-md5 5fc644a65463031295c6b7dd51a0f1bd python-networkmanager-2.0.1.tar.gz
-sha256 bc36507506ad29bfdac941b0987ebd1cc9633c9a9291d7378e229e4515a0a517 python-networkmanager-2.0.1.tar.gz
+# md5 and sha256 from https://pypi.python.org/pypi/python-networkmanager/json
+md5 f638d854a3639fb37c0e06d1092a771e python-networkmanager-2.1.tar.gz
+sha256 aef1e34d98d7bec7cc368e0ca0f2e97493f9b5ebe6d7103f8f6460cfca3dc6fc python-networkmanager-2.1.tar.gz
diff --git a/package/python-networkmanager/python-networkmanager.mk b/package/python-networkmanager/python-networkmanager.mk
index 29afb5e564..de893f757a 100644
--- a/package/python-networkmanager/python-networkmanager.mk
+++ b/package/python-networkmanager/python-networkmanager.mk
@@ -4,8 +4,8 @@
#
################################################################################
-PYTHON_NETWORKMANAGER_VERSION = 2.0.1
-PYTHON_NETWORKMANAGER_SITE = https://pypi.python.org/packages/d7/f9/5cbd99fd24a072875ce048e48d1754285f137aab447de8fee63b6cba990a
+PYTHON_NETWORKMANAGER_VERSION = 2.1
+PYTHON_NETWORKMANAGER_SITE = https://files.pythonhosted.org/packages/73/ec/2cc46290cedc99f59df3633d428dfa91d95946ca49af96fdb53514ee195f
PYTHON_NETWORKMANAGER_SETUP_TYPE = setuptools
PYTHON_NETWORKMANAGER_LICENSE = Zlib
PYTHON_NETWORKMANAGER_LICENSE_FILES = COPYING
diff --git a/package/python-pathlib2/python-pathlib2.hash b/package/python-pathlib2/python-pathlib2.hash
index 4d2b02f8d4..b17517b442 100644
--- a/package/python-pathlib2/python-pathlib2.hash
+++ b/package/python-pathlib2/python-pathlib2.hash
@@ -1,5 +1,5 @@
# md5, sha256 from https://pypi.org/pypi/pathlib2/json
-md5 fd76fb5d0baa798bfe12fb7965da97f8 pathlib2-2.3.2.tar.gz
-sha256 8eb170f8d0d61825e09a95b38be068299ddeda82f35e96c3301a8a5e7604cb83 pathlib2-2.3.2.tar.gz
+md5 f9ede5c162ea6fc6a3b1d26db53bb6a2 pathlib2-2.3.3.tar.gz
+sha256 25199318e8cc3c25dcb45cbe084cc061051336d5a9ea2a12448d3d8cb748f742 pathlib2-2.3.3.tar.gz
# Locally computed sha256 checksums
sha256 f8e02f1a07e4c6fc59a4bee831ddde26b97064105c423b9e24340f35aaa80262 LICENSE.rst
diff --git a/package/python-pathlib2/python-pathlib2.mk b/package/python-pathlib2/python-pathlib2.mk
index dadc97513b..256d9b81e1 100644
--- a/package/python-pathlib2/python-pathlib2.mk
+++ b/package/python-pathlib2/python-pathlib2.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_PATHLIB2_VERSION = 2.3.2
+PYTHON_PATHLIB2_VERSION = 2.3.3
PYTHON_PATHLIB2_SOURCE = pathlib2-$(PYTHON_PATHLIB2_VERSION).tar.gz
-PYTHON_PATHLIB2_SITE = https://files.pythonhosted.org/packages/db/a8/7d6439c1aec525ed70810abee5b7d7f3aa35347f59bc28343e8f62019aa2
+PYTHON_PATHLIB2_SITE = https://files.pythonhosted.org/packages/bf/d7/a2568f4596b75d2c6e2b4094a7e64f620decc7887f69a1f2811931ea15b9
PYTHON_PATHLIB2_LICENSE = MIT
PYTHON_PATHLIB2_LICENSE_FILES = LICENSE.rst
PYTHON_PATHLIB2_SETUP_TYPE = setuptools
diff --git a/package/python-pycares/Config.in b/package/python-pycares/Config.in
new file mode 100644
index 0000000000..4144952d8d
--- /dev/null
+++ b/package/python-pycares/Config.in
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_PYTHON_PYCARES
+ bool "python-pycares"
+ help
+ Python interface for c-ares.
+
+ http://github.com/saghul/pycares
diff --git a/package/python-pycares/python-pycares.hash b/package/python-pycares/python-pycares.hash
new file mode 100644
index 0000000000..2e80a974dc
--- /dev/null
+++ b/package/python-pycares/python-pycares.hash
@@ -0,0 +1,5 @@
+# md5, sha256 from https://pypi.org/pypi/pycares/json
+md5 74893b2b380fbb45329a406ae4b1ae89 pycares-2.3.0.tar.gz
+sha256 36f4c03df57c41a87eb3d642201684eb5a8bc194f4bafaa9f60ee6dc0aef8e40 pycares-2.3.0.tar.gz
+# Locally computed sha256 checksums
+sha256 427bb3a5372024a26e2c290b24382512bcc7ca123431c4dd178dd613beea7eee LICENSE
diff --git a/package/python-pycares/python-pycares.mk b/package/python-pycares/python-pycares.mk
new file mode 100644
index 0000000000..961c87eaf0
--- /dev/null
+++ b/package/python-pycares/python-pycares.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-pycares
+#
+################################################################################
+
+PYTHON_PYCARES_VERSION = 2.3.0
+PYTHON_PYCARES_SOURCE = pycares-$(PYTHON_PYCARES_VERSION).tar.gz
+PYTHON_PYCARES_SITE = https://files.pythonhosted.org/packages/89/5c/3a7e1a52d6abb52b9ca1a56d2df699936e89d8b98f75cfd60d03363e7c10
+PYTHON_PYCARES_SETUP_TYPE = setuptools
+PYTHON_PYCARES_LICENSE = MIT
+PYTHON_PYCARES_LICENSE_FILES = LICENSE
+
+$(eval $(python-package))
diff --git a/package/python-pycryptodomex/python-pycryptodomex.hash b/package/python-pycryptodomex/python-pycryptodomex.hash
index 3d98d19f6d..2caf97a293 100644
--- a/package/python-pycryptodomex/python-pycryptodomex.hash
+++ b/package/python-pycryptodomex/python-pycryptodomex.hash
@@ -1,6 +1,6 @@
# md5, sha256 from https://pypi.org/pypi/pycryptodomex/json
-md5 80019e535efb0575b38217dd3c6c41bb pycryptodomex-3.7.0.tar.gz
-sha256 9f11823636128acbe4e17c35ff668f4d0a9f3133450753a0675525b6413aa1b0 pycryptodomex-3.7.0.tar.gz
+md5 ae7083008139cf9372322dcd99e92db0 pycryptodomex-3.7.1.tar.gz
+sha256 4ba053bea752ddc89b94d1f9f87008ef296a644b8dec0201c021d9636c069322 pycryptodomex-3.7.1.tar.gz
# Locally computed sha256 checksums
-sha256 fc884f6492490d0f227613ee900ff2a27e6879b79ee637c53a4697238bf12970 LICENSE.rst
+sha256 d1af3fab2ef8cc53b6c7f48bdeb178ac874b04faf4ba0159a96b6109f1d393e2 LICENSE.rst
sha256 8e563c767164faa0831a333b57d23d4311cf566eb1b15d93250f4606be4eb549 Doc/LEGAL/COPYRIGHT.pycrypto
diff --git a/package/python-pycryptodomex/python-pycryptodomex.mk b/package/python-pycryptodomex/python-pycryptodomex.mk
index 1dcdb8418d..3d3b97ca48 100644
--- a/package/python-pycryptodomex/python-pycryptodomex.mk
+++ b/package/python-pycryptodomex/python-pycryptodomex.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_PYCRYPTODOMEX_VERSION = 3.7.0
+PYTHON_PYCRYPTODOMEX_VERSION = 3.7.1
PYTHON_PYCRYPTODOMEX_SOURCE = pycryptodomex-$(PYTHON_PYCRYPTODOMEX_VERSION).tar.gz
-PYTHON_PYCRYPTODOMEX_SITE = https://files.pythonhosted.org/packages/69/e7/5c50af65e3d46a161181089aed939bce185ad61f6cc86779994e9d8280d0
+PYTHON_PYCRYPTODOMEX_SITE = https://files.pythonhosted.org/packages/f6/be/9f65b7db183628bdb36401105a3fc9f1688909f5184c115902a7bdd333bd
PYTHON_PYCRYPTODOMEX_SETUP_TYPE = setuptools
PYTHON_PYCRYPTODOMEX_LICENSE = \
BSD-2-Clause, \
diff --git a/package/python-pydal/python-pydal.hash b/package/python-pydal/python-pydal.hash
index 8e6fa90e6a..27f2e6c7a2 100644
--- a/package/python-pydal/python-pydal.hash
+++ b/package/python-pydal/python-pydal.hash
@@ -1,2 +1,3 @@
# sha256 from https://pypi.org/project/pyDAL/#files
-sha256 59b28cbad92743c76134fc078b62f49d5c02b86c55cbdee527f75995d2681735 pyDAL-17.11.tar.gz
+sha256 763ed017f431fc3d9fa9243f6be2519ff49b8a260d15763c4733762d9c086904 python-pydal-v18.09.tar.gz
+sha256 ae7d7b6888bb72f26af2bcbee69ae6f8a49e12f66c99e78f2a8b806effc5219d LICENSE
diff --git a/package/python-pydal/python-pydal.mk b/package/python-pydal/python-pydal.mk
index 9de56bff61..4ff58def69 100644
--- a/package/python-pydal/python-pydal.mk
+++ b/package/python-pydal/python-pydal.mk
@@ -4,9 +4,8 @@
#
################################################################################
-PYTHON_PYDAL_VERSION = 17.11
-PYTHON_PYDAL_SOURCE = pyDAL-$(PYTHON_PYDAL_VERSION).tar.gz
-PYTHON_PYDAL_SITE = https://files.pythonhosted.org/packages/d2/64/a119cb70ed91a6273aad811fd250b8a55d4bc8b0d900757723ec5a4f0ba9
+PYTHON_PYDAL_VERSION = v18.09
+PYTHON_PYDAL_SITE = $(call github,web2py,pydal,$(PYTHON_PYDAL_VERSION))
PYTHON_PYDAL_LICENSE = BSD-3-Clause
PYTHON_PYDAL_LICENSE_FILES = LICENSE
PYTHON_PYDAL_SETUP_TYPE = setuptools
diff --git a/package/python-setuptools/python-setuptools.hash b/package/python-setuptools/python-setuptools.hash
index 05d9312c78..a034ee8015 100644
--- a/package/python-setuptools/python-setuptools.hash
+++ b/package/python-setuptools/python-setuptools.hash
@@ -1,4 +1,4 @@
# From https://pypi.org/pypi/setuptools/json
-md5 12f8546ead968a0c237732d53fe7fcb1 setuptools-40.5.0.zip
-sha256 2a2a200f4a760adbded23a091a00be2eca4e28efed65c6120ea275f7e89a1eab setuptools-40.5.0.zip
+md5 1c45c7d66dc84ae4ee36581dc9e5359b setuptools-40.6.2.zip
+sha256 86bb4d8e1b0fabad1f4642b64c335b673e53e7a381de03c9a89fe678152c4c64 setuptools-40.6.2.zip
sha256 c32a3ac395af6321efd28be73d06a00f0db6ab887d1c21d4fec46128d2056d5a LICENSE
diff --git a/package/python-setuptools/python-setuptools.mk b/package/python-setuptools/python-setuptools.mk
index 3dca7094e8..0f28152e54 100644
--- a/package/python-setuptools/python-setuptools.mk
+++ b/package/python-setuptools/python-setuptools.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_SETUPTOOLS_VERSION = 40.5.0
+PYTHON_SETUPTOOLS_VERSION = 40.6.2
PYTHON_SETUPTOOLS_SOURCE = setuptools-$(PYTHON_SETUPTOOLS_VERSION).zip
-PYTHON_SETUPTOOLS_SITE = https://files.pythonhosted.org/packages/26/e5/9897eee1100b166a61f91b68528cb692e8887300d9cbdaa1a349f6304b79
+PYTHON_SETUPTOOLS_SITE = https://files.pythonhosted.org/packages/b0/d1/8acb42f391cba52e35b131e442e80deffbb8d0676b93261d761b1f0ef8fb
PYTHON_SETUPTOOLS_LICENSE = MIT
PYTHON_SETUPTOOLS_LICENSE_FILES = LICENSE
PYTHON_SETUPTOOLS_SETUP_TYPE = setuptools
diff --git a/package/python-sortedcontainers/python-sortedcontainers.hash b/package/python-sortedcontainers/python-sortedcontainers.hash
index c68d78a176..311bb77e17 100644
--- a/package/python-sortedcontainers/python-sortedcontainers.hash
+++ b/package/python-sortedcontainers/python-sortedcontainers.hash
@@ -1,5 +1,5 @@
# md5, sha256 from https://pypi.org/pypi/sortedcontainers/json
-md5 5f079b1131d8b1a3ed025e7e679b1497 sortedcontainers-2.0.5.tar.gz
-sha256 b74f2756fb5e23512572cc76f0fe0832fd86310f77dfee54335a35fb33f6b950 sortedcontainers-2.0.5.tar.gz
+md5 41a4a1eaf7b85e6b3beb14cfb160bc27 sortedcontainers-2.1.0.tar.gz
+sha256 974e9a32f56b17c1bac2aebd9dcf197f3eb9cd30553c5852a3187ad162e1a03a sortedcontainers-2.1.0.tar.gz
# Locally computed sha256 checksums
sha256 7dcf4a5137118a925727b8a1690bc6ea70b156ee6739dbb51fd4d386718d6ce5 LICENSE
diff --git a/package/python-sortedcontainers/python-sortedcontainers.mk b/package/python-sortedcontainers/python-sortedcontainers.mk
index c32f9e4047..43f662a89f 100644
--- a/package/python-sortedcontainers/python-sortedcontainers.mk
+++ b/package/python-sortedcontainers/python-sortedcontainers.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_SORTEDCONTAINERS_VERSION = 2.0.5
+PYTHON_SORTEDCONTAINERS_VERSION = 2.1.0
PYTHON_SORTEDCONTAINERS_SOURCE = sortedcontainers-$(PYTHON_SORTEDCONTAINERS_VERSION).tar.gz
-PYTHON_SORTEDCONTAINERS_SITE = https://files.pythonhosted.org/packages/b9/30/accbf5c09c5fa25a3d5f762761e0d7ece6fdb12f2a9c43b840f73cef43ef
+PYTHON_SORTEDCONTAINERS_SITE = https://files.pythonhosted.org/packages/29/e0/135df2e733790a3d3bcda970fd080617be8cea3bd98f411e76e6847c17ef
PYTHON_SORTEDCONTAINERS_SETUP_TYPE = setuptools
PYTHON_SORTEDCONTAINERS_LICENSE = Apache-2.0
PYTHON_SORTEDCONTAINERS_LICENSE_FILES = LICENSE
diff --git a/package/python-web2py/python-web2py.hash b/package/python-web2py/python-web2py.hash
index d23da1ea6e..9a1df0c2a1 100644
--- a/package/python-web2py/python-web2py.hash
+++ b/package/python-web2py/python-web2py.hash
@@ -1,2 +1,3 @@
# sha256 locally computed
-sha256 d9ed52676e9becd53d2d73a849dea3d55b8b61231abf3428cf516dcc0083d451 python-web2py-R-2.16.1.tar.gz
+sha256 8205a7a08595ca1a41919750a8dc4e431258966cb46c8021564b25003cf90863 python-web2py-R-2.17.2.tar.gz
+sha256 2aae96826184a492bc799add49aed7b29036e7aba2d2294fb65053bd30fe55fe LICENSE
diff --git a/package/python-web2py/python-web2py.mk b/package/python-web2py/python-web2py.mk
index 1e02fb7ca5..922b267b8b 100644
--- a/package/python-web2py/python-web2py.mk
+++ b/package/python-web2py/python-web2py.mk
@@ -4,7 +4,7 @@
#
################################################################################
-PYTHON_WEB2PY_VERSION = R-2.16.1
+PYTHON_WEB2PY_VERSION = R-2.17.2
PYTHON_WEB2PY_SITE = $(call github,web2py,web2py,$(PYTHON_WEB2PY_VERSION))
PYTHON_WEB2PY_LICENSE = LGPL-3.0
PYTHON_WEB2PY_LICENSE_FILES = LICENSE
diff --git a/package/qemu/Config.in.host b/package/qemu/Config.in.host
index 957c7d2ae1..f99f3e05cf 100644
--- a/package/qemu/Config.in.host
+++ b/package/qemu/Config.in.host
@@ -67,4 +67,10 @@ config BR2_PACKAGE_HOST_QEMU_VDE2
Ethernet and can be used to create virtual switches to
"plug" both physical and virtual machines in them.
+config BR2_PACKAGE_HOST_QEMU_VIRTFS
+ bool "Virtual filesystem support"
+ help
+ Enables support for virtual filesystem in Qemu allowing
+ shared filesystem between Qemu and its emulated target.
+
endif
diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk
index 709535a4b6..99313234c1 100644
--- a/package/qemu/qemu.mk
+++ b/package/qemu/qemu.mk
@@ -81,6 +81,13 @@ else
QEMU_OPTS += --disable-tools
endif
+ifeq ($(BR2_PACKAGE_LIBSECCOMP),y)
+QEMU_OPTS += --enable-seccomp
+QEMU_DEPENDENCIES += libseccomp
+else
+QEMU_OPTS += --disable-seccomp
+endif
+
ifeq ($(BR2_PACKAGE_LIBSSH2),y)
QEMU_OPTS += --enable-libssh2
QEMU_DEPENDENCIES += libssh2
@@ -121,7 +128,6 @@ define QEMU_CONFIGURE_CMDS
--disable-libiscsi \
--disable-usb-redir \
--disable-strip \
- --disable-seccomp \
--disable-sparse \
--disable-mpath \
--disable-sanitizers \
@@ -254,6 +260,10 @@ HOST_QEMU_OPTS += --enable-vde
HOST_QEMU_DEPENDENCIES += host-vde2
endif
+ifdef ($(BR2_PACKAGE_HOST_QEMU_VIRTFS),y)
+HOST_QEMU_OPTS += --enable-virtfs
+endif
+
# Override CPP, as it expects to be able to call it like it'd
# call the compiler.
define HOST_QEMU_CONFIGURE_CMDS
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 2b6fd39267..ec3d7042f1 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -271,6 +271,13 @@ define QT5BASE_CONFIGURE_ARCH_CONFIG
endef
endif
+# This allows to use ccache when available
+define QT5BASE_CONFIGURE_HOSTCC
+ $(SED) 's,^QMAKE_COMPILER\s*=.*,QMAKE_COMPILER=$(HOSTCC),' $(@D)/mkspecs/common/g++-base.conf
+ $(SED) 's,^QMAKE_CC\s*=.*,QMAKE_CC=$(HOSTCC),' $(@D)/mkspecs/common/g++-base.conf
+ $(SED) 's,^QMAKE_CXX\s*=.*,QMAKE_CXX=$(HOSTCXX),' $(@D)/mkspecs/common/g++-base.conf
+endef
+
define QT5BASE_CONFIGURE_CMDS
mkdir -p $(@D)/mkspecs/devices/linux-buildroot-g++/
sed 's/@EGLFS_DEVICE@/$(QT5BASE_EGLFS_DEVICE)/g' \
@@ -281,6 +288,7 @@ define QT5BASE_CONFIGURE_CMDS
$(QT5BASE_CONFIGURE_CONFIG_FILE)
touch $(QT5BASE_ARCH_CONFIG_FILE)
$(QT5BASE_CONFIGURE_ARCH_CONFIG)
+ $(QT5BASE_CONFIGURE_HOSTCC)
(cd $(@D); \
$(TARGET_MAKE_ENV) \
PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
diff --git a/package/quagga/0002-configure-fix-static-linking-with-readline.patch b/package/quagga/0002-configure-fix-static-linking-with-readline.patch
deleted file mode 100644
index 243dfaf75d..0000000000
--- a/package/quagga/0002-configure-fix-static-linking-with-readline.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 62ede7482da15d276b880f6d8540dce400dc50a7 Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Thu, 26 Nov 2015 15:59:07 +0100
-Subject: [PATCH] configure: fix static linking with readline
-
-When static linking is used, the order of the libraries is important,
-and the libraries using a symbol from another library should be listed
-*before* the library providing that symbol (see
-http://eli.thegreenplace.net/2013/07/09/library-order-in-static-linking)
-for details.
-
-When vtysh is linked statically, the command line contains "-lcurses
--lreadline", which causes a build failure due to unresolved
-symbols. This is because readline is using symbols from the curses
-library: the order should be the opposite.
-
-This patch fixes that problem by putting the -lreadline at the
-beginning of the LIBREADLINE variable calcualted by the configure
-script.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 3003e62..290953d 100755
---- a/configure.ac
-+++ b/configure.ac
-@@ -652,7 +652,7 @@ dnl [TODO] on Linux, and in [TODO] on Solaris.
- )]
- )]
- )
-- AC_CHECK_LIB(readline, main, LIBREADLINE="$LIBREADLINE -lreadline",,
-+ AC_CHECK_LIB(readline, main, LIBREADLINE="-lreadline $LIBREADLINE",,
- "$LIBREADLINE")
- if test $ac_cv_lib_readline_main = no; then
- AC_MSG_ERROR([vtysh needs libreadline but was not found and usable on your system.])
---
-2.6.3
-
diff --git a/package/quagga/0003-lib-memory-fix-indirect-static-link-with-zlib.patch b/package/quagga/0003-lib-memory-fix-indirect-static-link-with-zlib.patch
deleted file mode 100644
index 6990f47cda..0000000000
--- a/package/quagga/0003-lib-memory-fix-indirect-static-link-with-zlib.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-From 008dd9771057dbbd7ce971c43bce2a0b05e2cf97 Mon Sep 17 00:00:00 2001
-From: Baruch Siach <baruch@tkos.co.il>
-Date: Sun, 21 Aug 2016 08:56:57 +0300
-Subject: [PATCH] lib/memory: fix indirect static link with zlib
-
-quagga SNMP support depends on netsnmp, that optionally depends on OpenSSL,
-which in turn requires zlib. zlib exports the 'zcalloc' symbol, which collides
-with a function of the same name in memory.c. This is not a problem when
-linking dynamically, since quagga does not use zlib directly. But static
-linking fails with the error:
-
- CCLD ospfd
-.../output/host/usr/mips64el-buildroot-linux-uclibc/sysroot/usr/lib/libz.a(zutil.o): In function `zcalloc':
-zutil.c:(.text+0x48): multiple definition of `zcalloc'
-.../output/build/quagga-1.0.20160315/lib/.libs/libzebra.a(memory.o):memory.c:(.text+0x1a0): first defined here
-
-Rename 'zcalloc' to 'zzcalloc' to avoid symbol collision.
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
-Patch status: posted upstream
-https://lists.quagga.net/pipermail/quagga-dev/2016-August/016109.html
-
- lib/memory.c | 14 ++++++++------
- lib/memory.h | 4 ++--
- 2 files changed, 10 insertions(+), 8 deletions(-)
-
-diff --git a/lib/memory.c b/lib/memory.c
-index 269520d5a435..b1680a5e6f07 100644
---- a/lib/memory.c
-+++ b/lib/memory.c
-@@ -80,9 +80,11 @@ zmalloc (int type, size_t size)
-
- /*
- * Allocate memory as in zmalloc, and also clear the memory.
-+ * Add an extra 'z' prefix to function name to avoid collision when linking
-+ * statically with zlib that exports the 'zcalloc' symbol.
- */
- void *
--zcalloc (int type, size_t size)
-+zzcalloc (int type, size_t size)
- {
- void *memory;
-
-@@ -97,9 +99,9 @@ zcalloc (int type, size_t size)
- }
-
- /*
-- * Given a pointer returned by zmalloc or zcalloc, free it and
-+ * Given a pointer returned by zmalloc or zzcalloc, free it and
- * return a pointer to a new size, basically acting like realloc().
-- * Requires: ptr was returned by zmalloc, zcalloc, or zrealloc with the
-+ * Requires: ptr was returned by zmalloc, zzcalloc, or zrealloc with the
- * same type.
- * Effects: Returns a pointer to the new memory, or aborts.
- */
-@@ -109,7 +111,7 @@ zrealloc (int type, void *ptr, size_t size)
- void *memory;
-
- if (ptr == NULL) /* is really alloc */
-- return zcalloc(type, size);
-+ return zzcalloc(type, size);
-
- memory = realloc (ptr, size);
- if (memory == NULL)
-@@ -122,7 +124,7 @@ zrealloc (int type, void *ptr, size_t size)
-
- /*
- * Free memory allocated by z*alloc or zstrdup.
-- * Requires: ptr was returned by zmalloc, zcalloc, or zrealloc with the
-+ * Requires: ptr was returned by zmalloc, zzcalloc, or zrealloc with the
- * same type.
- * Effects: The memory is freed and may no longer be referenced.
- */
-@@ -196,7 +198,7 @@ mtype_zcalloc (const char *file, int line, int type, size_t size)
- mstat[type].c_calloc++;
- mstat[type].t_calloc++;
-
-- memory = zcalloc (type, size);
-+ memory = zzcalloc (type, size);
- mtype_log ("xcalloc", memory, file, line, type);
-
- return memory;
-diff --git a/lib/memory.h b/lib/memory.h
-index 23962235dbfe..501352993d21 100644
---- a/lib/memory.h
-+++ b/lib/memory.h
-@@ -56,7 +56,7 @@ extern struct mlist mlists[];
- mtype_zstrdup (__FILE__, __LINE__, (mtype), (str))
- #else
- #define XMALLOC(mtype, size) zmalloc ((mtype), (size))
--#define XCALLOC(mtype, size) zcalloc ((mtype), (size))
-+#define XCALLOC(mtype, size) zzcalloc ((mtype), (size))
- #define XREALLOC(mtype, ptr, size) zrealloc ((mtype), (ptr), (size))
- #define XFREE(mtype, ptr) do { \
- zfree ((mtype), (ptr)); \
-@@ -67,7 +67,7 @@ extern struct mlist mlists[];
-
- /* Prototypes of memory function. */
- extern void *zmalloc (int type, size_t size);
--extern void *zcalloc (int type, size_t size);
-+extern void *zzcalloc (int type, size_t size);
- extern void *zrealloc (int type, void *ptr, size_t size);
- extern void zfree (int type, void *ptr);
- extern char *zstrdup (int type, const char *str);
---
-2.8.1
-
diff --git a/package/quagga/0004-bgpd-Fix-AS_PATH-size-calculation-for-long-paths.patch b/package/quagga/0004-bgpd-Fix-AS_PATH-size-calculation-for-long-paths.patch
deleted file mode 100644
index 1425cf0426..0000000000
--- a/package/quagga/0004-bgpd-Fix-AS_PATH-size-calculation-for-long-paths.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 7a42b78be9a4108d98833069a88e6fddb9285008 Mon Sep 17 00:00:00 2001
-From: Andreas Jaggi <aj@open.ch>
-Date: Mon, 2 Oct 2017 19:38:43 +0530
-Subject: [PATCH] bgpd: Fix AS_PATH size calculation for long paths
-
-If you have an AS_PATH with more entries than
-what can be written into a single AS_SEGMENT_MAX
-it needs to be broken up. The code that noticed
-that the AS_PATH needs to be broken up was not
-correctly calculating the size of the resulting
-message. This patch addresses this issue.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- bgpd/bgp_aspath.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/bgpd/bgp_aspath.c b/bgpd/bgp_aspath.c
-index b7af5e88..d813bfba 100644
---- a/bgpd/bgp_aspath.c
-+++ b/bgpd/bgp_aspath.c
-@@ -903,7 +903,7 @@ aspath_put (struct stream *s, struct aspath *as, int use32bit )
- assegment_header_put (s, seg->type, AS_SEGMENT_MAX);
- assegment_data_put (s, seg->as, AS_SEGMENT_MAX, use32bit);
- written += AS_SEGMENT_MAX;
-- bytes += ASSEGMENT_SIZE (written, use32bit);
-+ bytes += ASSEGMENT_SIZE (AS_SEGMENT_MAX, use32bit);
- }
-
- /* write the final segment, probably is also the first */
---
-2.11.0
-
diff --git a/package/quagga/0005-bgpd-security-invalid-attr-length-sends-NOTIFY-with-.patch b/package/quagga/0005-bgpd-security-invalid-attr-length-sends-NOTIFY-with-.patch
deleted file mode 100644
index b64109d0f7..0000000000
--- a/package/quagga/0005-bgpd-security-invalid-attr-length-sends-NOTIFY-with-.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From cc2e6770697e343f4af534114ab7e633d5beabec Mon Sep 17 00:00:00 2001
-From: Paul Jakma <paul@jakma.org>
-Date: Wed, 3 Jan 2018 23:57:33 +0000
-Subject: [PATCH] bgpd/security: invalid attr length sends NOTIFY with data
- overrun
-
-Security issue: Quagga-2018-0543
-
-See: https://www.quagga.net/security/Quagga-2018-0543.txt
-
-* bgpd/bgp_attr.c: (bgp_attr_parse) An invalid attribute length is correctly
- checked, and a NOTIFY prepared. The NOTIFY can include the incorrect
- received data with the NOTIFY, for debug purposes. Commit
- c69698704806a9ac5 modified the code to do that just, and also send the
- malformed attr with the NOTIFY. However, the invalid attribute length was
- used as the length of the data to send back.
-
- The result is a read past the end of data, which is then written to the
- NOTIFY message and sent to the peer.
-
- A configured BGP peer can use this bug to read up to 64 KiB of memory from
- the bgpd process, or crash the process if the invalid read is caught by
- some means (unmapped page and SEGV, or other mechanism) resulting in a DoS.
-
- This bug _ought_ /not/ be exploitable by anything other than the connected
- BGP peer, assuming the underlying TCP transport is secure. For no BGP
- peer should send on an UPDATE with this attribute. Quagga will not, as
- Quagga always validates the attr header length, regardless of type.
-
- However, it is possible that there are BGP implementations that do not
- check lengths on some attributes (e.g. optional/transitive ones of a type
- they do not recognise), and might pass such malformed attrs on. If such
- implementations exists and are common, then this bug might be triggerable
- by BGP speakers further hops away. Those peers will not receive the
- NOTIFY (unless they sit on a shared medium), however they might then be
- able to trigger a DoS.
-
- Fix: use the valid bound to calculate the length.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- bgpd/bgp_attr.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/bgpd/bgp_attr.c b/bgpd/bgp_attr.c
-index ef58beb1..9564637e 100644
---- a/bgpd/bgp_attr.c
-+++ b/bgpd/bgp_attr.c
-@@ -2147,6 +2147,8 @@ bgp_attr_parse (struct peer *peer, struct attr *attr, bgp_size_t size,
- memset (seen, 0, BGP_ATTR_BITMAP_SIZE);
-
- /* End pointer of BGP attribute. */
-+ assert (size <= stream_get_size (BGP_INPUT (peer)));
-+ assert (size <= stream_get_endp (BGP_INPUT (peer)));
- endp = BGP_INPUT_PNT (peer) + size;
-
- /* Get attributes to the end of attribute length. */
-@@ -2228,7 +2230,7 @@ bgp_attr_parse (struct peer *peer, struct attr *attr, bgp_size_t size,
- bgp_notify_send_with_data (peer,
- BGP_NOTIFY_UPDATE_ERR,
- BGP_NOTIFY_UPDATE_ATTR_LENG_ERR,
-- startp, attr_endp - startp);
-+ startp, endp - startp);
- return BGP_ATTR_PARSE_ERROR;
- }
-
---
-2.11.0
-
diff --git a/package/quagga/0006-bgpd-security-Fix-double-free-of-unknown-attribute.patch b/package/quagga/0006-bgpd-security-Fix-double-free-of-unknown-attribute.patch
deleted file mode 100644
index 0e32817f06..0000000000
--- a/package/quagga/0006-bgpd-security-Fix-double-free-of-unknown-attribute.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From e69b535f92eafb599329bf725d9b4c6fd5d7fded Mon Sep 17 00:00:00 2001
-From: Paul Jakma <paul@jakma.org>
-Date: Sat, 6 Jan 2018 19:52:10 +0000
-Subject: [PATCH] bgpd/security: Fix double free of unknown attribute
-
-Security issue: Quagga-2018-1114
-See: https://www.quagga.net/security/Quagga-2018-1114.txt
-
-It is possible for bgpd to double-free an unknown attribute. This can happen
-via bgp_update_receive receiving an UPDATE with an invalid unknown attribute.
-bgp_update_receive then will call bgp_attr_unintern_sub and bgp_attr_flush,
-and the latter may try free an already freed unknown attr.
-
-* bgpd/bgp_attr.c: (transit_unintern) Take a pointer to the caller's storage
- for the (struct transit *), so that transit_unintern can NULL out the
- caller's reference if the (struct transit) is freed.
- (cluster_unintern) By inspection, appears to have a similar issue.
- (bgp_attr_unintern_sub) adjust for above.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- bgpd/bgp_attr.c | 33 +++++++++++++++++++--------------
- bgpd/bgp_attr.h | 4 ++--
- 2 files changed, 21 insertions(+), 16 deletions(-)
-
-diff --git a/bgpd/bgp_attr.c b/bgpd/bgp_attr.c
-index 9564637e..0c2806b5 100644
---- a/bgpd/bgp_attr.c
-+++ b/bgpd/bgp_attr.c
-@@ -199,15 +199,17 @@ cluster_intern (struct cluster_list *cluster)
- }
-
- void
--cluster_unintern (struct cluster_list *cluster)
-+cluster_unintern (struct cluster_list **cluster)
- {
-- if (cluster->refcnt)
-- cluster->refcnt--;
-+ struct cluster_list *c = *cluster;
-+ if (c->refcnt)
-+ c->refcnt--;
-
-- if (cluster->refcnt == 0)
-+ if (c->refcnt == 0)
- {
-- hash_release (cluster_hash, cluster);
-- cluster_free (cluster);
-+ hash_release (cluster_hash, c);
-+ cluster_free (c);
-+ *cluster = NULL;
- }
- }
-
-@@ -357,15 +359,18 @@ transit_intern (struct transit *transit)
- }
-
- void
--transit_unintern (struct transit *transit)
-+transit_unintern (struct transit **transit)
- {
-- if (transit->refcnt)
-- transit->refcnt--;
-+ struct transit *t = *transit;
-+
-+ if (t->refcnt)
-+ t->refcnt--;
-
-- if (transit->refcnt == 0)
-+ if (t->refcnt == 0)
- {
-- hash_release (transit_hash, transit);
-- transit_free (transit);
-+ hash_release (transit_hash, t);
-+ transit_free (t);
-+ *transit = NULL;
- }
- }
-
-@@ -820,11 +825,11 @@ bgp_attr_unintern_sub (struct attr *attr)
- UNSET_FLAG(attr->flag, ATTR_FLAG_BIT (BGP_ATTR_LARGE_COMMUNITIES));
-
- if (attr->extra->cluster)
-- cluster_unintern (attr->extra->cluster);
-+ cluster_unintern (&attr->extra->cluster);
- UNSET_FLAG(attr->flag, ATTR_FLAG_BIT (BGP_ATTR_CLUSTER_LIST));
-
- if (attr->extra->transit)
-- transit_unintern (attr->extra->transit);
-+ transit_unintern (&attr->extra->transit);
- }
- }
-
-diff --git a/bgpd/bgp_attr.h b/bgpd/bgp_attr.h
-index 9ff074b2..052acc7d 100644
---- a/bgpd/bgp_attr.h
-+++ b/bgpd/bgp_attr.h
-@@ -187,10 +187,10 @@ extern unsigned long int attr_unknown_count (void);
-
- /* Cluster list prototypes. */
- extern int cluster_loop_check (struct cluster_list *, struct in_addr);
--extern void cluster_unintern (struct cluster_list *);
-+extern void cluster_unintern (struct cluster_list **);
-
- /* Transit attribute prototypes. */
--void transit_unintern (struct transit *);
-+void transit_unintern (struct transit **);
-
- /* Below exported for unit-test purposes only */
- struct bgp_attr_parser_args {
---
-2.11.0
-
diff --git a/package/quagga/0007-bgpd-security-debug-print-of-received-NOTIFY-data-ca.patch b/package/quagga/0007-bgpd-security-debug-print-of-received-NOTIFY-data-ca.patch
deleted file mode 100644
index aeb50ae559..0000000000
--- a/package/quagga/0007-bgpd-security-debug-print-of-received-NOTIFY-data-ca.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-From 9e5251151894aefdf8e9392a2371615222119ad8 Mon Sep 17 00:00:00 2001
-From: Paul Jakma <paul@jakma.org>
-Date: Sat, 6 Jan 2018 22:31:52 +0000
-Subject: [PATCH] bgpd/security: debug print of received NOTIFY data can
- over-read msg array
-
-Security issue: Quagga-2018-1550
-See: https://www.quagga.net/security/Quagga-2018-1550.txt
-
-* bgpd/bgp_debug.c: (struct message) Nearly every one of the NOTIFY
- code/subcode message arrays has their corresponding size variables off
- by one, as most have 1 as first index.
-
- This means (bgp_notify_print) can cause mes_lookup to overread the (struct
- message) by 1 pointer value if given an unknown index.
-
- Fix the bgp_notify_..._msg_max variables to use the compiler to calculate
- the correct sizes.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- bgpd/bgp_debug.c | 21 ++++++++++++---------
- 1 file changed, 12 insertions(+), 9 deletions(-)
-
-diff --git a/bgpd/bgp_debug.c b/bgpd/bgp_debug.c
-index ba797228..43faee7c 100644
---- a/bgpd/bgp_debug.c
-+++ b/bgpd/bgp_debug.c
-@@ -29,6 +29,7 @@ Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
- #include "log.h"
- #include "sockunion.h"
- #include "filter.h"
-+#include "memory.h"
-
- #include "bgpd/bgpd.h"
- #include "bgpd/bgp_aspath.h"
-@@ -73,7 +74,8 @@ const struct message bgp_status_msg[] =
- { Clearing, "Clearing" },
- { Deleted, "Deleted" },
- };
--const int bgp_status_msg_max = BGP_STATUS_MAX;
-+#define BGP_DEBUG_MSG_MAX(msg) const int msg ## _max = array_size (msg)
-+BGP_DEBUG_MSG_MAX (bgp_status_msg);
-
- /* BGP message type string. */
- const char *bgp_type_str[] =
-@@ -84,7 +86,8 @@ const char *bgp_type_str[] =
- "NOTIFICATION",
- "KEEPALIVE",
- "ROUTE-REFRESH",
-- "CAPABILITY"
-+ "CAPABILITY",
-+ NULL,
- };
-
- /* message for BGP-4 Notify */
-@@ -98,15 +101,15 @@ static const struct message bgp_notify_msg[] =
- { BGP_NOTIFY_CEASE, "Cease"},
- { BGP_NOTIFY_CAPABILITY_ERR, "CAPABILITY Message Error"},
- };
--static const int bgp_notify_msg_max = BGP_NOTIFY_MAX;
-+BGP_DEBUG_MSG_MAX (bgp_notify_msg);
-
- static const struct message bgp_notify_head_msg[] =
- {
- { BGP_NOTIFY_HEADER_NOT_SYNC, "/Connection Not Synchronized"},
- { BGP_NOTIFY_HEADER_BAD_MESLEN, "/Bad Message Length"},
-- { BGP_NOTIFY_HEADER_BAD_MESTYPE, "/Bad Message Type"}
-+ { BGP_NOTIFY_HEADER_BAD_MESTYPE, "/Bad Message Type"},
- };
--static const int bgp_notify_head_msg_max = BGP_NOTIFY_HEADER_MAX;
-+BGP_DEBUG_MSG_MAX (bgp_notify_head_msg);
-
- static const struct message bgp_notify_open_msg[] =
- {
-@@ -119,7 +122,7 @@ static const struct message bgp_notify_open_msg[] =
- { BGP_NOTIFY_OPEN_UNACEP_HOLDTIME, "/Unacceptable Hold Time"},
- { BGP_NOTIFY_OPEN_UNSUP_CAPBL, "/Unsupported Capability"},
- };
--static const int bgp_notify_open_msg_max = BGP_NOTIFY_OPEN_MAX;
-+BGP_DEBUG_MSG_MAX (bgp_notify_open_msg);
-
- static const struct message bgp_notify_update_msg[] =
- {
-@@ -136,7 +139,7 @@ static const struct message bgp_notify_update_msg[] =
- { BGP_NOTIFY_UPDATE_INVAL_NETWORK, "/Invalid Network Field"},
- { BGP_NOTIFY_UPDATE_MAL_AS_PATH, "/Malformed AS_PATH"},
- };
--static const int bgp_notify_update_msg_max = BGP_NOTIFY_UPDATE_MAX;
-+BGP_DEBUG_MSG_MAX (bgp_notify_update_msg);
-
- static const struct message bgp_notify_cease_msg[] =
- {
-@@ -150,7 +153,7 @@ static const struct message bgp_notify_cease_msg[] =
- { BGP_NOTIFY_CEASE_COLLISION_RESOLUTION, "/Connection collision resolution"},
- { BGP_NOTIFY_CEASE_OUT_OF_RESOURCE, "/Out of Resource"},
- };
--static const int bgp_notify_cease_msg_max = BGP_NOTIFY_CEASE_MAX;
-+BGP_DEBUG_MSG_MAX (bgp_notify_cease_msg);
-
- static const struct message bgp_notify_capability_msg[] =
- {
-@@ -159,7 +162,7 @@ static const struct message bgp_notify_capability_msg[] =
- { BGP_NOTIFY_CAPABILITY_INVALID_LENGTH, "/Invalid Capability Length"},
- { BGP_NOTIFY_CAPABILITY_MALFORMED_CODE, "/Malformed Capability Value"},
- };
--static const int bgp_notify_capability_msg_max = BGP_NOTIFY_CAPABILITY_MAX;
-+BGP_DEBUG_MSG_MAX (bgp_notify_capability_msg);
-
- /* Origin strings. */
- const char *bgp_origin_str[] = {"i","e","?"};
---
-2.11.0
-
diff --git a/package/quagga/0008-bgpd-security-fix-infinite-loop-on-certain-invalid-O.patch b/package/quagga/0008-bgpd-security-fix-infinite-loop-on-certain-invalid-O.patch
deleted file mode 100644
index 0a06da9330..0000000000
--- a/package/quagga/0008-bgpd-security-fix-infinite-loop-on-certain-invalid-O.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From ce07207c50a3d1f05d6dd49b5294282e59749787 Mon Sep 17 00:00:00 2001
-From: Paul Jakma <paul@jakma.org>
-Date: Sat, 6 Jan 2018 21:20:51 +0000
-Subject: [PATCH] bgpd/security: fix infinite loop on certain invalid OPEN
- messages
-
-Security issue: Quagga-2018-1975
-See: https://www.quagga.net/security/Quagga-2018-1975.txt
-
-* bgpd/bgp_packet.c: (bgp_capability_msg_parse) capability parser can infinite
- loop due to checks that issue 'continue' without bumping the input
- pointer.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- bgpd/bgp_packet.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/bgpd/bgp_packet.c b/bgpd/bgp_packet.c
-index b3d601fc..f9338d8d 100644
---- a/bgpd/bgp_packet.c
-+++ b/bgpd/bgp_packet.c
-@@ -2328,7 +2328,8 @@ bgp_capability_msg_parse (struct peer *peer, u_char *pnt, bgp_size_t length)
-
- end = pnt + length;
-
-- while (pnt < end)
-+ /* XXX: Streamify this */
-+ for (; pnt < end; pnt += hdr->length + 3)
- {
- /* We need at least action, capability code and capability length. */
- if (pnt + 3 > end)
-@@ -2416,7 +2417,6 @@ bgp_capability_msg_parse (struct peer *peer, u_char *pnt, bgp_size_t length)
- zlog_warn ("%s unrecognized capability code: %d - ignored",
- peer->host, hdr->code);
- }
-- pnt += hdr->length + 3;
- }
- return 0;
- }
---
-2.11.0
-
diff --git a/package/quagga/Config.in b/package/quagga/Config.in
index 98b9d3481e..9427475d03 100644
--- a/package/quagga/Config.in
+++ b/package/quagga/Config.in
@@ -38,6 +38,12 @@ config BR2_PACKAGE_QUAGGA_ISISD
help
Enable isisd support in quagga.
+config BR2_PACKAGE_QUAGGA_NHRPD
+ bool "NHRPD protocol"
+ select BR2_PACKAGE_C_ARES
+ help
+ Build Next Hop Routing Protocol daemon.
+
config BR2_PACKAGE_QUAGGA_OSPFD
bool "OSPFv2 protocol"
help
diff --git a/package/quagga/quagga.hash b/package/quagga/quagga.hash
index 6da37cf806..93fc42c8fc 100644
--- a/package/quagga/quagga.hash
+++ b/package/quagga/quagga.hash
@@ -1,2 +1,5 @@
# Locally calculated after checking pgp signature
-sha256 b5a94e5bdad3062e04595a5692b8cc435f0a85102f75dfdca0a06d093b4ef63f quagga-1.1.1.tar.gz
+sha256 ee2c0907a106902abbdcaf63b4f28c67241c4f3396989ed54da7b4976eecad31 quagga-1.2.3.tar.gz
+
+# Hash for license file
+sha256 b39c1bad4e51e2a3389cd25fc4addebe41a3ae7c11100795683f9330de1536e5 COPYING
diff --git a/package/quagga/quagga.mk b/package/quagga/quagga.mk
index 8c2b80631b..420d72c79d 100644
--- a/package/quagga/quagga.mk
+++ b/package/quagga/quagga.mk
@@ -4,7 +4,7 @@
#
################################################################################
-QUAGGA_VERSION = 1.1.1
+QUAGGA_VERSION = 1.2.3
QUAGGA_SITE = http://download.savannah.gnu.org/releases/quagga
QUAGGA_DEPENDENCIES = host-gawk host-pkgconf
QUAGGA_LICENSE = GPL-2.0+
@@ -18,9 +18,6 @@ QUAGGA_CONF_OPTS = \
--sysconfdir=/etc/quagga \
--localstatedir=/var/run/quagga
-# 0002-configure-fix-static-linking-with-readline.patch
-QUAGGA_AUTORECONF = YES
-
ifeq ($(BR2_PACKAGE_LIBCAP),y)
QUAGGA_CONF_OPTS += --enable-capabilities
QUAGGA_DEPENDENCIES += libcap
@@ -61,6 +58,13 @@ define QUAGGA_PERMISSIONS
/etc/quagga d 755 quagga quagga - - - - -
endef
+ifeq ($(BR2_PACKAGE_QUAGGA_NHRPD),y)
+QUAGGA_CONF_OPTS += --enable-nhrpd
+QUAGGA_DEPENDENCIES += c-ares
+else
+QUAGGA_CONF_OPTS += --disable-nhrpd
+endif
+
ifeq ($(BR2_PACKAGE_QUAGGA_SNMP),y)
QUAGGA_CONF_ENV += ac_cv_path_NETSNMP_CONFIG=$(STAGING_DIR)/usr/bin/net-snmp-config
QUAGGA_CONF_OPTS += --enable-snmp=agentx
diff --git a/package/sdl2/0001-Fixed-the-DirectFB-renderer-not-being-enabled-in-aut.patch b/package/sdl2/0001-Fixed-the-DirectFB-renderer-not-being-enabled-in-aut.patch
deleted file mode 100644
index 53926c03b5..0000000000
--- a/package/sdl2/0001-Fixed-the-DirectFB-renderer-not-being-enabled-in-aut.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From a0acea5bcce3f47badbfeeab7bc2e36eba08fd84 Mon Sep 17 00:00:00 2001
-From: Sam Lantinga <slouken@libsdl.org>
-Date: Mon, 27 Aug 2018 11:51:05 -0700
-Subject: [PATCH] Fixed the DirectFB renderer not being enabled in autoconf
- builds
-
-Upstream-url: https://hg.libsdl.org/SDL/raw-rev/751cdc74d55c
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- configure | 3 +++
- configure.in | 1 +
- 2 files changed, 4 insertions(+)
-
-diff --git a/configure b/configure
-index e88b38001..40ac14d21 100755
---- a/configure
-+++ b/configure
-@@ -21501,6 +21501,9 @@ fi
-
- $as_echo "#define SDL_VIDEO_DRIVER_DIRECTFB 1" >>confdefs.h
-
-+
-+$as_echo "#define SDL_VIDEO_RENDER_DIRECTFB 1" >>confdefs.h
-+
- SOURCES="$SOURCES $srcdir/src/video/directfb/*.c"
- EXTRA_CFLAGS="$EXTRA_CFLAGS $DIRECTFB_CFLAGS"
-
-diff --git a/configure.in b/configure.in
-index 5bf5d717b..ce1d57ea1 100644
---- a/configure.in
-+++ b/configure.in
-@@ -2163,6 +2163,7 @@ AC_HELP_STRING([--enable-directfb-shared], [dynamically load directfb support [[
- , enable_directfb_shared=yes)
-
- AC_DEFINE(SDL_VIDEO_DRIVER_DIRECTFB, 1, [ ])
-+ AC_DEFINE(SDL_VIDEO_RENDER_DIRECTFB, 1, [ ])
- SOURCES="$SOURCES $srcdir/src/video/directfb/*.c"
- EXTRA_CFLAGS="$EXTRA_CFLAGS $DIRECTFB_CFLAGS"
-
---
-2.11.0
-
diff --git a/package/sdl2/0001-fix-build-with-disable-threads.patch b/package/sdl2/0001-fix-build-with-disable-threads.patch
new file mode 100644
index 0000000000..81f7d7446f
--- /dev/null
+++ b/package/sdl2/0001-fix-build-with-disable-threads.patch
@@ -0,0 +1,63 @@
+From 26646028f79d7f3d857df9b46cd6d0285796c699 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Wed, 21 Nov 2018 22:31:09 +0100
+Subject: [PATCH] fix build with --disable-threads
+
+SDL_LinuxSetThreadPriority() has been added since version 2.0.9 and
+https://github.com/SDL-mirror/SDL/commit/f25a7fa870bdceb339e5105973f689606bcb9086
+
+However, this function is used in src/dynapi/SDL_dynapi_procs.h even
+when SDL_THREADS_DISABLED
+
+However, when SDL_THREADS_DISABLED is set, SDL_LinuxSetThreadPriority is
+not defined because thread/pthread/SDL_systhread.c is not built
+
+So check SDL_THREADS_DISABLED in addition to __LINUX__
+
+Fixes:
+ - http://autobuild.buildroot.org/results/539cb9ab6c605dc6be73ebe90debab1a998f2451
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+---
+ include/SDL_system.h | 4 ++--
+ src/dynapi/SDL_dynapi_procs.h | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/include/SDL_system.h b/include/SDL_system.h
+index 4dc372d6b..0513d7fa5 100644
+--- a/include/SDL_system.h
++++ b/include/SDL_system.h
+@@ -77,7 +77,7 @@ extern DECLSPEC SDL_bool SDLCALL SDL_DXGIGetOutputInfo( int displayIndex, int *a
+
+
+ /* Platform specific functions for Linux */
+-#ifdef __LINUX__
++#if defined(__LINUX__) && !defined(SDL_THREADS_DISABLED)
+
+ /**
+ \brief Sets the UNIX nice value for a thread, using setpriority() if possible, and RealtimeKit if available.
+@@ -86,7 +86,7 @@ extern DECLSPEC SDL_bool SDLCALL SDL_DXGIGetOutputInfo( int displayIndex, int *a
+ */
+ extern DECLSPEC int SDLCALL SDL_LinuxSetThreadPriority(Sint64 threadID, int priority);
+
+-#endif /* __LINUX__ */
++#endif /* defined(__LINUX__) && !defined(SDL_THREADS_DISABLED) */
+
+ /* Platform specific functions for iOS */
+ #if defined(__IPHONEOS__) && __IPHONEOS__
+diff --git a/src/dynapi/SDL_dynapi_procs.h b/src/dynapi/SDL_dynapi_procs.h
+index c95cf708b..ee9bf60a6 100644
+--- a/src/dynapi/SDL_dynapi_procs.h
++++ b/src/dynapi/SDL_dynapi_procs.h
+@@ -708,7 +708,7 @@ SDL_DYNAPI_PROC(SDL_bool,SDL_IsAndroidTV,(void),(),return)
+ SDL_DYNAPI_PROC(double,SDL_log10,(double a),(a),return)
+ SDL_DYNAPI_PROC(float,SDL_log10f,(float a),(a),return)
+ SDL_DYNAPI_PROC(char*,SDL_GameControllerMappingForDeviceIndex,(int a),(a),return)
+-#ifdef __LINUX__
++#if defined(__LINUX__) && !defined(SDL_THREADS_DISABLED)
+ SDL_DYNAPI_PROC(int,SDL_LinuxSetThreadPriority,(Sint64 a, int b),(a,b),return)
+ #endif
+ SDL_DYNAPI_PROC(SDL_bool,SDL_HasAVX512F,(void),(),return)
+--
+2.17.1
+
diff --git a/package/sdl2/sdl2.hash b/package/sdl2/sdl2.hash
index 997b4a5d4f..0668883f06 100644
--- a/package/sdl2/sdl2.hash
+++ b/package/sdl2/sdl2.hash
@@ -1,4 +1,4 @@
-# Locally calculated after checking http://www.libsdl.org/release/SDL2-2.0.8.tar.gz.sig
-sha256 edc77c57308661d576e843344d8638e025a7818bff73f8fbfab09c3c5fd092ec SDL2-2.0.8.tar.gz
+# Locally calculated after checking http://www.libsdl.org/release/SDL2-2.0.9.tar.gz.sig
+sha256 255186dc676ecd0c1dbf10ec8a2cc5d6869b5079d8a38194c2aecdff54b324b1 SDL2-2.0.9.tar.gz
# Locally calculated
sha256 61e627031e1160bf8b9bdbc9cda27656d422ea8eaab199b64b4a4a4168437154 COPYING.txt
diff --git a/package/sdl2/sdl2.mk b/package/sdl2/sdl2.mk
index bd71485f18..d2fba9d810 100644
--- a/package/sdl2/sdl2.mk
+++ b/package/sdl2/sdl2.mk
@@ -4,7 +4,7 @@
#
################################################################################
-SDL2_VERSION = 2.0.8
+SDL2_VERSION = 2.0.9
SDL2_SOURCE = SDL2-$(SDL2_VERSION).tar.gz
SDL2_SITE = http://www.libsdl.org/release
SDL2_LICENSE = Zlib
diff --git a/package/setools/0003-setup.py-drop-path-prefix-from-man-install.patch b/package/setools/0003-setup.py-drop-path-prefix-from-man-install.patch
new file mode 100644
index 0000000000..63344506b2
--- /dev/null
+++ b/package/setools/0003-setup.py-drop-path-prefix-from-man-install.patch
@@ -0,0 +1,42 @@
+From bc36cba1393120e65bfe4d0f642fd8d38010c0f7 Mon Sep 17 00:00:00 2001
+From: Matt Weber <matthew.weber@rockwellcollins.com>
+Date: Wed, 28 Nov 2018 20:49:00 -0600
+Subject: [PATCH] setup.py: drop path prefix from man install
+
+If the directory is a relative path, it is interpreted relative to the
+installation prefix (Python's sys.prefix for pure-Python packages,
+sys.exec_prefix for packages that contain extension modules).
+So the sys.prefix should not be joined because the correct one will be
+added regardless. The reason why a relative path is going to work is
+because the installation path is built internally joining python root
+with python prefix, thus forming the correct path $(TARGET_DIR)/usr.
+(https://docs.python.org/3/distutils/setupscript.html#installing-additional-files)
+
+For this man file install scenario, joining the sys.prefix makes the
+path absolute (this was previously working by accident).
+
+Upstream: https://github.com/SELinuxProject/setools/pull/13/commits/bc36cba1393120e65bfe4d0f642fd8d38010c0f7
+
+Cc: Angelo Compagnucci <angelo.compagnucci@gmail.com>
+Cc: Arnout Vandecappelle <arnout@mind.be>
+Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index 3767fbc..80e0400 100644
+--- a/setup.py
++++ b/setup.py
+@@ -136,7 +136,7 @@ setup(name='setools',
+ cmdclass={'build_qhc': QtHelpCommand, 'clean': CleanCommand},
+ packages=['setools', 'setools.diff', 'setoolsgui', 'setoolsgui.apol'],
+ scripts=['apol', 'sediff', 'seinfo', 'seinfoflow', 'sesearch', 'sedta'],
+- data_files=[(join(sys.prefix, 'share/man/man1'), glob.glob("man/*.1"))],
++ data_files=[('share/man/man1', glob.glob("man/*.1"))],
+ package_data={'': ['*.ui', '*.qhc', '*.qch'], 'setools': ['perm_map']},
+ ext_modules=cythonize(ext_py_mods, include_path=['setools/policyrep'],
+ annotate=cython_annotate,
+--
+1.9.1
+
diff --git a/package/shadowsocks-libev/Config.in b/package/shadowsocks-libev/Config.in
index f58abdbcb1..fefb27bcc1 100644
--- a/package/shadowsocks-libev/Config.in
+++ b/package/shadowsocks-libev/Config.in
@@ -15,6 +15,18 @@ config BR2_PACKAGE_SHADOWSOCKS_LIBEV
https://github.com/shadowsocks/shadowsocks-libev
+config BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS
+ bool "connmarktos support in ss-server"
+ depends on BR2_PACKAGE_SHADOWSOCKS_LIBEV
+ select BR2_PACKAGE_LIBNETFILTER_CONNTRACK
+ help
+ Build ss-server with the connmark to TOS feature.
+
+ This feature requires advanced tc, iptables and conntrack
+ rules to perform QoS on the server side.
+
+ If unsure, don't enable this option
+
comment "shadowsocks-libev needs a toolchain w/ threads"
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on BR2_TOOLCHAIN_HAS_SYNC_8 || !BR2_ARCH_IS_64
diff --git a/package/shadowsocks-libev/shadowsocks-libev.hash b/package/shadowsocks-libev/shadowsocks-libev.hash
index fffe9fddf0..a7c0dc0710 100644
--- a/package/shadowsocks-libev/shadowsocks-libev.hash
+++ b/package/shadowsocks-libev/shadowsocks-libev.hash
@@ -1,5 +1,5 @@
# Locally computed
-sha256 5521cf623a07fd1e393528516a83acd2b66c5d4bb4535a52662806a6a060c606 shadowsocks-libev-3.2.0.tar.gz
+sha256 2befc27b1cc62af0450702343d17e347936f0d4e3d4b04ba9246c4f9b409b742 shadowsocks-libev-3.2.3.tar.gz
# License files, locally calculated
sha256 736883f97d44dbec288bb82819f18f4f86d02ae3192f6a9abefa00db76bace41 COPYING
diff --git a/package/shadowsocks-libev/shadowsocks-libev.mk b/package/shadowsocks-libev/shadowsocks-libev.mk
index caae2176b4..e8ca161477 100644
--- a/package/shadowsocks-libev/shadowsocks-libev.mk
+++ b/package/shadowsocks-libev/shadowsocks-libev.mk
@@ -4,7 +4,7 @@
#
################################################################################
-SHADOWSOCKS_LIBEV_VERSION = 3.2.0
+SHADOWSOCKS_LIBEV_VERSION = 3.2.3
SHADOWSOCKS_LIBEV_SITE = https://github.com/shadowsocks/shadowsocks-libev/releases/download/v$(SHADOWSOCKS_LIBEV_VERSION)
SHADOWSOCKS_LIBEV_LICENSE = GPL-3.0+, BSD-2-Clause (libbloom), BSD-3-Clause (libcork, libipset)
SHADOWSOCKS_LIBEV_LICENSE_FILES = COPYING libbloom/LICENSE libcork/COPYING
@@ -14,4 +14,11 @@ SHADOWSOCKS_LIBEV_CONF_OPTS = \
--with-pcre=$(STAGING_DIR)/usr \
--disable-ssp
+ifeq ($(BR2_PACKAGE_SHADOWSOCKS_LIBEV_CONNMARKTOS),y)
+SHADOWSOCKS_LIBEV_DEPENDENCIES += libnetfilter_conntrack
+SHADOWSOCKS_LIBEV_CONF_OPTS += --enable-connmarktos
+else
+SHADOWSOCKS_LIBEV_CONF_OPTS += --disable-connmarktos
+endif
+
$(eval $(autotools-package))
diff --git a/package/squid/Config.in b/package/squid/Config.in
index 50f65de433..726160b01d 100644
--- a/package/squid/Config.in
+++ b/package/squid/Config.in
@@ -1,10 +1,12 @@
comment "squid needs a toolchain w/ C++, gcc >= 4.8 not affected by bug 64735"
depends on BR2_USE_MMU
+ depends on BR2_TOOLCHAIN_HAS_ATOMIC
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 || \
!BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
config BR2_PACKAGE_SQUID
bool "squid"
+ depends on BR2_TOOLCHAIN_HAS_ATOMIC
depends on BR2_INSTALL_LIBSTDCPP
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::current_exception
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
diff --git a/package/squid/squid.mk b/package/squid/squid.mk
index d6f186d97b..5d5ec0c38d 100644
--- a/package/squid/squid.mk
+++ b/package/squid/squid.mk
@@ -39,13 +39,8 @@ SQUID_CONF_OPTS = \
--with-swapdir=/var/cache/squid/ \
--with-default-user=squid
-# Atomics in Squid use __sync built-ins on 4 and 8 bytes. However, the
-# configure script tests them using AC_TRY_RUN, so we have to give
-# some hints.
-ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_4)$(BR2_TOOLCHAIN_HAS_SYNC_8),yy)
-SQUID_CONF_ENV += squid_cv_gnu_atomics=yes
-else
-SQUID_CONF_ENV += squid_cv_gnu_atomics=no
+ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
+SQUID_CONF_ENV += LIBS=-latomic
endif
ifeq ($(BR2_PACKAGE_LIBKRB5),y)
diff --git a/package/strace/strace.hash b/package/strace/strace.hash
index c6450b1c51..f7d652faaa 100644
--- a/package/strace/strace.hash
+++ b/package/strace/strace.hash
@@ -1,4 +1,4 @@
# Locally calculated after checking signature with RSA key 0xA8041FA839E16E36
-# https://strace.io/files/4.23/strace-4.23.tar.xz
-sha256 7860a6965f1dd832747bd8281a04738274398d32c56e9fbd0a68b1bb9ec09aad strace-4.23.tar.xz
+# https://strace.io/files/4.25/strace-4.25.tar.xz.asc
+sha256 d685f8e65470b7832c3aff60c57ab4459f26ff89f07c10f92bd70ee89efac701 strace-4.25.tar.xz
sha256 df862ba273812c589fd69acc74197a25d38c5295baccab00a62d39d1894c0253 COPYING
diff --git a/package/strace/strace.mk b/package/strace/strace.mk
index 471dbc2e1d..fe7acff1e0 100644
--- a/package/strace/strace.mk
+++ b/package/strace/strace.mk
@@ -4,7 +4,7 @@
#
################################################################################
-STRACE_VERSION = 4.23
+STRACE_VERSION = 4.25
STRACE_SOURCE = strace-$(STRACE_VERSION).tar.xz
STRACE_SITE = https://strace.io/files/$(STRACE_VERSION)
STRACE_LICENSE = BSD-3-Clause
@@ -34,10 +34,12 @@ else
STRACE_CONF_OPTS += --without-libiberty
endif
+ifeq ($(BR2_PACKAGE_PERL),)
define STRACE_REMOVE_STRACE_GRAPH
rm -f $(TARGET_DIR)/usr/bin/strace-graph
endef
STRACE_POST_INSTALL_TARGET_HOOKS += STRACE_REMOVE_STRACE_GRAPH
+endif
$(eval $(autotools-package))
diff --git a/package/stress-ng/Config.in b/package/stress-ng/Config.in
index 8816322149..fe92a7eb40 100644
--- a/package/stress-ng/Config.in
+++ b/package/stress-ng/Config.in
@@ -2,8 +2,7 @@ config BR2_PACKAGE_STRESS_NG
bool "stress-ng"
depends on BR2_USE_MMU # fork()
# disabled on musl: stress-malloc.c needs mallopt() and M_MMAP_THRESHOLD
- # disabled on uClibc: stress-aio.c needs aio.h
- depends on BR2_TOOLCHAIN_USES_GLIBC
+ depends on !BR2_TOOLCHAIN_USES_MUSL
# perf.c needs PERF_COUNT_HW_REF_CPU_CYCLES
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3
depends on !BR2_microblaze # keyutils
@@ -21,8 +20,8 @@ config BR2_PACKAGE_STRESS_NG
http://kernel.ubuntu.com/~cking/stress-ng/
-comment "stress-ng needs a glibc toolchain w/ dynamic library, headers >= 3.3"
+comment "stress-ng needs a glibc or uClibc toolchain w/ dynamic library, headers >= 3.3"
depends on !BR2_microblaze && !BR2_nios2 && !BR2_arc
depends on BR2_USE_MMU
depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 \
- || !BR2_TOOLCHAIN_USES_GLIBC
+ || BR2_TOOLCHAIN_USES_MUSL
diff --git a/package/stress-ng/stress-ng.hash b/package/stress-ng/stress-ng.hash
index e0185fad15..c7c6ec0fe8 100644
--- a/package/stress-ng/stress-ng.hash
+++ b/package/stress-ng/stress-ng.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 485f6e7384614fd96955bea4d1f79cd75f8be7e8da30cb3a7e8724ff7b75cd9c stress-ng-0.09.39.tar.xz
+sha256 ed888f5192297855f3ce39b4591b1decc9c580c9753f2cc9c86449f50d23aeb0 stress-ng-0.09.47.tar.xz
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
diff --git a/package/stress-ng/stress-ng.mk b/package/stress-ng/stress-ng.mk
index 26e100f454..187d276b24 100644
--- a/package/stress-ng/stress-ng.mk
+++ b/package/stress-ng/stress-ng.mk
@@ -4,7 +4,7 @@
#
################################################################################
-STRESS_NG_VERSION = 0.09.39
+STRESS_NG_VERSION = 0.09.47
STRESS_NG_SOURCE = stress-ng-$(STRESS_NG_VERSION).tar.xz
STRESS_NG_SITE = http://kernel.ubuntu.com/~cking/tarballs/stress-ng
STRESS_NG_LICENSE = GPL-2.0+
diff --git a/package/tpm2-abrmd/Config.in b/package/tpm2-abrmd/Config.in
index 0cac754b3c..d18f736182 100644
--- a/package/tpm2-abrmd/Config.in
+++ b/package/tpm2-abrmd/Config.in
@@ -1,10 +1,9 @@
config BR2_PACKAGE_TPM2_ABRMD
bool "tpm2-abrmd"
- depends on BR2_INSTALL_LIBSTDCPP # tpm2-tss
depends on BR2_USE_WCHAR # libglib2
depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, libglib2
depends on BR2_USE_MMU # dbus, libglib2
- depends on !BR2_TOOLCHAIN_USES_MUSL # TEMP_FAILURE_RETRY(), etc
+ depends on !BR2_STATIC_LIBS # tpm2-tss
select BR2_PACKAGE_DBUS
select BR2_PACKAGE_LIBGLIB2
select BR2_PACKAGE_TPM2_TSS
@@ -22,7 +21,7 @@ config BR2_PACKAGE_TPM2_ABRMD
https://github.com/tpm2-software/tpm2-abrmd
-comment "tpm2-abrmd needs a uClibc or glibc toolchain w/ C++, wchar, threads"
+comment "tpm2-abrmd needs a toolchain w/ dynamic library, wchar, threads"
depends on BR2_USE_MMU
- depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \
- || !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
+ depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
+ BR2_STATIC_LIBS
diff --git a/package/tpm2-abrmd/S80tpm2-abrmd b/package/tpm2-abrmd/S80tpm2-abrmd
index d54c220c04..cfa9d44771 100755
--- a/package/tpm2-abrmd/S80tpm2-abrmd
+++ b/package/tpm2-abrmd/S80tpm2-abrmd
@@ -49,7 +49,7 @@ stop() {
check_required_files /etc/dbus-1/system.d/tpm2-abrmd.conf
# defaults
-DAEMON_OPTS="--tcti=device --logger=syslog --max-connections=20 --max-transient-objects=20 --fail-on-loaded-trans"
+DAEMON_OPTS="--tcti=device --logger=syslog --max-connections=20"
# Read configuration variable file if it is present
[ -r /etc/default/tpm2-abrmd ] && . /etc/default/tpm2-abrmd
diff --git a/package/tpm2-abrmd/tpm2-abrmd.hash b/package/tpm2-abrmd/tpm2-abrmd.hash
index 6af991d469..61a75c0d1b 100644
--- a/package/tpm2-abrmd/tpm2-abrmd.hash
+++ b/package/tpm2-abrmd/tpm2-abrmd.hash
@@ -1,3 +1,3 @@
# Locally computed:
-sha256 e32e19de93b539374a485d9df7fe9415ce147ec03c8d9ba6593e50f7a67a7a51 tpm2-abrmd-1.3.0.tar.gz
+sha256 ff0ed283b0300cd784d6bf2b042e167020f8443602974e53b924e9fd98a4b515 tpm2-abrmd-2.0.3.tar.gz
sha256 18c1bf4b1ba1fb2c4ffa7398c234d83c0d55475298e470ae1e5e3a8a8bd2e448 LICENSE
diff --git a/package/tpm2-abrmd/tpm2-abrmd.mk b/package/tpm2-abrmd/tpm2-abrmd.mk
index b918ceaa4b..a4d9cfb384 100644
--- a/package/tpm2-abrmd/tpm2-abrmd.mk
+++ b/package/tpm2-abrmd/tpm2-abrmd.mk
@@ -4,7 +4,7 @@
#
################################################################################
-TPM2_ABRMD_VERSION = 1.3.0
+TPM2_ABRMD_VERSION = 2.0.3
TPM2_ABRMD_SITE = https://github.com/tpm2-software/tpm2-abrmd/releases/download/$(TPM2_ABRMD_VERSION)
TPM2_ABRMD_LICENSE = BSD-2-Clause
TPM2_ABRMD_LICENSE_FILES = LICENSE
diff --git a/package/tpm2-tools/0001-Fix-build-with-LibreSSL.patch b/package/tpm2-tools/0001-Fix-build-with-LibreSSL.patch
deleted file mode 100644
index 0fdd2dc4dd..0000000000
--- a/package/tpm2-tools/0001-Fix-build-with-LibreSSL.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 7f8d9359dcf9edbb13bb447f70234397afa4fb05 Mon Sep 17 00:00:00 2001
-From: Carlos Santos <casantos@datacom.ind.br>
-Date: Tue, 30 Jan 2018 11:21:14 -0200
-Subject: [PATCH] Fix build with LibreSSL
-
-OPENSSL_VERSION_NUMBER is used to test the version of OpenSSL but this
-test alone breaks the build with LibreSSL due to implicit declarations
-of functions 'RSA_set0_key' and 'HMAC_CTX_free'.
-
-Test if OpenSSL < 1.1.0 or LIBRESSL_VERSION_NUMBER is defined, instead.
-
-Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
----
- lib/conversion.c | 2 +-
- lib/tpm_kdfa.c | 6 +++---
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/lib/conversion.c b/lib/conversion.c
-index 1d0a0b7..df02de4 100644
---- a/lib/conversion.c
-+++ b/lib/conversion.c
-@@ -133,7 +133,7 @@ static bool tpm2_convert_pubkey_ssl(TPMT_PUBLIC *public, pubkey_format format, c
- goto error;
- }
-
--#if OPENSSL_VERSION_NUMBER < 0x1010000fL /* OpenSSL 1.1.0 */
-+#if OPENSSL_VERSION_NUMBER < 0x1010000fL || defined(LIBRESSL_VERSION_NUMBER) /* OpenSSL 1.1.0 */
- ssl_rsa_key->e = e;
- ssl_rsa_key->n = n;
- #else
-diff --git a/lib/tpm_kdfa.c b/lib/tpm_kdfa.c
-index ee3cf8a..e43bdeb 100644
---- a/lib/tpm_kdfa.c
-+++ b/lib/tpm_kdfa.c
-@@ -54,7 +54,7 @@ static const EVP_MD *tpm_algorithm_to_openssl_digest(TPMI_ALG_HASH algorithm) {
- static HMAC_CTX *hmac_alloc()
- {
- HMAC_CTX *ctx;
--#if OPENSSL_VERSION_NUMBER < 0x1010000fL /* OpenSSL 1.1.0 */
-+#if OPENSSL_VERSION_NUMBER < 0x1010000fL || defined(LIBRESSL_VERSION_NUMBER) /* OpenSSL 1.1.0 */
- ctx = malloc(sizeof(*ctx));
- #else
- ctx = HMAC_CTX_new();
-@@ -62,7 +62,7 @@ static HMAC_CTX *hmac_alloc()
- if (!ctx)
- return NULL;
-
--#if OPENSSL_VERSION_NUMBER < 0x1010000fL
-+#if OPENSSL_VERSION_NUMBER < 0x1010000fL || defined(LIBRESSL_VERSION_NUMBER)
- HMAC_CTX_init(ctx);
- #endif
-
-@@ -71,7 +71,7 @@ static HMAC_CTX *hmac_alloc()
-
- static void hmac_del(HMAC_CTX *ctx)
- {
--#if OPENSSL_VERSION_NUMBER < 0x1010000fL
-+#if OPENSSL_VERSION_NUMBER < 0x1010000fL || defined(LIBRESSL_VERSION_NUMBER)
- HMAC_CTX_cleanup(ctx);
- free(ctx);
- #else
---
-2.14.3
-
diff --git a/package/tpm2-tools/0001-tpm2_certify-fix-type-may-be-used-uninitialized-warn.patch b/package/tpm2-tools/0001-tpm2_certify-fix-type-may-be-used-uninitialized-warn.patch
index b472666f46..327f5e403b 100644
--- a/package/tpm2-tools/0001-tpm2_certify-fix-type-may-be-used-uninitialized-warn.patch
+++ b/package/tpm2-tools/0001-tpm2_certify-fix-type-may-be-used-uninitialized-warn.patch
@@ -1,4 +1,4 @@
-From e15b01a1eb27e31964308892fcaa9c7d4f17f181 Mon Sep 17 00:00:00 2001
+From 295cd8f7fb8e1a1ad8f64d981e99969a364d941e Mon Sep 17 00:00:00 2001
From: Carlos Santos <casantos@datacom.ind.br>
Date: Sat, 24 Mar 2018 22:46:46 -0300
Subject: [PATCH] tpm2_certify: fix "'type' may be used uninitialized" warning
@@ -10,7 +10,7 @@ because set_scheme returns immediately if get_key_type retuns false but
the compiler does not understand that logic and fails because warnings
are treated as errors.
-Adapted for version 3.0.3 from the change submitted upstream:
+Adapted for version 3.1.3 from the change submitted upstream:
https://github.com/tpm2-software/tpm2-tools/pull/954
@@ -20,17 +20,17 @@ Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
1 file changed, 1 insertion(+)
diff --git a/tools/tpm2_certify.c b/tools/tpm2_certify.c
-index eaac02f..cbc42a9 100644
+index 0575072..e562586 100644
--- a/tools/tpm2_certify.c
+++ b/tools/tpm2_certify.c
-@@ -107,6 +107,7 @@ static bool get_key_type(TSS2_SYS_CONTEXT *sapi_context, TPMI_DH_OBJECT object_h
+@@ -98,6 +98,7 @@ static bool get_key_type(TSS2_SYS_CONTEXT *sapi_context, TPMI_DH_OBJECT object_h
&out_public, &name, &qualified_name, &sessions_data_out));
- if (rval != TPM_RC_SUCCESS) {
+ if (rval != TPM2_RC_SUCCESS) {
LOG_ERR("TPM2_ReadPublic failed. Error Code: 0x%x", rval);
-+ *type = TPM_ALG_ERROR;
++ *type = TPM2_ALG_ERROR;
return false;
}
--
-2.14.3
+2.19.1
diff --git a/package/tpm2-tools/Config.in b/package/tpm2-tools/Config.in
index e5feb18786..cc87e2a1bf 100644
--- a/package/tpm2-tools/Config.in
+++ b/package/tpm2-tools/Config.in
@@ -1,10 +1,9 @@
config BR2_PACKAGE_TPM2_TOOLS
bool "tpm2-tools"
- depends on BR2_INSTALL_LIBSTDCPP # tpm2-tss
depends on BR2_USE_MMU # dbus, libglib
depends on BR2_USE_WCHAR # libglib -> gettext
depends on BR2_TOOLCHAIN_HAS_THREADS # libglib
- depends on !BR2_TOOLCHAIN_USES_MUSL # tpm2-abrmd
+ depends on !BR2_STATIC_LIBS # tpm2-tss
select BR2_PACKAGE_DBUS
select BR2_PACKAGE_LIBCURL
select BR2_PACKAGE_LIBGLIB2
@@ -20,7 +19,7 @@ config BR2_PACKAGE_TPM2_TOOLS
https://github.com/tpm2-software/tpm2-tools
-comment "tpm2-tools needs a uClibc or glibc toolchain w/ C++, wchar, threads"
+comment "tpm2-tools needs a toolchain w/ dynamic library, wchar, threads"
depends on BR2_USE_MMU
- depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \
- || !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
+ depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
+ BR2_STATIC_LIBS
diff --git a/package/tpm2-tools/tpm2-tools.hash b/package/tpm2-tools/tpm2-tools.hash
index e33b3e5945..ae228c591c 100644
--- a/package/tpm2-tools/tpm2-tools.hash
+++ b/package/tpm2-tools/tpm2-tools.hash
@@ -1,3 +1,3 @@
# Locally computed:
-sha256 c990c0656165afef0fad61e1852a9a189a4b93b43d2a684b151a5dc0b3c6249d tpm2-tools-3.0.3.tar.gz
+sha256 cc95576f49cf9bacf75772fd98dcb7edc5172a6a8dfa20c215fe3cc69b0a3a16 tpm2-tools-3.1.3.tar.gz
sha256 3d6b149c8b042bd5f3db678d587fbe55230d071ca084bd38dcae451679c6dd45 LICENSE
diff --git a/package/tpm2-tools/tpm2-tools.mk b/package/tpm2-tools/tpm2-tools.mk
index 13fdb163bb..9c224018ce 100644
--- a/package/tpm2-tools/tpm2-tools.mk
+++ b/package/tpm2-tools/tpm2-tools.mk
@@ -4,7 +4,7 @@
#
################################################################################
-TPM2_TOOLS_VERSION = 3.0.3
+TPM2_TOOLS_VERSION = 3.1.3
TPM2_TOOLS_SITE = https://github.com/tpm2-software/tpm2-tools/releases/download/$(TPM2_TOOLS_VERSION)
TPM2_TOOLS_LICENSE = BSD-2-Clause
TPM2_TOOLS_LICENSE_FILES = LICENSE
diff --git a/package/tpm2-tss/0001-tcti-tcti_socket.cpp-add-missing-inclusion-of-sys-se.patch b/package/tpm2-tss/0001-tcti-tcti_socket.cpp-add-missing-inclusion-of-sys-se.patch
deleted file mode 100644
index e8e0d842f2..0000000000
--- a/package/tpm2-tss/0001-tcti-tcti_socket.cpp-add-missing-inclusion-of-sys-se.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 2fdbf9f56bd6e7b00c695881a81c0df2f5088760 Mon Sep 17 00:00:00 2001
-From: Carlos Santos <casantos@datacom.ind.br>
-Date: Fri, 23 Mar 2018 09:15:44 -0300
-Subject: [PATCH] tcti/tcti_socket.cpp: add missing inclusion of sys/select.h
-
-Prevents compilation errors due to undeclared "fd_set" type.
-
-Fixes:
- http://autobuild.buildroot.net/results/09e8b3b85d7113d60e8967a2d41a6aea8f8197c0
- http://autobuild.buildroot.net/results/2e4c70f2f1239eb19235ae04a936a6492daf316d
- http://autobuild.buildroot.net/results/bbd68f52781da735e983b1260de5b804787374b1
-
-Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
----
- tcti/tcti_socket.cpp | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/tcti/tcti_socket.cpp b/tcti/tcti_socket.cpp
-index e8982f1..b6e5874 100644
---- a/tcti/tcti_socket.cpp
-+++ b/tcti/tcti_socket.cpp
-@@ -28,6 +28,8 @@
- #include <stdio.h>
- #include <stdlib.h> // Needed for _wtoi
-
-+#include <sys/select.h> // for fd_set
-+
- #include "sapi/tpm20.h"
- #include "tcti/tcti_socket.h"
- #include "sysapi_util.h"
---
-2.14.3
-
diff --git a/package/tpm2-tss/Config.in b/package/tpm2-tss/Config.in
index 7a757bd70a..2fb5b0f213 100644
--- a/package/tpm2-tss/Config.in
+++ b/package/tpm2-tss/Config.in
@@ -1,7 +1,9 @@
config BR2_PACKAGE_TPM2_TSS
bool "tpm2-tss"
- depends on BR2_INSTALL_LIBSTDCPP
+ depends on !BR2_STATIC_LIBS # dlfcn.h
select BR2_PACKAGE_LIBURIPARSER
+ select BR2_PACKAGE_OPENSSL
+ select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL
help
OSS implementation of the Trusted Computing Group's (TCG) TPM2
Software Stack (TSS). This stack consists of the following
@@ -31,5 +33,5 @@ config BR2_PACKAGE_TPM2_TSS
https://github.com/tpm2-software/tpm2-tss
-comment "tpm2-tss needs a toolchain w/ C++"
- depends on !BR2_INSTALL_LIBSTDCPP
+comment "tpm2-tss needs a toolchain w/ dynamic library"
+ depends on BR2_STATIC_LIBS
diff --git a/package/tpm2-tss/tpm2-tss.hash b/package/tpm2-tss/tpm2-tss.hash
index 67c5a85842..d6f65fa7de 100644
--- a/package/tpm2-tss/tpm2-tss.hash
+++ b/package/tpm2-tss/tpm2-tss.hash
@@ -1,3 +1,3 @@
# Locally computed:
-sha256 cf8784cc536be16e6fba47f77033e093a6aeaed8420877ac9f42f77fb7b09031 tpm2-tss-1.4.0.tar.gz
-sha256 18c1bf4b1ba1fb2c4ffa7398c234d83c0d55475298e470ae1e5e3a8a8bd2e448 LICENSE
+sha256 a50b8dbd51f0c274cf874351786ed252c5024c952bf699fbd595ac292a27ab19 tpm2-tss-2.1.0.tar.gz
+sha256 f7da3c2da12cec3348bb7ee9e2a9e651a241450b2efb67da29d5a75ef2da058a LICENSE
diff --git a/package/tpm2-tss/tpm2-tss.mk b/package/tpm2-tss/tpm2-tss.mk
index dcc1e5d74d..f005e5d6b8 100644
--- a/package/tpm2-tss/tpm2-tss.mk
+++ b/package/tpm2-tss/tpm2-tss.mk
@@ -4,12 +4,13 @@
#
################################################################################
-TPM2_TSS_VERSION = 1.4.0
+TPM2_TSS_VERSION = 2.1.0
TPM2_TSS_SITE = https://github.com/tpm2-software/tpm2-tss/releases/download/$(TPM2_TSS_VERSION)
TPM2_TSS_LICENSE = BSD-2-Clause
TPM2_TSS_LICENSE_FILES = LICENSE
TPM2_TSS_INSTALL_STAGING = YES
-TPM2_TSS_DEPENDENCIES = liburiparser host-pkgconf
+TPM2_TSS_DEPENDENCIES = liburiparser openssl host-pkgconf
+TPM2_TSS_CONF_OPTS = --with-crypto=ossl --disable-doxygen-doc
# configure.ac doesn't contain a link test, so it doesn't detect when
# libssp is missing.
diff --git a/package/trace-cmd/trace-cmd.hash b/package/trace-cmd/trace-cmd.hash
index 5bf4154bd0..c6447f34d4 100644
--- a/package/trace-cmd/trace-cmd.hash
+++ b/package/trace-cmd/trace-cmd.hash
@@ -1,2 +1,4 @@
# Locally computed
-sha256 f088534808274f6233fe15130791238fb14ce9bf6e7234f9b3fe6b5a42a1245d trace-cmd-trace-cmd-v2.6.1.tar.gz
+sha256 3b3f564cc6ee30341051ccb7589b42f3abe4e676a21c029c7c127c7edf5bdcf0 trace-cmd-trace-cmd-v2.7.tar.gz
+sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING
+sha256 70f297763149e72306919c924e164f83041d5e512868d4c8c1826c171b3e49f9 COPYING.LIB
diff --git a/package/trace-cmd/trace-cmd.mk b/package/trace-cmd/trace-cmd.mk
index 578e9f124f..dfca6a170d 100644
--- a/package/trace-cmd/trace-cmd.mk
+++ b/package/trace-cmd/trace-cmd.mk
@@ -4,7 +4,7 @@
#
################################################################################
-TRACE_CMD_VERSION = trace-cmd-v2.6.1
+TRACE_CMD_VERSION = trace-cmd-v2.7
TRACE_CMD_SITE = https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git
TRACE_CMD_SITE_METHOD = git
TRACE_CMD_INSTALL_STAGING = YES
diff --git a/package/trinity/0004-Check-if-VIDIOC_RESERVED-is-defined.patch b/package/trinity/0004-Check-if-VIDIOC_RESERVED-is-defined.patch
new file mode 100644
index 0000000000..54f8bea63c
--- /dev/null
+++ b/package/trinity/0004-Check-if-VIDIOC_RESERVED-is-defined.patch
@@ -0,0 +1,56 @@
+From a5f32b9714613404e9f4699aaaad720f2bb033b4 Mon Sep 17 00:00:00 2001
+From: Vinson Lee <vlee@freedesktop.org>
+Date: Thu, 23 Aug 2018 22:28:49 +0000
+Subject: [PATCH] Check if VIDIOC_RESERVED is defined.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+VIDIOC_RESERVED was removed in Linux 4.19.
+
+commit ea8532daee31bc72abfbc9ca7a43cbec0f6c05af
+Author: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Date: Wed May 30 11:07:05 2018 -0400
+
+ media: videodev2: get rid of VIDIOC_RESERVED
+
+ While this ioctl is there at least since Kernel 2.6.12-rc2, it
+ was never used by any upstream driver.
+
+ Get rid of it.
+
+ Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+
+This patch fixes this build error.
+
+ CC ioctls/videodev2.o
+In file included from ioctls/videodev2.c:4:
+ioctls/videodev2.c:8:8: error: ‘VIDIOC_RESERVED’ undeclared here (not in a function); did you mean ‘VIDIOC_G_STD’?
+ IOCTL(VIDIOC_RESERVED),
+ ^~~~~~~~~~~~~~~
+include/ioctls.h:53:15: note: in definition of macro ‘IOCTL’
+ { .request = _request, .name = #_request, }
+ ^~~~~~~~
+
+Signed-off-by: Vinson Lee <vlee@freedesktop.org>
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Retrieved from:
+https://github.com/kernelslacker/trinity/commit/a5f32b9714613404e9f4699aaaad720f2bb033b4]
+---
+ ioctls/videodev2.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/ioctls/videodev2.c b/ioctls/videodev2.c
+index f7183f29..67089abf 100644
+--- a/ioctls/videodev2.c
++++ b/ioctls/videodev2.c
+@@ -5,7 +5,9 @@
+
+ static const struct ioctl videodev2_ioctls[] = {
+ IOCTL(VIDIOC_QUERYCAP),
++#ifdef VIDIOC_RESERVED
+ IOCTL(VIDIOC_RESERVED),
++#endif
+ IOCTL(VIDIOC_ENUM_FMT),
+ IOCTL(VIDIOC_G_FMT),
+ IOCTL(VIDIOC_S_FMT),
diff --git a/package/tslib/tslib.hash b/package/tslib/tslib.hash
index c5fc836d64..a758702e74 100644
--- a/package/tslib/tslib.hash
+++ b/package/tslib/tslib.hash
@@ -1,5 +1,5 @@
-# https://github.com/kergoth/tslib/releases/download/1.17/tslib-1.17.tar.xz.sha256
-sha256 9fdd33e66976bf9cc799be33824ba66672f892826e9b22de12b14df15cb0fddc tslib-1.17.tar.xz
+# https://github.com/kergoth/tslib/releases/download/1.18/tslib-1.18.tar.xz.sha256
+sha256 986cce6d8ed896c0eba68d78acd788c7860ffe8a2165a9f631954e7f2889958b tslib-1.18.tar.xz
# Locally computed
sha256 9b872a8a070b8ad329c4bd380fb1bf0000f564c75023ec8e1e6803f15364b9e9 COPYING
diff --git a/package/tslib/tslib.mk b/package/tslib/tslib.mk
index bd5311b93b..f5c4cd7997 100644
--- a/package/tslib/tslib.mk
+++ b/package/tslib/tslib.mk
@@ -4,7 +4,7 @@
#
################################################################################
-TSLIB_VERSION = 1.17
+TSLIB_VERSION = 1.18
TSLIB_SITE = https://github.com/kergoth/tslib/releases/download/$(TSLIB_VERSION)
TSLIB_SOURCE = tslib-$(TSLIB_VERSION).tar.xz
TSLIB_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (libraries)
diff --git a/package/uclibc/0001-Revert-ldconfig-add-glibc-compatibility-fix.patch b/package/uclibc/0001-Revert-ldconfig-add-glibc-compatibility-fix.patch
deleted file mode 100644
index 7ba3b2866d..0000000000
--- a/package/uclibc/0001-Revert-ldconfig-add-glibc-compatibility-fix.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 92d250d387e247029900c9074150f45866b29781 Mon Sep 17 00:00:00 2001
-From: Waldemar Brodkorb <wbx@openadk.org>
-Date: Sun, 29 Apr 2018 19:34:11 +0200
-Subject: [PATCH] Revert "ldconfig: add glibc compatibility fix"
-
-This reverts commit 2a3bb4daf5778c5875674cd26a3c75b3d460a042.
-
-This is breaking ld.so.cache usage. Seen on Gentoo/amd64.
-
-Reported-by: "Anthony G. Basile" <basile@freeharbor.net>
-Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
----
- utils/ldconfig.c | 11 ++++++-----
- 1 file changed, 6 insertions(+), 5 deletions(-)
-
-diff --git a/utils/ldconfig.c b/utils/ldconfig.c
-index 58939d6..e6b7881 100644
---- a/utils/ldconfig.c
-+++ b/utils/ldconfig.c
-@@ -184,9 +184,10 @@ static char *readsoname(char *name, FILE *infile, int expected_type,
- res = readsoname32(name, infile, expected_type, type);
- else {
- res = readsoname64(name, infile, expected_type, type);
--
-- // For 64-bit glibc compatibility
-- *type |= FLAG_X8664_LIB64;
-+#if 0
-+ /* relies on multilib support which we dont have ... */
-+ *type |= LIB_ELF64;
-+#endif
- }
-
- return res;
-@@ -757,7 +758,7 @@ void cache_print(void)
-
- for (fd = 0; fd < header->nlibs; fd++) {
- printf("\t%s ", strs + libent[fd].sooffset);
-- switch (libent[fd].flags & ~LIB_ELF64 & FLAG_TYPE_MASK) {
-+ switch (libent[fd].flags & ~LIB_ELF64) {
- case LIB_DLL:
- printf("(libc4)");
- break;
-@@ -770,7 +771,7 @@ void cache_print(void)
- case LIB_ELF_LIBC5:
- case LIB_ELF_LIBC6:
- printf("(libc%d%s)",
-- (libent[fd].flags & ~LIB_ELF64 & FLAG_TYPE_MASK) + 3,
-+ (libent[fd].flags & ~LIB_ELF64) + 3,
- libent[fd].flags & LIB_ELF64 ? "/64" : "");
- break;
- default:
---
-2.1.4
-
diff --git a/package/uclibc/0002-librt-declare-clock_nanosleep-independent-of-thread-.patch b/package/uclibc/0002-librt-declare-clock_nanosleep-independent-of-thread-.patch
deleted file mode 100644
index bb9ef18b4f..0000000000
--- a/package/uclibc/0002-librt-declare-clock_nanosleep-independent-of-thread-.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 368a1df04a32c3b95859b0ca588da8548a5f39ca Mon Sep 17 00:00:00 2001
-From: Waldemar Brodkorb <wbx@openadk.org>
-Date: Tue, 1 May 2018 19:35:20 +0200
-Subject: [PATCH] librt: declare clock_nanosleep independent of thread support
-
-Reported-by: Baruch Siach <baruch@tkos.co.il>
-Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
----
- include/time.h | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/include/time.h b/include/time.h
-index 785c8f6..1a14089 100644
---- a/include/time.h
-+++ b/include/time.h
-@@ -356,7 +356,6 @@ extern int clock_settime (clockid_t __clock_id, const struct timespec *__tp)
- # endif /* __UCLIBC_HAS_REALTIME__ */
-
- # if defined __USE_XOPEN2K && defined __UCLIBC_HAS_ADVANCED_REALTIME__
--# ifdef __UCLIBC_HAS_THREADS_NATIVE__
- /* High-resolution sleep with the specified clock.
-
- This function is a cancellation point and therefore not marked with
-@@ -367,7 +366,6 @@ extern int clock_nanosleep (clockid_t __clock_id, int __flags,
-
- /* Return clock ID for CPU-time clock. */
- extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) __THROW;
--# endif /* __UCLIBC_HAS_THREADS_NATIVE__ */
- # endif
-
- # if defined __UCLIBC_HAS_REALTIME__
---
-2.1.4
-
diff --git a/package/uclibc/0003-ldso-arc-fix-LD_DEBUG-segv-when-printing-R_ARC_NONE.patch b/package/uclibc/0003-ldso-arc-fix-LD_DEBUG-segv-when-printing-R_ARC_NONE.patch
deleted file mode 100644
index ad87698f53..0000000000
--- a/package/uclibc/0003-ldso-arc-fix-LD_DEBUG-segv-when-printing-R_ARC_NONE.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 269a2a2a0f863e1b43dc02f2f4f0f3c50299456e Mon Sep 17 00:00:00 2001
-From: Vineet Gupta <Vineet.Gupta1@synopsys.com>
-Date: Tue, 26 Jun 2018 18:26:24 -0700
-Subject: [PATCH] ldso/arc: fix LD_DEBUG segv when printing R_ARC_NONE
-
-Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
-Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
----
- ldso/ldso/arc/elfinterp.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/ldso/ldso/arc/elfinterp.c b/ldso/ldso/arc/elfinterp.c
-index 5a02bc234..a30c19bcb 100644
---- a/ldso/ldso/arc/elfinterp.c
-+++ b/ldso/ldso/arc/elfinterp.c
-@@ -64,7 +64,7 @@ _dl_linux_resolver(struct elf_resolve *tpnt, unsigned int plt_pc)
- if (_dl_debug_bindings) {
- _dl_dprintf(_dl_debug_file, "\nresolve function: %s", symname);
- if (_dl_debug_detail)
-- _dl_dprintf(_dl_debug_file, "\n\tpatched %x ==> %pc @ %pl\n",
-+ _dl_dprintf(_dl_debug_file, "\n\tpatched %x ==> %pc @ %p\n",
- *got_addr, new_addr, got_addr);
- }
-
-@@ -178,7 +178,7 @@ _dl_do_reloc(struct elf_resolve *tpnt, struct r_scope_elem *scope,
-
- log_entry:
- #if defined __SUPPORT_LD_DEBUG__
-- if (_dl_debug_detail)
-+ if (_dl_debug_detail && (reloc_type != R_ARC_NONE))
- _dl_dprintf(_dl_debug_file,"\tpatched: %x ==> %x @ %x",
- old_val, *reloc_addr, reloc_addr);
- #endif
-@@ -214,7 +214,7 @@ _dl_do_lazy_reloc(struct elf_resolve *tpnt, struct r_scope_elem *scope,
- }
-
- #if defined __SUPPORT_LD_DEBUG__
-- if (_dl_debug_reloc && _dl_debug_detail)
-+ if (_dl_debug_reloc && _dl_debug_detail && (reloc_type != R_ARC_NONE))
- _dl_dprintf(_dl_debug_file, "\tpatched: %x ==> %x @ %x\n",
- old_val, *reloc_addr, reloc_addr);
- #endif
---
-2.16.2
-
diff --git a/package/uclibc/0004-mkostemp64-clear-flags-as-mkostemp-does.patch b/package/uclibc/0004-mkostemp64-clear-flags-as-mkostemp-does.patch
deleted file mode 100644
index f87abd8849..0000000000
--- a/package/uclibc/0004-mkostemp64-clear-flags-as-mkostemp-does.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 09a776103e4aa75f95c9ad44554a9c2b56de3535 Mon Sep 17 00:00:00 2001
-From: Carlos Santos <casantos@datacom.com.br>
-Date: Mon, 29 Oct 2018 01:17:38 -0300
-Subject: [PATCH] mkostemp64: clear flags, as mkostemp does
-
-This should have been made in commit 9649721950 but was forgotten.
-
-Signed-off-by: Carlos Santos <casantos@datacom.com.br>
----
- libc/stdlib/mkostemp64.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/libc/stdlib/mkostemp64.c b/libc/stdlib/mkostemp64.c
-index aa9736cd6..f4674bb0c 100644
---- a/libc/stdlib/mkostemp64.c
-+++ b/libc/stdlib/mkostemp64.c
-@@ -15,9 +15,9 @@
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
--#include <fcntl.h>
- #include <stdio.h>
- #include <stdlib.h>
-+#include <fcntl.h>
- #include "../misc/internals/tempname.h"
-
- /* Generate a unique temporary file name from TEMPLATE.
-@@ -27,6 +27,7 @@
- int
- mkostemp64 (char *template, int flags)
- {
-+ flags -= flags & O_ACCMODE; /* Remove O_RDONLY, O_WRONLY, and O_RDWR. */
- return __gen_tempname (template, __GT_BIGFILE, flags | O_LARGEFILE, 0,
- S_IRUSR | S_IWUSR);
- }
---
-2.14.5
-
diff --git a/package/uclibc/uclibc.hash b/package/uclibc/uclibc.hash
index 81936f3639..d1cbdb6c78 100644
--- a/package/uclibc/uclibc.hash
+++ b/package/uclibc/uclibc.hash
@@ -1,2 +1,4 @@
-# From https://uclibc-ng.org/
-sha256 992bd9a2889ea385902b87e3d3d30603741eb16728288fbf537ff2027f770496 uClibc-ng-1.0.30.tar.xz
+# From https://downloads.uclibc-ng.org/releases/1.0.31/uClibc-ng-1.0.31.tar.xz.sha256
+sha256 2215d7377118434d1697fd575f10d7a6be3f29e460d6b0e1ee9f6f5306288060 uClibc-ng-1.0.31.tar.xz
+# Locally calculated
+sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 COPYING.LIB
diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk
index 27e4d5873a..afc4872b65 100644
--- a/package/uclibc/uclibc.mk
+++ b/package/uclibc/uclibc.mk
@@ -4,9 +4,9 @@
#
################################################################################
-UCLIBC_VERSION = 1.0.30
+UCLIBC_VERSION = 1.0.31
UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz
-UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION)
+UCLIBC_SITE = https://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION)
UCLIBC_LICENSE = LGPL-2.1+
UCLIBC_LICENSE_FILES = COPYING.LIB
UCLIBC_INSTALL_STAGING = YES
diff --git a/package/util-linux/0001-rtcwake-use-poweroff-if-shutdown-is-not-found.patch b/package/util-linux/0001-rtcwake-use-poweroff-if-shutdown-is-not-found.patch
new file mode 100644
index 0000000000..b97be2ef07
--- /dev/null
+++ b/package/util-linux/0001-rtcwake-use-poweroff-if-shutdown-is-not-found.patch
@@ -0,0 +1,86 @@
+From e1686b25acdedb34cc357f08f0dd3ca01c559dfd Mon Sep 17 00:00:00 2001
+From: Justin Chen <justinpopo6@gmail.com>
+Date: Thu, 1 Nov 2018 11:10:38 -0700
+Subject: [PATCH] rtcwake: use poweroff if shutdown is not found
+
+Some systems do not have the shutdown command. Use poweroff as an
+alternative.
+
+Signed-off-by: Justin Chen <justinpopo6@gmail.com>
+---
+ include/pathnames.h | 1 +
+ sys-utils/rtcwake.c | 39 +++++++++++++++++++++++++++------------
+ 2 files changed, 28 insertions(+), 12 deletions(-)
+
+diff --git a/include/pathnames.h b/include/pathnames.h
+index 3d5052e6f..ed8ea330d 100644
+--- a/include/pathnames.h
++++ b/include/pathnames.h
+@@ -53,6 +53,7 @@
+ # define _PATH_LOGIN "/bin/login"
+ #endif
+ #define _PATH_SHUTDOWN "/sbin/shutdown"
++#define _PATH_POWEROFF "/sbin/poweroff"
+
+ #define _PATH_TERMCOLORS_DIRNAME "terminal-colors.d"
+ #define _PATH_TERMCOLORS_DIR "/etc/" _PATH_TERMCOLORS_DIRNAME
+diff --git a/sys-utils/rtcwake.c b/sys-utils/rtcwake.c
+index b63c64627..029f00f9b 100644
+--- a/sys-utils/rtcwake.c
++++ b/sys-utils/rtcwake.c
+@@ -28,6 +28,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <sys/ioctl.h>
++#include <sys/stat.h>
+ #include <sys/time.h>
+ #include <sys/types.h>
+ #include <termios.h>
+@@ -582,18 +583,32 @@ int main(int argc, char **argv)
+ char *arg[5];
+ int i = 0;
+
+- if (ctl.verbose)
+- printf(_("suspend mode: off; executing %s\n"),
+- _PATH_SHUTDOWN);
+- arg[i++] = _PATH_SHUTDOWN;
+- arg[i++] = "-h";
+- arg[i++] = "-P";
+- arg[i++] = "now";
+- arg[i] = NULL;
+- if (!ctl.dryrun) {
+- execv(arg[0], arg);
+- warn(_("failed to execute %s"), _PATH_SHUTDOWN);
+- rc = EXIT_FAILURE;
++ if (!access(_PATH_SHUTDOWN, X_OK)) {
++ arg[i++] = _PATH_SHUTDOWN;
++ arg[i++] = "-h";
++ arg[i++] = "-P";
++ arg[i++] = "now";
++ arg[i] = NULL;
++ } else if (!access(_PATH_POWEROFF, X_OK)) {
++ arg[i++] = _PATH_POWEROFF;
++ arg[i] = NULL;
++ } else {
++ arg[i] = NULL;
++ }
++
++ if (arg[0]) {
++ if (ctl.verbose)
++ printf(_("suspend mode: off; executing %s\n"),
++ arg[0]);
++ if (!ctl.dryrun) {
++ execv(arg[0], arg);
++ warn(_("failed to execute %s"), arg[0]);
++ rc = EX_EXEC_ENOENT;
++ }
++ } else {
++ /* Failed to find shutdown command */
++ warn(_("failed to find shutdown command"));
++ rc = EX_EXEC_ENOENT;
+ }
+ break;
+ }
+--
+2.17.1
+
diff --git a/package/util-linux/0002-agetty-fix-output-of-escaped-characters.patch b/package/util-linux/0002-agetty-fix-output-of-escaped-characters.patch
new file mode 100644
index 0000000000..fcd9731348
--- /dev/null
+++ b/package/util-linux/0002-agetty-fix-output-of-escaped-characters.patch
@@ -0,0 +1,26 @@
+From 73c5a3cc748b853936319e6cdc94159a6974db52 Mon Sep 17 00:00:00 2001
+From: Christian Hesse <mail@eworm.de>
+Date: Wed, 7 Nov 2018 13:55:06 +0100
+Subject: [PATCH] agetty: fix output of escaped characters
+
+Signed-off-by: Christian Hesse <mail@eworm.de>
+---
+ term-utils/agetty.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/term-utils/agetty.c b/term-utils/agetty.c
+index 05a269abb..b9f08728e 100644
+--- a/term-utils/agetty.c
++++ b/term-utils/agetty.c
+@@ -2755,7 +2755,7 @@ static void output_special_char(struct issue *ie,
+ break;
+ }
+ default:
+- putchar(c);
++ putc(c, ie->output);
+ break;
+ }
+ }
+--
+2.17.1
+
diff --git a/package/util-linux/0003-setarch-fix-obscure-sparc32bash-use-case.patch b/package/util-linux/0003-setarch-fix-obscure-sparc32bash-use-case.patch
new file mode 100644
index 0000000000..70588b863e
--- /dev/null
+++ b/package/util-linux/0003-setarch-fix-obscure-sparc32bash-use-case.patch
@@ -0,0 +1,84 @@
+From 3fa06e049012218d883d0e1251df86bafbc446bf Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Thu, 22 Nov 2018 11:03:35 +0100
+Subject: [PATCH] setarch: fix obscure sparc32bash use-case
+
+Reported-by: Carlos Santos <casantos@datacom.com.br>
+Signed-off-by: Karel Zak <kzak@redhat.com>
+Signed-off-by: Carlos Santos <casantos@datacom.com.br>
+---
+ sys-utils/setarch.c | 28 ++++++++++++++++++----------
+ 1 file changed, 18 insertions(+), 10 deletions(-)
+
+diff --git a/sys-utils/setarch.c b/sys-utils/setarch.c
+index a733f7b3c..7c0a63fbb 100644
+--- a/sys-utils/setarch.c
++++ b/sys-utils/setarch.c
+@@ -268,6 +268,7 @@ int main(int argc, char *argv[])
+ int c;
+ struct arch_domain *doms, *target;
+ unsigned long pers_value = 0;
++ char *shell = NULL, *shell_arg = NULL;
+
+ /* Options without equivalent short options */
+ enum {
+@@ -310,14 +311,14 @@ int main(int argc, char *argv[])
+ archwrapper = strcmp(program_invocation_short_name, "setarch") != 0;
+ if (archwrapper) {
+ arch = program_invocation_short_name; /* symlinks to setarch */
+-#if defined(__sparc64__) || defined(__sparc__)
++
++ /* Don't use ifdef sparc here, we get "Unrecognized architecture"
++ * error message later if necessary */
+ if (strcmp(arch, "sparc32bash") == 0) {
+- if (set_arch(arch, 0L, 0))
+- err(EXIT_FAILURE, _("Failed to set personality to %s"), arch);
+- execl("/bin/bash", "", NULL);
+- errexec("/bin/bash");
++ shell = "/bin/bash";
++ shell_arg = "";
++ goto set_arch;
+ }
+-#endif
+ } else {
+ if (1 < argc && *argv[1] != '-') {
+ arch = argv[1];
+@@ -391,6 +392,7 @@ int main(int argc, char *argv[])
+ argc -= optind;
+ argv += optind;
+
++set_arch:
+ /* get execution domain (architecture) */
+ if (arch) {
+ doms = init_arch_domains();
+@@ -422,17 +424,23 @@ int main(int argc, char *argv[])
+ if (arch)
+ verify_arch_domain(target, arch);
+
++ if (!argc) {
++ shell = "/bin/sh";
++ shell_arg = "-sh";
++ }
+ if (verbose) {
+- printf(_("Execute command `%s'.\n"), argc ? argv[0] : "/bin/sh");
++ printf(_("Execute command `%s'.\n"), shell ? shell : argv[0]);
+ /* flush all output streams before exec */
+ fflush(NULL);
+ }
+
+- if (!argc) {
+- execl("/bin/sh", "-sh", NULL);
+- errexec("/bin/sh");
++ /* Execute shell */
++ if (shell) {
++ execl(shell, shell_arg, NULL);
++ errexec(shell);
+ }
+
++ /* Execute on command line specified command */
+ execvp(argv[0], argv);
+ errexec(argv[0]);
+ }
+--
+2.14.5
+
diff --git a/package/util-linux/Config.in b/package/util-linux/Config.in
index 5f0a35cdbb..a5a137bfe0 100644
--- a/package/util-linux/Config.in
+++ b/package/util-linux/Config.in
@@ -53,7 +53,7 @@ config BR2_PACKAGE_UTIL_LINUX_BINARIES
help
Install the basic set of util-linux binaries.
- blkdiscard, blkid, blockdev, chcpu, col, colcrt, colrm,
+ blkdiscard, blkid, blockdev, chcpu, choom, col, colcrt, colrm,
column, ctrlaltdel, dmesg, fdisk, fincore, findfs, findmnt,
flock, fsfreeze, fstrim, getopt, hexdump, ipcmk, isosize,
ldattach, look, lsblk, lscpu, lsipc, lslocks, lsns, mcookie,
diff --git a/package/util-linux/util-linux.hash b/package/util-linux/util-linux.hash
index 1b7d6db45a..ed503a12ed 100644
--- a/package/util-linux/util-linux.hash
+++ b/package/util-linux/util-linux.hash
@@ -1,9 +1,9 @@
-# From https://www.kernel.org/pub/linux/utils/util-linux/v2.32/sha256sums.asc
-sha256 86e6707a379c7ff5489c218cfaf1e3464b0b95acf7817db0bc5f179e356a67b2 util-linux-2.32.1.tar.xz
+# From https://www.kernel.org/pub/linux/utils/util-linux/v2.33/sha256sums.asc
+sha256 f261b9d73c35bfeeea04d26941ac47ee1df937bd3b0583e748217c1ea423658a util-linux-2.33.tar.xz
# License files, locally calculated
-sha256 1e4b65802b0df8115395c697029d03339f983d451a473a08643309c684410d9a README.licensing
-sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 Documentation/licenses/COPYING.GPLv2
-sha256 ba7640f00d93e72e92b94b9d71f25ec53bac2f1682f5c4adcccb0018359f60f8 Documentation/licenses/COPYING.UCB
-sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 Documentation/licenses/COPYING.LGPLv2.1
-sha256 9b718a9460fed5952466421235bc79eb49d4e9eacc920d7a9dd6285ab8fd6c6d Documentation/licenses/COPYING.BSD-3
+sha256 4335620e8f478ee4dc4d26540448d39469091ef1d8e3fbbbb8bf753206ceac74 README.licensing
+sha256 9b718a9460fed5952466421235bc79eb49d4e9eacc920d7a9dd6285ab8fd6c6d Documentation/licenses/COPYING.BSD-3-Clause
+sha256 ba7640f00d93e72e92b94b9d71f25ec53bac2f1682f5c4adcccb0018359f60f8 Documentation/licenses/COPYING.BSD-4-Clause-UC
+sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 Documentation/licenses/COPYING.GPL-2.0-or-later
sha256 e53348ce276358e9997014071c5294b36a18c4b34f32f00ee57b9acce0aafd63 Documentation/licenses/COPYING.ISC
+sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 Documentation/licenses/COPYING.LGPL-2.1-or-later
diff --git a/package/util-linux/util-linux.mk b/package/util-linux/util-linux.mk
index d6b3c33b26..c176d364ce 100644
--- a/package/util-linux/util-linux.mk
+++ b/package/util-linux/util-linux.mk
@@ -4,15 +4,20 @@
#
################################################################################
-UTIL_LINUX_VERSION_MAJOR = 2.32
-UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).1
+UTIL_LINUX_VERSION_MAJOR = 2.33
+UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR)
UTIL_LINUX_SOURCE = util-linux-$(UTIL_LINUX_VERSION).tar.xz
UTIL_LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_VERSION_MAJOR)
# README.licensing claims that some files are GPL-2.0 only, but this is not true.
# Some files are GPL-3.0+ but only in tests. 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_FILES = README.licensing Documentation/licenses/COPYING.GPLv2 Documentation/licenses/COPYING.UCB Documentation/licenses/COPYING.LGPLv2.1 Documentation/licenses/COPYING.BSD-3 Documentation/licenses/COPYING.ISC
+UTIL_LINUX_LICENSE_FILES = README.licensing \
+ Documentation/licenses/COPYING.BSD-3-Clause \
+ Documentation/licenses/COPYING.BSD-4-Clause-UC \
+ Documentation/licenses/COPYING.GPL-2.0-or-later \
+ Documentation/licenses/COPYING.ISC \
+ Documentation/licenses/COPYING.LGPL-2.1-or-later
UTIL_LINUX_INSTALL_STAGING = YES
UTIL_LINUX_DEPENDENCIES = host-pkgconf $(TARGET_NLS_DEPENDENCIES)
UTIL_LINUX_CONF_OPTS += \
diff --git a/package/vmtouch/Config.in b/package/vmtouch/Config.in
new file mode 100644
index 0000000000..daae03aa32
--- /dev/null
+++ b/package/vmtouch/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_VMTOUCH
+ bool "vmtouch"
+ depends on BR2_USE_MMU # fork()
+ help
+ vmtouch is a tool for learning about and controlling
+ the file system cache of unix and unix-like systems. It
+ can discover which files the OS is caching, tell the OS
+ to cache or evict some files or regions of files, lock
+ files into memory so the OS won't evict them, and more.
+
+ https://hoytech.com/vmtouch/
diff --git a/package/vmtouch/vmtouch.hash b/package/vmtouch/vmtouch.hash
new file mode 100644
index 0000000000..2b98891d1c
--- /dev/null
+++ b/package/vmtouch/vmtouch.hash
@@ -0,0 +1,5 @@
+# Locally computed
+sha256 d57b7b3ae1146c4516429ab7d6db6f2122401db814ddd9cdaad10980e9c8428c vmtouch-v1.3.1.tar.gz
+
+# Hash for license files:
+sha256 13258709ed29c17394e0a3ba8c8b9360af35b85231db514f11a0ba385cecd08e LICENSE
diff --git a/package/vmtouch/vmtouch.mk b/package/vmtouch/vmtouch.mk
new file mode 100644
index 0000000000..856835acd4
--- /dev/null
+++ b/package/vmtouch/vmtouch.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# vmtouch
+#
+################################################################################
+
+VMTOUCH_VERSION = v1.3.1
+VMTOUCH_SITE = $(call github,hoytech,vmtouch,$(VMTOUCH_VERSION))
+VMTOUCH_LICENSE = BSD-3-Clause
+VMTOUCH_LICENSE_FILES = LICENSE
+
+define VMTOUCH_BUILD_CMDS
+ $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)
+endef
+
+define VMTOUCH_INSTALL_TARGET_CMDS
+ $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) install \
+ DESTDIR=$(TARGET_DIR) PREFIX=/usr
+endef
+
+$(eval $(generic-package))
diff --git a/package/websocketpp/Config.in b/package/websocketpp/Config.in
new file mode 100644
index 0000000000..cadb9ff696
--- /dev/null
+++ b/package/websocketpp/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_WEBSOCKETPP
+ bool "websocketpp"
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
+ depends on BR2_INSTALL_LIBSTDCPP
+ help
+ WebSocket++ is a header only C++ library that implements
+ RFC6455 The WebSocket Protocol. It allows integrating
+ WebSocket client and server functionality into C++ programs.
+ It uses interchangeable network transport modules including
+ one based on C++ iostreams and one based on Boost Asio.
+
+ http://www.zaphoyd.com/websocketpp
+
+comment "websocketpp needs a toolchain w/ C++ and gcc >= 4.8"
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
diff --git a/package/websocketpp/websocketpp.hash b/package/websocketpp/websocketpp.hash
new file mode 100644
index 0000000000..8bf671d96e
--- /dev/null
+++ b/package/websocketpp/websocketpp.hash
@@ -0,0 +1,3 @@
+# Locally Computed:
+sha256 178899de48c02853b55b1ea8681599641cedcdfce59e56beaff3dd0874bf0286 websocketpp-0.8.1.tar.gz
+sha256 b31e597bc777d884a39663c11d0557a0af40780e1f451de11ea5103924a69667 COPYING
diff --git a/package/websocketpp/websocketpp.mk b/package/websocketpp/websocketpp.mk
new file mode 100644
index 0000000000..47da4dbe2f
--- /dev/null
+++ b/package/websocketpp/websocketpp.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# websocketpp
+#
+################################################################################
+
+WEBSOCKETPP_VERSION = 0.8.1
+WEBSOCKETPP_SITE = $(call github,zaphoyd,websocketpp,$(WEBSOCKETPP_VERSION))
+WEBSOCKETPP_LICENSE = BSD-3c, MIT, Zlib
+WEBSOCKETPP_LICENSE_FILES = COPYING
+WEBSOCKETPP_INSTALL_STAGING = YES
+# Only installs headers
+WEBSOCKETPP_INSTALL_TARGET = NO
+
+$(eval $(cmake-package))
diff --git a/package/weston/weston.mk b/package/weston/weston.mk
index 71211fe5ea..a60fb5dfcf 100644
--- a/package/weston/weston.mk
+++ b/package/weston/weston.mk
@@ -63,12 +63,6 @@ WESTON_CONF_OPTS += \
--disable-simple-egl-clients
endif
-ifeq ($(BR2_PACKAGE_LIBUNWIND),y)
-WESTON_DEPENDENCIES += libunwind
-else
-WESTON_CONF_OPTS += --disable-libunwind
-endif
-
ifeq ($(BR2_PACKAGE_WESTON_RDP),y)
WESTON_DEPENDENCIES += freerdp
WESTON_CONF_OPTS += --enable-rdp-compositor
diff --git a/package/wireguard/wireguard.hash b/package/wireguard/wireguard.hash
index 737f7b49c2..f757a86630 100644
--- a/package/wireguard/wireguard.hash
+++ b/package/wireguard/wireguard.hash
@@ -1,4 +1,4 @@
-# From https://lists.zx2c4.com/pipermail/wireguard/2018-October/003479.html
-sha256 af05824211b27cbeeea2b8d6b76be29552c0d80bfe716471215e4e43d259e327 WireGuard-0.0.20181018.tar.xz
+# From https://lists.zx2c4.com/pipermail/wireguard/2018-November/003572.html
+sha256 7d47f7996dd291069de4efb3097c42f769f60dc3ac6f850a4d5705f321e4406b WireGuard-0.0.20181119.tar.xz
# Locally calculated
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
diff --git a/package/wireguard/wireguard.mk b/package/wireguard/wireguard.mk
index f3ea1bccf2..93373d8538 100644
--- a/package/wireguard/wireguard.mk
+++ b/package/wireguard/wireguard.mk
@@ -4,7 +4,7 @@
#
################################################################################
-WIREGUARD_VERSION = 0.0.20181018
+WIREGUARD_VERSION = 0.0.20181119
WIREGUARD_SITE = https://git.zx2c4.com/WireGuard/snapshot
WIREGUARD_SOURCE = WireGuard-$(WIREGUARD_VERSION).tar.xz
WIREGUARD_LICENSE = GPL-2.0
diff --git a/package/wolfssl/wolfssl.hash b/package/wolfssl/wolfssl.hash
index 76c7db25a8..2fdaa5762b 100644
--- a/package/wolfssl/wolfssl.hash
+++ b/package/wolfssl/wolfssl.hash
@@ -1,5 +1,5 @@
# Locally computed:
-sha256 4ab543c869a65a77dc5d0bc934b9d4852aa3d5834bd2f707a74a936602bd3687 v3.14.0-stable.tar.gz
+sha256 4e15f494604e41725499f8b708798f8ddc2fcaa8f39b4369bcd000b3cab482d8 v3.15.5-stable.tar.gz
# Hash for license files:
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
diff --git a/package/wolfssl/wolfssl.mk b/package/wolfssl/wolfssl.mk
index c246b08513..aefcea33d0 100644
--- a/package/wolfssl/wolfssl.mk
+++ b/package/wolfssl/wolfssl.mk
@@ -4,7 +4,7 @@
#
################################################################################
-WOLFSSL_VERSION = 3.14.0
+WOLFSSL_VERSION = 3.15.5
WOLFSSL_SITE = https://github.com/wolfSSL/wolfssl/archive
WOLFSSL_SOURCE = v$(WOLFSSL_VERSION)-stable.tar.gz
WOLFSSL_INSTALL_STAGING = YES
@@ -30,7 +30,17 @@ else
WOLFSSL_CONF_OPTS += --disable-sslv3
endif
-# build fails when ARMv8 hardware acceleration is enabled
+# enable ARMv8 hardware acceleration
+ifeq ($(BR2_ARM_CPU_ARMV8A),y)
+WOLFSSL_CONF_OPTS += --enable-armasm
+# the flag -mstrict-align is needed to prevent build errors caused by
+# some inline assembly in parts of the AES structure using the "m"
+# constraint
+ifeq ($(BR2_aarch64),y)
+WOLFSSL_CONF_ENV += CPPFLAGS="$(TARGET_CPPFLAGS) -mstrict-align"
+endif
+else
WOLFSSL_CONF_OPTS += --disable-armasm
+endif
$(eval $(autotools-package))
diff --git a/support/dependencies/check-host-gzip.mk b/support/dependencies/check-host-gzip.mk
new file mode 100644
index 0000000000..bf9a369a7d
--- /dev/null
+++ b/support/dependencies/check-host-gzip.mk
@@ -0,0 +1,3 @@
+ifeq (,$(call suitable-host-package,gzip))
+BR2_GZIP_HOST_DEPENDENCY = host-gzip
+endif
diff --git a/support/dependencies/check-host-gzip.sh b/support/dependencies/check-host-gzip.sh
new file mode 100755
index 0000000000..5f344c5f9b
--- /dev/null
+++ b/support/dependencies/check-host-gzip.sh
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+candidate="$1" # ignored
+
+gzip="$(which gzip)"
+if [ ! -x "${gzip}" ]; then
+ # echo nothing: no suitable gzip found
+ exit 1
+fi
+
+# gzip displays its version string on stdout
+# pigz displays its version string on stderr
+version="$("${gzip}" --version 2>&1)"
+case "${version}" in
+ (*pigz*)
+ # echo nothing: no suitable gzip found
+ exit 1
+ ;;
+esac
+
+printf "%s" "${gzip}"
diff --git a/support/dependencies/check-host-tar.sh b/support/dependencies/check-host-tar.sh
index 0857307396..934cb61299 100755
--- a/support/dependencies/check-host-tar.sh
+++ b/support/dependencies/check-host-tar.sh
@@ -20,10 +20,11 @@ major=`echo "$version" | cut -d. -f1`
minor=`echo "$version" | cut -d. -f2`
bugfix=`echo "$version" | cut -d. -f3`
version_bsd=`$tar --version | grep 'bsdtar'`
-if [ ! -z "${version_bsd}" ] ; then
- # mark as invalid version - not all command line options are available
- major=0
- minor=0
+
+# BSD tar does not have all the command-line options
+if [ -n "${version_bsd}" ] ; then
+ # echo nothing: no suitable tar found
+ exit 1
fi
# Minimal version = 1.27 (previous versions do not correctly unpack archives
diff --git a/support/kconfig/merge_config.sh b/support/kconfig/merge_config.sh
index 50de5114dc..14917806a3 100755
--- a/support/kconfig/merge_config.sh
+++ b/support/kconfig/merge_config.sh
@@ -34,12 +34,16 @@ usage() {
echo " -r list redundant entries when merging fragments"
echo " -O dir to put generated output files. Consider setting \$KCONFIG_CONFIG instead."
echo " -e colon-separated list of br2-external trees to use (optional)"
+ echo
+ echo "Used prefix: '$CONFIG_PREFIX'. You can redefine it with \$CONFIG_
+ environment variable."
}
RUNMAKE=true
ALLTARGET=alldefconfig
WARNREDUN=false
OUTPUT=.
+CONFIG_PREFIX=${CONFIG_-CONFIG_}
while true; do
case $1 in
@@ -105,7 +109,9 @@ if [ ! -r "$INITFILE" ]; then
fi
MERGE_LIST=$*
-SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(CONFIG_[a-zA-Z0-9_]*\)[= ].*/\2/p"
+SED_CONFIG_EXP1="s/^\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)=.*/\1/p"
+SED_CONFIG_EXP2="s/^# \(${CONFIG_PREFIX}[a-zA-Z0-9_]*\) is not set$/\1/p"
+
TMP_FILE=$(mktemp -t .tmp.config.XXXXXXXXXX)
echo "Using $INITFILE as base"
@@ -118,7 +124,7 @@ for MERGE_FILE in $MERGE_LIST ; do
echo "The merge file '$MERGE_FILE' does not exist. Exit." >&2
exit 1
fi
- CFG_LIST=$(sed -n "$SED_CONFIG_EXP" $MERGE_FILE)
+ CFG_LIST=$(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $MERGE_FILE)
for CFG in $CFG_LIST ; do
grep -q -w $CFG $TMP_FILE || continue
@@ -161,7 +167,7 @@ make KCONFIG_ALLCONFIG=$TMP_FILE $EXTERNAL_ARG $OUTPUT_ARG $ALLTARGET
# Check all specified config values took (might have missed-dependency issues)
-for CFG in $(sed -n "$SED_CONFIG_EXP" $TMP_FILE); do
+for CFG in $(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $TMP_FILE); do
REQUESTED_VAL=$(grep -w -e "$CFG" $TMP_FILE)
ACTUAL_VAL=$(grep -w -e "$CFG" "$KCONFIG_CONFIG")
diff --git a/support/kconfig/patches/20-merge_config.sh-Allow-to-define-config-prefix.patch b/support/kconfig/patches/20-merge_config.sh-Allow-to-define-config-prefix.patch
new file mode 100644
index 0000000000..645043b163
--- /dev/null
+++ b/support/kconfig/patches/20-merge_config.sh-Allow-to-define-config-prefix.patch
@@ -0,0 +1,31 @@
+Index: kconfig/merge_config.sh
+===================================================================
+--- kconfig.orig/merge_config.sh
++++ kconfig/merge_config.sh
+@@ -34,12 +34,16 @@ usage() {
+ echo " -r list redundant entries when merging fragments"
+ echo " -O dir to put generated output files. Consider setting \$KCONFIG_CONFIG instead."
+ echo " -e colon-separated list of br2-external trees to use (optional)"
++ echo
++ echo "Used prefix: '$CONFIG_PREFIX'. You can redefine it with \$CONFIG_
++ environment variable."
+ }
+
+ RUNMAKE=true
+ ALLTARGET=alldefconfig
+ WARNREDUN=false
+ OUTPUT=.
++CONFIG_PREFIX=${CONFIG_-CONFIG_}
+
+ while true; do
+ case $1 in
+@@ -105,7 +109,8 @@ if [ ! -r "$INITFILE" ]; then
+ fi
+
+ MERGE_LIST=$*
+-SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(CONFIG_[a-zA-Z0-9_]*\)[= ].*/\2/p"
++SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)[= ].*/\2/p"
++
+ TMP_FILE=$(mktemp -t .tmp.config.XXXXXXXXXX)
+
+ echo "Using $INITFILE as base"
diff --git a/support/kconfig/patches/21-Avoid-false-positive-matches-from-comment-lines.patch b/support/kconfig/patches/21-Avoid-false-positive-matches-from-comment-lines.patch
new file mode 100644
index 0000000000..c11144e47e
--- /dev/null
+++ b/support/kconfig/patches/21-Avoid-false-positive-matches-from-comment-lines.patch
@@ -0,0 +1,32 @@
+Index: kconfig/merge_config.sh
+===================================================================
+--- kconfig.orig/merge_config.sh
++++ kconfig/merge_config.sh
+@@ -109,7 +109,8 @@ if [ ! -r "$INITFILE" ]; then
+ fi
+
+ MERGE_LIST=$*
+-SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)[= ].*/\2/p"
++SED_CONFIG_EXP1="s/^\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)=.*/\1/p"
++SED_CONFIG_EXP2="s/^# \(${CONFIG_PREFIX}[a-zA-Z0-9_]*\) is not set$/\1/p"
+
+ TMP_FILE=$(mktemp -t .tmp.config.XXXXXXXXXX)
+
+@@ -123,7 +124,7 @@ for MERGE_FILE in $MERGE_LIST ; do
+ echo "The merge file '$MERGE_FILE' does not exist. Exit." >&2
+ exit 1
+ fi
+- CFG_LIST=$(sed -n "$SED_CONFIG_EXP" $MERGE_FILE)
++ CFG_LIST=$(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $MERGE_FILE)
+
+ for CFG in $CFG_LIST ; do
+ grep -q -w $CFG $TMP_FILE || continue
+@@ -166,7 +167,7 @@ make KCONFIG_ALLCONFIG=$TMP_FILE $EXTERN
+
+
+ # Check all specified config values took (might have missed-dependency issues)
+-for CFG in $(sed -n "$SED_CONFIG_EXP" $TMP_FILE); do
++for CFG in $(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $TMP_FILE); do
+
+ REQUESTED_VAL=$(grep -w -e "$CFG" $TMP_FILE)
+ ACTUAL_VAL=$(grep -w -e "$CFG" "$KCONFIG_CONFIG")
diff --git a/support/kconfig/patches/series b/support/kconfig/patches/series
index e136de7937..e5a6f69d8f 100644
--- a/support/kconfig/patches/series
+++ b/support/kconfig/patches/series
@@ -8,3 +8,5 @@
17-backport-kecho.patch
18-merge-config.sh-create-temporary-files-in-tmp.patch
19-merge_config.sh-add-br2-external-support.patch
+20-merge_config.sh-Allow-to-define-config-prefix.patch
+21-Avoid-false-positive-matches-from-comment-lines.patch
diff --git a/support/scripts/check-bin-arch b/support/scripts/check-bin-arch
index 7f97696735..66b8d89932 100755
--- a/support/scripts/check-bin-arch
+++ b/support/scripts/check-bin-arch
@@ -20,6 +20,10 @@ declare -a IGNORES=(
# pru-software-support) legitimately install ELF binaries that
# are not for the target architecture
"/usr/share"
+
+ # Skip files in /lib/grub, since it is possible to have it
+ # for a different architecture (e.g. i386 grub on x86_64).
+ "/lib/grub"
)
while getopts p:l:r:a:i: OPT ; do
diff --git a/support/scripts/check-host-rpath b/support/scripts/check-host-rpath
index 169628decb..6c5767da05 100755
--- a/support/scripts/check-host-rpath
+++ b/support/scripts/check-host-rpath
@@ -63,7 +63,8 @@ check_elf_has_rpath() {
for dir in ${rpath//:/ }; do
# Remove duplicate and trailing '/' for proper match
dir="$( sed -r -e 's:/+:/:g; s:/$::;' <<<"${dir}" )"
- [ "${dir}" = "${hostdir}/lib" -o "${dir}" = "\$ORIGIN/../lib" ] && return 0
+ [ "${dir}" = "${hostdir}/lib" ] && return 0
+ [ "${dir}" = "\$ORIGIN/../lib" ] && return 0
done
done < <( readelf -d "${file}" \
|sed -r -e '/.* \(R(UN)?PATH\) +Library r(un)?path: \[(.+)\]$/!d' \
diff --git a/support/testing/tests/package/copy-sample-script-to-target.sh b/support/testing/tests/package/copy-sample-script-to-target.sh
new file mode 100755
index 0000000000..6448a80d6d
--- /dev/null
+++ b/support/testing/tests/package/copy-sample-script-to-target.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+set -e
+
+shift
+for file in "$@"; do
+ cp -f "${file}" "${TARGET_DIR}/root/"
+done
diff --git a/support/testing/tests/package/sample_python_argh.py b/support/testing/tests/package/sample_python_argh.py
new file mode 100644
index 0000000000..48247bf604
--- /dev/null
+++ b/support/testing/tests/package/sample_python_argh.py
@@ -0,0 +1,10 @@
+import argh
+
+
+@argh.arg("foo", help="help for foo")
+@argh.arg("--bar", help="help for bar")
+def main(foo, bar=False):
+ print("{}, {}".format(foo, bar))
+
+
+argh.dispatch_command(main)
diff --git a/support/testing/tests/package/sample_python_attrs.py b/support/testing/tests/package/sample_python_attrs.py
new file mode 100644
index 0000000000..f224944914
--- /dev/null
+++ b/support/testing/tests/package/sample_python_attrs.py
@@ -0,0 +1,15 @@
+import attr
+
+
+@attr.s
+class Obj(object):
+ x = attr.ib()
+ y = attr.ib(default=1)
+
+
+obj1 = Obj(2)
+assert(obj1.x == 2)
+assert(obj1.y == 1)
+obj2 = Obj(3, 4)
+assert(obj2.x == 3)
+assert(obj2.y == 4)
diff --git a/support/testing/tests/package/sample_python_autobahn.py b/support/testing/tests/package/sample_python_autobahn.py
new file mode 100644
index 0000000000..8189b6a6b3
--- /dev/null
+++ b/support/testing/tests/package/sample_python_autobahn.py
@@ -0,0 +1 @@
+import autobahn.wamp # noqa
diff --git a/support/testing/tests/package/sample_python_automat.py b/support/testing/tests/package/sample_python_automat.py
new file mode 100644
index 0000000000..baf536f993
--- /dev/null
+++ b/support/testing/tests/package/sample_python_automat.py
@@ -0,0 +1,27 @@
+from automat import MethodicalMachine
+
+
+class Led(object):
+ _machine = MethodicalMachine()
+
+ @_machine.state()
+ def led_on(self):
+ "led is on"
+
+ @_machine.state(initial=True)
+ def led_off(self):
+ "led is off"
+
+ @_machine.input()
+ def turn_on(self):
+ "turn the led on"
+
+ @_machine.output()
+ def _light(self):
+ print("light")
+
+ led_off.upon(turn_on, enter=led_on, outputs=[_light])
+
+
+led = Led()
+led.turn_on()
diff --git a/support/testing/tests/package/sample_python_bitstring.py b/support/testing/tests/package/sample_python_bitstring.py
new file mode 100644
index 0000000000..2cc10dba65
--- /dev/null
+++ b/support/testing/tests/package/sample_python_bitstring.py
@@ -0,0 +1,6 @@
+import bitstring
+
+value = bitstring.BitArray("uint:12=42")
+assert(value.hex == "02a")
+assert(value.bin == "000000101010")
+assert(value.uint == 42)
diff --git a/support/testing/tests/package/sample_python_cbor_dec.py b/support/testing/tests/package/sample_python_cbor_dec.py
new file mode 100644
index 0000000000..5ca5e3aa7c
--- /dev/null
+++ b/support/testing/tests/package/sample_python_cbor_dec.py
@@ -0,0 +1,10 @@
+import cbor
+
+with open("/tmp/data.cbor", "rb") as f:
+ serialized = f.read()
+data = cbor.loads(serialized)
+print(data)
+assert(data["name"] == "python-cbor")
+assert(data["versions"] == ["1", "2"])
+assert(data["group"]["is_a_package"] is True)
+assert(data["group"]["value"] == 42)
diff --git a/support/testing/tests/package/sample_python_cbor_enc.py b/support/testing/tests/package/sample_python_cbor_enc.py
new file mode 100644
index 0000000000..1bde92bb9f
--- /dev/null
+++ b/support/testing/tests/package/sample_python_cbor_enc.py
@@ -0,0 +1,14 @@
+import cbor
+
+data = {
+ "name": "python-cbor",
+ "versions": ["1", "2"],
+ "group": {
+ "is_a_package": True,
+ "value": 42
+ }
+}
+serialized = cbor.dumps(data)
+print(serialized)
+with open("/tmp/data.cbor", "wb") as f:
+ f.write(serialized)
diff --git a/support/testing/tests/package/sample_python_click.py b/support/testing/tests/package/sample_python_click.py
new file mode 100644
index 0000000000..759868d087
--- /dev/null
+++ b/support/testing/tests/package/sample_python_click.py
@@ -0,0 +1,12 @@
+import click
+
+
+@click.command()
+@click.argument("foo")
+@click.option("--bar", is_flag=True, help="help for bar")
+def main(foo, bar):
+ click.echo("{}, {}".format(foo, bar))
+
+
+if __name__ == '__main__':
+ main()
diff --git a/support/testing/tests/package/sample_python_constantly.py b/support/testing/tests/package/sample_python_constantly.py
new file mode 100644
index 0000000000..570cf85b23
--- /dev/null
+++ b/support/testing/tests/package/sample_python_constantly.py
@@ -0,0 +1,19 @@
+from constantly import ValueConstant, Values
+
+
+class RESULT(Values):
+ OK = ValueConstant(0)
+ FAIL = ValueConstant(-1)
+
+ @classmethod
+ def get(cls, rc):
+ if rc == 0:
+ return cls.OK
+ else:
+ return cls.FAIL
+
+
+print(list(RESULT.iterconstants()))
+assert(RESULT.OK < RESULT.FAIL)
+assert(RESULT.OK.value > RESULT.FAIL.value)
+assert(RESULT.get(-5) == RESULT.FAIL)
diff --git a/support/testing/tests/package/sample_python_crossbar.py b/support/testing/tests/package/sample_python_crossbar.py
new file mode 100644
index 0000000000..3695fe92c0
--- /dev/null
+++ b/support/testing/tests/package/sample_python_crossbar.py
@@ -0,0 +1,3 @@
+import crossbar
+
+crossbar.run(["version"])
diff --git a/support/testing/tests/package/sample_python_cryptography.py b/support/testing/tests/package/sample_python_cryptography.py
new file mode 100644
index 0000000000..ec9883dc64
--- /dev/null
+++ b/support/testing/tests/package/sample_python_cryptography.py
@@ -0,0 +1,3 @@
+from cryptography.fernet import Fernet
+key = Fernet.generate_key()
+f = Fernet(key)
diff --git a/support/testing/tests/package/sample_python_incremental.py b/support/testing/tests/package/sample_python_incremental.py
new file mode 100644
index 0000000000..b6e2aa803c
--- /dev/null
+++ b/support/testing/tests/package/sample_python_incremental.py
@@ -0,0 +1,3 @@
+import incremental
+v = incremental.Version("package", 1, 2, 3, release_candidate=4)
+assert(str(v) == "[package, version 1.2.3rc4]")
diff --git a/support/testing/tests/package/sample_python_passlib.py b/support/testing/tests/package/sample_python_passlib.py
new file mode 100644
index 0000000000..3ab348b9e4
--- /dev/null
+++ b/support/testing/tests/package/sample_python_passlib.py
@@ -0,0 +1,5 @@
+from passlib.hash import pbkdf2_sha256
+
+hash = pbkdf2_sha256.hash("password")
+assert(pbkdf2_sha256.verify("passWord", hash) is False)
+assert(pbkdf2_sha256.verify("password", hash) is True)
diff --git a/support/testing/tests/package/sample_python_pexpect.py b/support/testing/tests/package/sample_python_pexpect.py
new file mode 100644
index 0000000000..cfe395fc29
--- /dev/null
+++ b/support/testing/tests/package/sample_python_pexpect.py
@@ -0,0 +1,8 @@
+import pexpect
+
+p = pexpect.spawn(["login"])
+p.expect("login:")
+p.sendline("wrong")
+p.expect("Password:")
+p.sendline("wrong")
+p.expect("Login incorrect")
diff --git a/support/testing/tests/package/sample_python_pynacl.py b/support/testing/tests/package/sample_python_pynacl.py
new file mode 100644
index 0000000000..d17c50ebe5
--- /dev/null
+++ b/support/testing/tests/package/sample_python_pynacl.py
@@ -0,0 +1,3 @@
+import nacl.utils
+
+nonce = nacl.utils.random(16)
diff --git a/support/testing/tests/package/sample_python_pyyaml_dec.py b/support/testing/tests/package/sample_python_pyyaml_dec.py
new file mode 100644
index 0000000000..9ab8931197
--- /dev/null
+++ b/support/testing/tests/package/sample_python_pyyaml_dec.py
@@ -0,0 +1,10 @@
+import yaml
+
+with open("/tmp/data.yml", "rb") as f:
+ serialized = f.read()
+data = yaml.load(serialized)
+print(data)
+assert(data["name"] == "python-pyyaml")
+assert(data["versions"] == ["1", "2"])
+assert(data["group"]["is_a_package"] is True)
+assert(data["group"]["value"] == 42)
diff --git a/support/testing/tests/package/sample_python_pyyaml_enc.py b/support/testing/tests/package/sample_python_pyyaml_enc.py
new file mode 100644
index 0000000000..30759949e2
--- /dev/null
+++ b/support/testing/tests/package/sample_python_pyyaml_enc.py
@@ -0,0 +1,14 @@
+import yaml
+
+data = {
+ "name": "python-pyyaml",
+ "versions": ["1", "2"],
+ "group": {
+ "is_a_package": True,
+ "value": 42
+ }
+}
+serialized = yaml.dump(data, default_flow_style=False)
+print(serialized)
+with open("/tmp/data.yml", "w") as f:
+ f.write(serialized)
diff --git a/support/testing/tests/package/sample_python_service_identity.py b/support/testing/tests/package/sample_python_service_identity.py
new file mode 100644
index 0000000000..3184b6c580
--- /dev/null
+++ b/support/testing/tests/package/sample_python_service_identity.py
@@ -0,0 +1,2 @@
+from service_identity import VerificationError # noqa
+from service_identity.pyopenssl import verify_hostname # noqa
diff --git a/support/testing/tests/package/sample_python_subprocess32.py b/support/testing/tests/package/sample_python_subprocess32.py
new file mode 100644
index 0000000000..8579745cc8
--- /dev/null
+++ b/support/testing/tests/package/sample_python_subprocess32.py
@@ -0,0 +1,6 @@
+import subprocess32
+
+output = subprocess32.check_output(["ls", "-l", "/dev/null"])
+print(output)
+assert("/dev/null" in output)
+assert("No such" not in output)
diff --git a/support/testing/tests/package/sample_python_treq.py b/support/testing/tests/package/sample_python_treq.py
new file mode 100644
index 0000000000..974fdcd8e1
--- /dev/null
+++ b/support/testing/tests/package/sample_python_treq.py
@@ -0,0 +1,16 @@
+from twisted.internet import reactor
+import treq
+
+
+def done(response):
+ print(response.code)
+ reactor.stop()
+
+
+def err(fail):
+ print(fail.value)
+ reactor.stop()
+
+
+treq.get("https://localhost").addCallback(done).addErrback(err)
+reactor.run()
diff --git a/support/testing/tests/package/sample_python_twisted.py b/support/testing/tests/package/sample_python_twisted.py
new file mode 100644
index 0000000000..47d6c5debc
--- /dev/null
+++ b/support/testing/tests/package/sample_python_twisted.py
@@ -0,0 +1,9 @@
+from twisted.internet import protocol, reactor, endpoints
+
+
+class F(protocol.Factory):
+ pass
+
+
+endpoints.serverFromString(reactor, "tcp:1234").listen(F())
+reactor.run()
diff --git a/support/testing/tests/package/sample_python_txaio_asyncio.py b/support/testing/tests/package/sample_python_txaio_asyncio.py
new file mode 100644
index 0000000000..77f11ed807
--- /dev/null
+++ b/support/testing/tests/package/sample_python_txaio_asyncio.py
@@ -0,0 +1,3 @@
+import txaio
+txaio.use_asyncio()
+f0 = txaio.create_future()
diff --git a/support/testing/tests/package/sample_python_txaio_twisted.py b/support/testing/tests/package/sample_python_txaio_twisted.py
new file mode 100644
index 0000000000..13ea82a961
--- /dev/null
+++ b/support/testing/tests/package/sample_python_txaio_twisted.py
@@ -0,0 +1,3 @@
+import txaio
+txaio.use_twisted()
+f0 = txaio.create_future()
diff --git a/support/testing/tests/package/sample_python_txtorcon.py b/support/testing/tests/package/sample_python_txtorcon.py
new file mode 100644
index 0000000000..c4a2ae6f5b
--- /dev/null
+++ b/support/testing/tests/package/sample_python_txtorcon.py
@@ -0,0 +1 @@
+import txtorcon # noqa
diff --git a/support/testing/tests/package/sample_python_ubjson_dec.py b/support/testing/tests/package/sample_python_ubjson_dec.py
new file mode 100644
index 0000000000..12ccdfd587
--- /dev/null
+++ b/support/testing/tests/package/sample_python_ubjson_dec.py
@@ -0,0 +1,10 @@
+import ubjson
+
+with open("/tmp/data.json", "rb") as f:
+ serialized = f.read()
+data = ubjson.loadb(serialized)
+print(data)
+assert(data["name"] == "python-ubjson")
+assert(data["versions"] == ["1", "2"])
+assert(data["group"]["is_a_package"] is True)
+assert(data["group"]["value"] == 42)
diff --git a/support/testing/tests/package/sample_python_ubjson_enc.py b/support/testing/tests/package/sample_python_ubjson_enc.py
new file mode 100644
index 0000000000..9a2140ef85
--- /dev/null
+++ b/support/testing/tests/package/sample_python_ubjson_enc.py
@@ -0,0 +1,14 @@
+import ubjson
+
+data = {
+ "name": "python-ubjson",
+ "versions": ["1", "2"],
+ "group": {
+ "is_a_package": True,
+ "value": 42
+ }
+}
+serialized = ubjson.dumpb(data)
+print(serialized)
+with open("/tmp/data.json", "wb") as f:
+ f.write(serialized)
diff --git a/support/testing/tests/package/test_python.py b/support/testing/tests/package/test_python.py
index 26cf49947b..c422bdbf50 100644
--- a/support/testing/tests/package/test_python.py
+++ b/support/testing/tests/package/test_python.py
@@ -68,3 +68,59 @@ class TestPython3(TestPythonBase):
self.math_floor_test()
self.libc_time_test()
self.zlib_test()
+
+
+class TestPythonPackageBase(TestPythonBase):
+ """Common class to test a python package.
+
+ Build an image containing the scripts listed in sample_scripts, start the
+ emulator, login to it and for each sample script in the image run the python
+ interpreter passing the name of the script and check the status code is 0.
+
+ Each test case that inherits from this class must have:
+ __test__ = True - to let nose2 know that it is a test case
+ config - defconfig fragment with the packages to run the test
+ It also can have:
+ sample_scripts - list of scripts to add to the image and run on the target
+ timeout - timeout to the script to run when the default from the
+ test infra is not enough
+ When custom commands need be issued on the target the method
+ run_sample_scripts can be overridden.
+ """
+
+ __test__ = False
+ config_sample_scripts = \
+ """
+ BR2_ROOTFS_POST_BUILD_SCRIPT="{}"
+ BR2_ROOTFS_POST_SCRIPT_ARGS="{}"
+ """.format(infra.filepath("tests/package/copy-sample-script-to-target.sh"),
+ "{sample_scripts}")
+ sample_scripts = None
+ timeout = -1
+
+ def __init__(self, names):
+ """Add the scripts to the target in build time."""
+ super(TestPythonPackageBase, self).__init__(names)
+ if self.sample_scripts:
+ scripts = [infra.filepath(s) for s in self.sample_scripts]
+ self.config += self.config_sample_scripts.format(sample_scripts=" ".join(scripts))
+
+ def check_sample_scripts_exist(self):
+ """Check the scripts were really added to the image."""
+ scripts = [os.path.basename(s) for s in self.sample_scripts]
+ cmd = "md5sum " + " ".join(scripts)
+ _, exit_code = self.emulator.run(cmd)
+ self.assertEqual(exit_code, 0)
+
+ def run_sample_scripts(self):
+ """Run each script previously added to the image."""
+ for script in self.sample_scripts:
+ cmd = self.interpreter + " " + os.path.basename(script)
+ _, exit_code = self.emulator.run(cmd, timeout=self.timeout)
+ self.assertEqual(exit_code, 0)
+
+ def test_run(self):
+ """Test a python package."""
+ self.login()
+ self.check_sample_scripts_exist()
+ self.run_sample_scripts()
diff --git a/support/testing/tests/package/test_python_argh.py b/support/testing/tests/package/test_python_argh.py
new file mode 100644
index 0000000000..de4b4cbe74
--- /dev/null
+++ b/support/testing/tests/package/test_python_argh.py
@@ -0,0 +1,45 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonArgh(TestPythonPackageBase):
+ config = TestPythonPackageBase.config
+ sample_scripts = ["tests/package/sample_python_argh.py"]
+
+ def run_sample_scripts(self):
+ cmd = self.interpreter + " sample_python_argh.py -h"
+ output, exit_code = self.emulator.run(cmd)
+ self.assertIn("usage:", output[0])
+ self.assertEqual(exit_code, 0)
+
+ cmd = self.interpreter + " sample_python_argh.py 123"
+ output, exit_code = self.emulator.run(cmd)
+ self.assertEqual(output[0], "123, False")
+ self.assertEqual(exit_code, 0)
+
+ cmd = self.interpreter + " sample_python_argh.py --bar 456"
+ output, exit_code = self.emulator.run(cmd)
+ self.assertEqual(output[0], "456, True")
+ self.assertEqual(exit_code, 0)
+
+ cmd = self.interpreter + " sample_python_argh.py"
+ output, exit_code = self.emulator.run(cmd)
+ self.assertIn("usage:", output[0])
+ self.assertEqual(exit_code, 2)
+
+
+class TestPythonPy2Argh(TestPythonArgh):
+ __test__ = True
+ config = TestPythonArgh.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_ARGH=y
+ """
+
+
+class TestPythonPy3Argh(TestPythonArgh):
+ __test__ = True
+ config = TestPythonArgh.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_ARGH=y
+ """
diff --git a/support/testing/tests/package/test_python_attrs.py b/support/testing/tests/package/test_python_attrs.py
new file mode 100644
index 0000000000..9f597034ae
--- /dev/null
+++ b/support/testing/tests/package/test_python_attrs.py
@@ -0,0 +1,21 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Attrs(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_ATTRS=y
+ """
+ sample_scripts = ["tests/package/sample_python_attrs.py"]
+
+
+class TestPythonPy3Attrs(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_ATTRS=y
+ """
+ sample_scripts = ["tests/package/sample_python_attrs.py"]
diff --git a/support/testing/tests/package/test_python_autobahn.py b/support/testing/tests/package/test_python_autobahn.py
index 2bc0f0cccf..af1f617d6d 100644
--- a/support/testing/tests/package/test_python_autobahn.py
+++ b/support/testing/tests/package/test_python_autobahn.py
@@ -1,32 +1,21 @@
-from tests.package.test_python import TestPythonBase
+from tests.package.test_python import TestPythonPackageBase
-class TestPythonAutobahn(TestPythonBase):
- def import_test(self):
- cmd = self.interpreter + " -c 'import autobahn.wamp'"
- _, exit_code = self.emulator.run(cmd)
- self.assertEqual(exit_code, 0)
-
-
-class TestPythonPy2Autobahn(TestPythonAutobahn):
- config = TestPythonBase.config + \
+class TestPythonPy2Autobahn(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON=y
BR2_PACKAGE_PYTHON_AUTOBAHN=y
"""
+ sample_scripts = ["tests/package/sample_python_autobahn.py"]
- def test_run(self):
- self.login()
- self.import_test()
-
-class TestPythonPy3Autobahn(TestPythonAutobahn):
- config = TestPythonBase.config + \
+class TestPythonPy3Autobahn(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON_AUTOBAHN=y
"""
-
- def test_run(self):
- self.login()
- self.import_test()
+ sample_scripts = ["tests/package/sample_python_autobahn.py"]
diff --git a/support/testing/tests/package/test_python_automat.py b/support/testing/tests/package/test_python_automat.py
new file mode 100644
index 0000000000..00a7ed6526
--- /dev/null
+++ b/support/testing/tests/package/test_python_automat.py
@@ -0,0 +1,23 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Automat(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_AUTOMAT=y
+ """
+ sample_scripts = ["tests/package/sample_python_automat.py"]
+ timeout = 30
+
+
+class TestPythonPy3Automat(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_AUTOMAT=y
+ """
+ sample_scripts = ["tests/package/sample_python_automat.py"]
+ timeout = 30
diff --git a/support/testing/tests/package/test_python_bitstring.py b/support/testing/tests/package/test_python_bitstring.py
new file mode 100644
index 0000000000..63b3fdb69c
--- /dev/null
+++ b/support/testing/tests/package/test_python_bitstring.py
@@ -0,0 +1,21 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Bitstring(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_BITSTRING=y
+ """
+ sample_scripts = ["tests/package/sample_python_bitstring.py"]
+
+
+class TestPythonPy3Bitstring(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_BITSTRING=y
+ """
+ sample_scripts = ["tests/package/sample_python_bitstring.py"]
diff --git a/support/testing/tests/package/test_python_cbor.py b/support/testing/tests/package/test_python_cbor.py
new file mode 100644
index 0000000000..9da3503763
--- /dev/null
+++ b/support/testing/tests/package/test_python_cbor.py
@@ -0,0 +1,23 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Cbor(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_CBOR=y
+ """
+ sample_scripts = ["tests/package/sample_python_cbor_enc.py",
+ "tests/package/sample_python_cbor_dec.py"]
+
+
+class TestPythonPy3Cbor(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_CBOR=y
+ """
+ sample_scripts = ["tests/package/sample_python_cbor_enc.py",
+ "tests/package/sample_python_cbor_dec.py"]
diff --git a/support/testing/tests/package/test_python_click.py b/support/testing/tests/package/test_python_click.py
new file mode 100644
index 0000000000..db57d3aa9f
--- /dev/null
+++ b/support/testing/tests/package/test_python_click.py
@@ -0,0 +1,44 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonClick(TestPythonPackageBase):
+ sample_scripts = ["tests/package/sample_python_click.py"]
+
+ def run_sample_scripts(self):
+ cmd = self.interpreter + " sample_python_click.py --help"
+ output, exit_code = self.emulator.run(cmd)
+ self.assertIn("Usage:", output[0])
+ self.assertEqual(exit_code, 0)
+
+ cmd = self.interpreter + " sample_python_click.py 123"
+ output, exit_code = self.emulator.run(cmd)
+ self.assertEqual(output[0], "123, False")
+ self.assertEqual(exit_code, 0)
+
+ cmd = self.interpreter + " sample_python_click.py --bar 456"
+ output, exit_code = self.emulator.run(cmd)
+ self.assertEqual(output[0], "456, True")
+ self.assertEqual(exit_code, 0)
+
+ cmd = self.interpreter + " sample_python_click.py"
+ output, exit_code = self.emulator.run(cmd)
+ self.assertIn("Usage:", output[0])
+ self.assertEqual(exit_code, 2)
+
+
+class TestPythonPy2Click(TestPythonClick):
+ __test__ = True
+ config = TestPythonClick.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_CLICK=y
+ """
+
+
+class TestPythonPy3Click(TestPythonClick):
+ __test__ = True
+ config = TestPythonClick.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_CLICK=y
+ """
diff --git a/support/testing/tests/package/test_python_constantly.py b/support/testing/tests/package/test_python_constantly.py
new file mode 100644
index 0000000000..5be01c4f8c
--- /dev/null
+++ b/support/testing/tests/package/test_python_constantly.py
@@ -0,0 +1,21 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Constantly(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_CONSTANTLY=y
+ """
+ sample_scripts = ["tests/package/sample_python_constantly.py"]
+
+
+class TestPythonPy3Constantly(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_CONSTANTLY=y
+ """
+ sample_scripts = ["tests/package/sample_python_constantly.py"]
diff --git a/support/testing/tests/package/test_python_crossbar.py b/support/testing/tests/package/test_python_crossbar.py
new file mode 100644
index 0000000000..2d7b739b5c
--- /dev/null
+++ b/support/testing/tests/package/test_python_crossbar.py
@@ -0,0 +1,14 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy3Crossbar(TestPythonPackageBase):
+ __test__ = True
+ # use haveged to generate enough entropy so crossbar -> pynacl -> libsodium don't hang waiting for /dev/random
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_CROSSBAR=y
+ BR2_PACKAGE_HAVEGED=y
+ """
+ sample_scripts = ["tests/package/sample_python_crossbar.py"]
+ timeout = 60
diff --git a/support/testing/tests/package/test_python_cryptography.py b/support/testing/tests/package/test_python_cryptography.py
index 78c3ef55b3..14515fcd2d 100644
--- a/support/testing/tests/package/test_python_cryptography.py
+++ b/support/testing/tests/package/test_python_cryptography.py
@@ -1,34 +1,23 @@
-from tests.package.test_python import TestPythonBase
+from tests.package.test_python import TestPythonPackageBase
-class TestPythonCryptography(TestPythonBase):
- def fernet_test(self, timeout=-1):
- cmd = self.interpreter + " -c 'from cryptography.fernet import Fernet;"
- cmd += "key = Fernet.generate_key();"
- cmd += "f = Fernet(key)'"
- _, exit_code = self.emulator.run(cmd, timeout)
- self.assertEqual(exit_code, 0)
-
-
-class TestPythonPy2Cryptography(TestPythonCryptography):
- config = TestPythonBase.config + \
+class TestPythonPy2Cryptography(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON=y
BR2_PACKAGE_PYTHON_CRYPTOGRAPHY=y
"""
+ sample_scripts = ["tests/package/sample_python_cryptography.py"]
+ timeout = 40
- def test_run(self):
- self.login()
- self.fernet_test(40)
-
-class TestPythonPy3Cryptography(TestPythonCryptography):
- config = TestPythonBase.config + \
+class TestPythonPy3Cryptography(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON_CRYPTOGRAPHY=y
"""
-
- def test_run(self):
- self.login()
- self.fernet_test(40)
+ sample_scripts = ["tests/package/sample_python_cryptography.py"]
+ timeout = 40
diff --git a/support/testing/tests/package/test_python_incremental.py b/support/testing/tests/package/test_python_incremental.py
index acf743cdd2..49800d8937 100644
--- a/support/testing/tests/package/test_python_incremental.py
+++ b/support/testing/tests/package/test_python_incremental.py
@@ -1,34 +1,23 @@
-from tests.package.test_python import TestPythonBase
+from tests.package.test_python import TestPythonPackageBase
-class TestPythonIncremental(TestPythonBase):
- def str_test(self):
- cmd = self.interpreter + " -c 'import incremental;"
- cmd += "v = incremental.Version(\"package\", 1, 2, 3, release_candidate=4);"
- cmd += "assert(str(v) == \"[package, version 1.2.3rc4]\")'"
- _, exit_code = self.emulator.run(cmd, timeout=30)
- self.assertEqual(exit_code, 0)
-
-
-class TestPythonPy2Incremental(TestPythonIncremental):
- config = TestPythonBase.config + \
+class TestPythonPy2Incremental(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON=y
BR2_PACKAGE_PYTHON_INCREMENTAL=y
"""
+ sample_scripts = ["tests/package/sample_python_incremental.py"]
+ timeout = 30
- def test_run(self):
- self.login()
- self.str_test()
-
-class TestPythonPy3Incremental(TestPythonIncremental):
- config = TestPythonBase.config + \
+class TestPythonPy3Incremental(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON_INCREMENTAL=y
"""
-
- def test_run(self):
- self.login()
- self.str_test()
+ sample_scripts = ["tests/package/sample_python_incremental.py"]
+ timeout = 30
diff --git a/support/testing/tests/package/test_python_passlib.py b/support/testing/tests/package/test_python_passlib.py
new file mode 100644
index 0000000000..7c85882bf8
--- /dev/null
+++ b/support/testing/tests/package/test_python_passlib.py
@@ -0,0 +1,23 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Passlib(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_PASSLIB=y
+ """
+ sample_scripts = ["tests/package/sample_python_passlib.py"]
+ timeout = 30
+
+
+class TestPythonPy3Passlib(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_PASSLIB=y
+ """
+ sample_scripts = ["tests/package/sample_python_passlib.py"]
+ timeout = 30
diff --git a/support/testing/tests/package/test_python_pexpect.py b/support/testing/tests/package/test_python_pexpect.py
new file mode 100644
index 0000000000..ba31cdbdbe
--- /dev/null
+++ b/support/testing/tests/package/test_python_pexpect.py
@@ -0,0 +1,21 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Pexpect(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_PEXPECT=y
+ """
+ sample_scripts = ["tests/package/sample_python_pexpect.py"]
+
+
+class TestPythonPy3Pexpect(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_PEXPECT=y
+ """
+ sample_scripts = ["tests/package/sample_python_pexpect.py"]
diff --git a/support/testing/tests/package/test_python_pynacl.py b/support/testing/tests/package/test_python_pynacl.py
new file mode 100644
index 0000000000..729a887552
--- /dev/null
+++ b/support/testing/tests/package/test_python_pynacl.py
@@ -0,0 +1,27 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Pynacl(TestPythonPackageBase):
+ __test__ = True
+ # use haveged to generate enough entropy so pynacl -> libsodium don't hang waiting for /dev/random
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_PYNACL=y
+ BR2_PACKAGE_HAVEGED=y
+ """
+ sample_scripts = ["tests/package/sample_python_pynacl.py"]
+ timeout = 10
+
+
+class TestPythonPy3Pynacl(TestPythonPackageBase):
+ __test__ = True
+ # use haveged to generate enough entropy so pynacl -> libsodium don't hang waiting for /dev/random
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_PYNACL=y
+ BR2_PACKAGE_HAVEGED=y
+ """
+ sample_scripts = ["tests/package/sample_python_pynacl.py"]
+ timeout = 10
diff --git a/support/testing/tests/package/test_python_pyyaml.py b/support/testing/tests/package/test_python_pyyaml.py
new file mode 100644
index 0000000000..cd45a57b86
--- /dev/null
+++ b/support/testing/tests/package/test_python_pyyaml.py
@@ -0,0 +1,23 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Pyyaml(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_PYYAML=y
+ """
+ sample_scripts = ["tests/package/sample_python_pyyaml_enc.py",
+ "tests/package/sample_python_pyyaml_dec.py"]
+
+
+class TestPythonPy3Pyyaml(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_PYYAML=y
+ """
+ sample_scripts = ["tests/package/sample_python_pyyaml_enc.py",
+ "tests/package/sample_python_pyyaml_dec.py"]
diff --git a/support/testing/tests/package/test_python_service_identity.py b/support/testing/tests/package/test_python_service_identity.py
new file mode 100644
index 0000000000..6aeb77de8c
--- /dev/null
+++ b/support/testing/tests/package/test_python_service_identity.py
@@ -0,0 +1,23 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2ServiceIdentity(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_SERVICE_IDENTITY=y
+ """
+ sample_scripts = ["tests/package/sample_python_service_identity.py"]
+ timeout = 30
+
+
+class TestPythonPy3ServiceIdentity(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_SERVICE_IDENTITY=y
+ """
+ sample_scripts = ["tests/package/sample_python_service_identity.py"]
+ timeout = 30
diff --git a/support/testing/tests/package/test_python_subprocess32.py b/support/testing/tests/package/test_python_subprocess32.py
new file mode 100644
index 0000000000..d2878046d1
--- /dev/null
+++ b/support/testing/tests/package/test_python_subprocess32.py
@@ -0,0 +1,11 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Subprocess32(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_SUBPROCESS32=y
+ """
+ sample_scripts = ["tests/package/sample_python_subprocess32.py"]
diff --git a/support/testing/tests/package/test_python_treq.py b/support/testing/tests/package/test_python_treq.py
new file mode 100644
index 0000000000..7108b95696
--- /dev/null
+++ b/support/testing/tests/package/test_python_treq.py
@@ -0,0 +1,29 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonTreq(TestPythonPackageBase):
+ sample_scripts = ["tests/package/sample_python_treq.py"]
+
+ def run_sample_scripts(self):
+ cmd = self.interpreter + " sample_python_treq.py"
+ output, exit_code = self.emulator.run(cmd, timeout=20)
+ self.assertIn("Connection refused", output[0])
+ self.assertEqual(exit_code, 0)
+
+
+class TestPythonPy2Treq(TestPythonTreq):
+ __test__ = True
+ config = TestPythonTreq.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_TREQ=y
+ """
+
+
+class TestPythonPy3Treq(TestPythonTreq):
+ __test__ = True
+ config = TestPythonTreq.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_TREQ=y
+ """
diff --git a/support/testing/tests/package/test_python_twisted.py b/support/testing/tests/package/test_python_twisted.py
index ccee07d61d..a458ee45dd 100644
--- a/support/testing/tests/package/test_python_twisted.py
+++ b/support/testing/tests/package/test_python_twisted.py
@@ -1,25 +1,16 @@
-from tests.package.test_python import TestPythonBase
+from tests.package.test_python import TestPythonPackageBase
-TEST_SCRIPT = """
-from twisted.internet import protocol, reactor, endpoints
-class F(protocol.Factory):
- pass
-endpoints.serverFromString(reactor, "tcp:1234").listen(F())
-reactor.run()
-"""
+class TestPythonTwisted(TestPythonPackageBase):
+ config = TestPythonPackageBase.config
+ sample_scripts = ["tests/package/sample_python_twisted.py"]
-class TestPythonTwisted(TestPythonBase):
- def import_test(self):
- cmd = "printf '{}' > test.py".format(TEST_SCRIPT)
- _, exit_code = self.emulator.run(cmd)
- self.assertEqual(exit_code, 0)
-
+ def run_sample_scripts(self):
cmd = "netstat -ltn 2>/dev/null | grep 0.0.0.0:1234"
_, exit_code = self.emulator.run(cmd)
self.assertEqual(exit_code, 1)
- cmd = self.interpreter + " test.py &"
+ cmd = self.interpreter + " sample_python_twisted.py &"
# give some time to setup the server
cmd += "sleep 30"
_, exit_code = self.emulator.run(cmd, timeout=35)
@@ -31,24 +22,18 @@ class TestPythonTwisted(TestPythonBase):
class TestPythonPy2Twisted(TestPythonTwisted):
- config = TestPythonBase.config + \
+ __test__ = True
+ config = TestPythonTwisted.config + \
"""
BR2_PACKAGE_PYTHON=y
BR2_PACKAGE_PYTHON_TWISTED=y
"""
- def test_run(self):
- self.login()
- self.import_test()
-
class TestPythonPy3Twisted(TestPythonTwisted):
- config = TestPythonBase.config + \
+ __test__ = True
+ config = TestPythonTwisted.config + \
"""
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON_TWISTED=y
"""
-
- def test_run(self):
- self.login()
- self.import_test()
diff --git a/support/testing/tests/package/test_python_txaio.py b/support/testing/tests/package/test_python_txaio.py
index af93e031b5..7bff1bc23c 100644
--- a/support/testing/tests/package/test_python_txaio.py
+++ b/support/testing/tests/package/test_python_txaio.py
@@ -1,34 +1,22 @@
-from tests.package.test_python import TestPythonBase
+from tests.package.test_python import TestPythonPackageBase
-class TestPythonPy2Txaio(TestPythonBase):
- config = TestPythonBase.config + \
+class TestPythonPy2Txaio(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON=y
BR2_PACKAGE_PYTHON_TXAIO=y
BR2_PACKAGE_PYTHON_TWISTED=y
"""
+ sample_scripts = ["tests/package/sample_python_txaio_twisted.py"]
- def test_run(self):
- self.login()
- cmd = self.interpreter + " -c 'import txaio;"
- cmd += "txaio.use_twisted();"
- cmd += "f0 = txaio.create_future()'"
- _, exit_code = self.emulator.run(cmd)
- self.assertEqual(exit_code, 0)
-
-class TestPythonPy3Txaio(TestPythonBase):
- config = TestPythonBase.config + \
+class TestPythonPy3Txaio(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON_TXAIO=y
"""
-
- def test_run(self):
- self.login()
- cmd = self.interpreter + " -c 'import txaio;"
- cmd += "txaio.use_asyncio();"
- cmd += "f0 = txaio.create_future()'"
- _, exit_code = self.emulator.run(cmd)
- self.assertEqual(exit_code, 0)
+ sample_scripts = ["tests/package/sample_python_txaio_asyncio.py"]
diff --git a/support/testing/tests/package/test_python_txtorcon.py b/support/testing/tests/package/test_python_txtorcon.py
index 352ff67825..1ac2f6919a 100644
--- a/support/testing/tests/package/test_python_txtorcon.py
+++ b/support/testing/tests/package/test_python_txtorcon.py
@@ -1,32 +1,23 @@
-from tests.package.test_python import TestPythonBase
+from tests.package.test_python import TestPythonPackageBase
-class TestPythonTxtorcon(TestPythonBase):
- def import_test(self):
- cmd = self.interpreter + " -c 'import txtorcon'"
- _, exit_code = self.emulator.run(cmd, timeout=30)
- self.assertEqual(exit_code, 0)
-
-
-class TestPythonPy2Txtorcon(TestPythonTxtorcon):
- config = TestPythonBase.config + \
+class TestPythonPy2Txtorcon(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON=y
BR2_PACKAGE_PYTHON_TXTORCON=y
"""
+ sample_scripts = ["tests/package/sample_python_txtorcon.py"]
+ timeout = 30
- def test_run(self):
- self.login()
- self.import_test()
-
-class TestPythonPy3Txtorcon(TestPythonTxtorcon):
- config = TestPythonBase.config + \
+class TestPythonPy3Txtorcon(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON_TXTORCON=y
"""
-
- def test_run(self):
- self.login()
- self.import_test()
+ sample_scripts = ["tests/package/sample_python_txtorcon.py"]
+ timeout = 30
diff --git a/support/testing/tests/package/test_python_ubjson.py b/support/testing/tests/package/test_python_ubjson.py
new file mode 100644
index 0000000000..85c707e292
--- /dev/null
+++ b/support/testing/tests/package/test_python_ubjson.py
@@ -0,0 +1,23 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Ubjson(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_UBJSON=y
+ """
+ sample_scripts = ["tests/package/sample_python_ubjson_enc.py",
+ "tests/package/sample_python_ubjson_dec.py"]
+
+
+class TestPythonPy3Ubjson(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_UBJSON=y
+ """
+ sample_scripts = ["tests/package/sample_python_ubjson_enc.py",
+ "tests/package/sample_python_ubjson_dec.py"]
diff --git a/support/testing/tests/package/test_rust.py b/support/testing/tests/package/test_rust.py
index 2dc814f99d..9854c3692e 100644
--- a/support/testing/tests/package/test_rust.py
+++ b/support/testing/tests/package/test_rust.py
@@ -57,25 +57,25 @@ class TestRustBase(infra.basetest.BRTest):
class TestRustBin(TestRustBase):
config = \
- """
- BR2_arm=y
- BR2_cortex_a9=y
- BR2_ARM_ENABLE_NEON=y
- BR2_ARM_ENABLE_VFP=y
- BR2_TOOLCHAIN_EXTERNAL=y
- BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
- BR2_SYSTEM_DHCP="eth0"
- BR2_LINUX_KERNEL=y
- BR2_LINUX_KERNEL_CUSTOM_VERSION=y
- BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11.3"
- BR2_LINUX_KERNEL_DEFCONFIG="vexpress"
- BR2_LINUX_KERNEL_DTS_SUPPORT=y
- BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9"
- BR2_TARGET_ROOTFS_CPIO=y
- # BR2_TARGET_ROOTFS_TAR is not set
- BR2_PACKAGE_HOST_CARGO=y
- BR2_PACKAGE_HOST_RUSTC=y
- """
+ """
+ BR2_arm=y
+ BR2_cortex_a9=y
+ BR2_ARM_ENABLE_NEON=y
+ BR2_ARM_ENABLE_VFP=y
+ BR2_TOOLCHAIN_EXTERNAL=y
+ BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
+ BR2_SYSTEM_DHCP="eth0"
+ BR2_LINUX_KERNEL=y
+ BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+ BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11.3"
+ BR2_LINUX_KERNEL_DEFCONFIG="vexpress"
+ BR2_LINUX_KERNEL_DTS_SUPPORT=y
+ BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9"
+ BR2_TARGET_ROOTFS_CPIO=y
+ # BR2_TARGET_ROOTFS_TAR is not set
+ BR2_PACKAGE_HOST_CARGO=y
+ BR2_PACKAGE_HOST_RUSTC=y
+ """
def test_run(self):
self.build_test_prog()
@@ -86,26 +86,26 @@ class TestRustBin(TestRustBase):
class TestRust(TestRustBase):
config = \
- """
- BR2_arm=y
- BR2_cortex_a9=y
- BR2_ARM_ENABLE_NEON=y
- BR2_ARM_ENABLE_VFP=y
- BR2_TOOLCHAIN_EXTERNAL=y
- BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
- BR2_SYSTEM_DHCP="eth0"
- BR2_LINUX_KERNEL=y
- BR2_LINUX_KERNEL_CUSTOM_VERSION=y
- BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11.3"
- BR2_LINUX_KERNEL_DEFCONFIG="vexpress"
- BR2_LINUX_KERNEL_DTS_SUPPORT=y
- BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9"
- BR2_TARGET_ROOTFS_CPIO=y
- # BR2_TARGET_ROOTFS_TAR is not set
- BR2_PACKAGE_HOST_CARGO=y
- BR2_PACKAGE_HOST_RUSTC=y
- BR2_PACKAGE_HOST_RUST=y
- """
+ """
+ BR2_arm=y
+ BR2_cortex_a9=y
+ BR2_ARM_ENABLE_NEON=y
+ BR2_ARM_ENABLE_VFP=y
+ BR2_TOOLCHAIN_EXTERNAL=y
+ BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
+ BR2_SYSTEM_DHCP="eth0"
+ BR2_LINUX_KERNEL=y
+ BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+ BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11.3"
+ BR2_LINUX_KERNEL_DEFCONFIG="vexpress"
+ BR2_LINUX_KERNEL_DTS_SUPPORT=y
+ BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9"
+ BR2_TARGET_ROOTFS_CPIO=y
+ # BR2_TARGET_ROOTFS_TAR is not set
+ BR2_PACKAGE_HOST_CARGO=y
+ BR2_PACKAGE_HOST_RUSTC=y
+ BR2_PACKAGE_HOST_RUST=y
+ """
def test_run(self):
self.build_test_prog()
diff --git a/toolchain/Config.in b/toolchain/Config.in
index 196612b8b0..bf8ed5bf5b 100644
--- a/toolchain/Config.in
+++ b/toolchain/Config.in
@@ -366,10 +366,15 @@ config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18
bool
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17
+config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19
+ bool
+ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18
+
# This order guarantees that the highest version is set, as kconfig
# stops affecting a value on the first matching default.
config BR2_TOOLCHAIN_HEADERS_AT_LEAST
string
+ default "4.19" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19
default "4.18" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18
default "4.17" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17
default "4.16" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_16
diff --git a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in
index 2bfa567672..be6e56a2cb 100644
--- a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in
+++ b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in
@@ -1,19 +1,19 @@
config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS
- bool "Codescape IMG GNU Linux Toolchain 2016.05"
+ bool "Codescape IMG GNU Linux Toolchain 2018.09"
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
- depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5
+ depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
depends on BR2_MIPS_CPU_MIPS32R6 || (BR2_MIPS_CPU_MIPS64R6 && !BR2_MIPS_SOFT_FLOAT)
select BR2_TOOLCHAIN_EXTERNAL_GLIBC
select BR2_INSTALL_LIBSTDCPP
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7
- select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+ select BR2_TOOLCHAIN_GCC_AT_LEAST_6
select BR2_TOOLCHAIN_HAS_FORTRAN
help
- Codescape IMG GNU Linux Toolchain 2016.05 for the MIPS
- architecture, from Imagination Technologies. It uses gcc
- 4.9.2, binutils 2.24.90, glibc 2.20, gdb 7.9.1 and kernel
- headers 4.7. It has support for the following variants:
+ Codescape IMG GNU Linux Toolchain 2018.09 for the MIPS
+ architecture, from MIPS Tech LLC. It uses gcc 6.3.0,
+ binutils 2.28.51, glibc 2.20, gdb 7.9.1 and kernel headers
+ 4.7. It has support for the following variants:
- MIPS32r6 - Big-Endian, Hard-Float, 2008 NaN, o32 ABI
Select 'MIPS (big endian)' Target Architecture
Select 'mips 32r6' Target Architecture Variant
diff --git a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.hash b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.hash
index 6a12cfa078..b540164a29 100644
--- a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.hash
+++ b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.hash
@@ -1,4 +1,4 @@
-# Codescape toolchains from Imagination Technologies
-# From: http://codescape-mips-sdk.imgtec.com/components/toolchain/2016.05-06/downloads.html
-sha256 8d9cdf711dd402d7bf82883d425c221038fe8ce9d0c91a3f6b30939d9d55476c Codescape.GNU.Tools.Package.2016.05-06.for.MIPS.IMG.Linux.CentOS-5.x86.tar.gz
-sha256 6e2784d6df962fe4db7510c8a62ce3947b73f54207b10e18b52da59d1bc487bd Codescape.GNU.Tools.Package.2016.05-06.for.MIPS.IMG.Linux.CentOS-5.x86_64.tar.gz
+# Codescape toolchains from MIPS Tech LLC
+# From: https://codescape.mips.com/components/toolchain/nanomips/2018.09-02/downloads.html
+sha256 ac035f3b6a8767522977963d8e1490520d58bccca7956f4503a1eefff6492b71 Codescape.GNU.Tools.Package.2018.09-02.for.MIPS.IMG.Linux.CentOS-6.x86.tar.gz
+sha256 09280f4fcbb993607905bf9a43bf5f3db2beed85726f0675b8453e19a9ddc429 Codescape.GNU.Tools.Package.2018.09-02.for.MIPS.IMG.Linux.CentOS-6.x86_64.tar.gz
diff --git a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.mk b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.mk
index 49a7027dfb..55424918c7 100644
--- a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.mk
+++ b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/toolchain-external-codescape-img-mips.mk
@@ -4,14 +4,14 @@
#
################################################################################
-TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION = 2016.05-06
-TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SITE = http://codescape-mips-sdk.imgtec.com/components/toolchain/$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION)
+TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION = 2018.09-02
+TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SITE = https://codescape.mips.com/components/toolchain/$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION)
TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_STRIP_COMPONENTS = 2
ifeq ($(HOSTARCH),x86)
-TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION).for.MIPS.IMG.Linux.CentOS-5.x86.tar.gz
+TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION).for.MIPS.IMG.Linux.CentOS-6.x86.tar.gz
else
-TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION).for.MIPS.IMG.Linux.CentOS-5.x86_64.tar.gz
+TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS_VERSION).for.MIPS.IMG.Linux.CentOS-6.x86_64.tar.gz
endif
# Special fixup for Codescape MIPS toolchains, that have bin-<abi> and
diff --git a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in
index 5d466a58f4..15d6284766 100644
--- a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in
+++ b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in
@@ -1,20 +1,20 @@
config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS
- bool "Codescape MTI GNU Linux Toolchain 2016.05"
+ bool "Codescape MTI GNU Linux Toolchain 2018.09"
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
- depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5
+ depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
depends on BR2_MIPS_CPU_MIPS32R2 || (BR2_MIPS_CPU_MIPS64R2 && !BR2_MIPS_SOFT_FLOAT) || \
BR2_MIPS_CPU_MIPS32R5 || (BR2_MIPS_CPU_MIPS64R5 && !BR2_MIPS_SOFT_FLOAT)
select BR2_TOOLCHAIN_EXTERNAL_GLIBC
select BR2_INSTALL_LIBSTDCPP
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7
- select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+ select BR2_TOOLCHAIN_GCC_AT_LEAST_6
select BR2_TOOLCHAIN_HAS_FORTRAN
help
- Codescape MTI GNU Linux Toolchain 2016.05 for the MIPS
- architecture, from Imagination Technologies. It uses gcc
- 4.9.2, binutils 2.24.90, glibc 2.20, gdb 7.9.1 and kernel
- headers 4.7. It has support for the following variants:
+ Codescape MTI GNU Linux Toolchain 2018.09 for the MIPS
+ architecture, from MIPS Tech LLC. It uses gcc 6.3.0,
+ binutils 2.28.51, glibc 2.20, gdb 7.9.1 and kernel headers
+ 4.7. It has support for the following variants:
- MIPS32r2 - Big-Endian, Hard-Float, Legacy NaN, o32 ABI
Select 'MIPS (big endian)' Target Architecture
Select 'mips 32r2' Target Architecture Variant
diff --git a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.hash b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.hash
index d31f99803b..8e70af501f 100644
--- a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.hash
+++ b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.hash
@@ -1,4 +1,4 @@
-# Codescape toolchains from Imagination Technologies
-# From: http://codescape-mips-sdk.imgtec.com/components/toolchain/2016.05-06/downloads.html
-sha256 3a7aba259beb05f0e3054b5a61a368a5085447f47361949a938ac9cc7de4227b Codescape.GNU.Tools.Package.2016.05-06.for.MIPS.MTI.Linux.CentOS-5.x86.tar.gz
-sha256 a676a8b3647c8c651fb8935a75db8f00b79d36ec55676f7c05bac12b550788f7 Codescape.GNU.Tools.Package.2016.05-06.for.MIPS.MTI.Linux.CentOS-5.x86_64.tar.gz
+# Codescape toolchains from MIPS Tech LLC
+# From: https://codescape.mips.com/components/toolchain/nanomips/2018.09-02/downloads.html
+sha256 c883a404fd7ea5718e2249a530802e223381f2be52265f88e9b1ce7035c232f3 Codescape.GNU.Tools.Package.2018.09-02.for.MIPS.MTI.Linux.CentOS-6.x86.tar.gz
+sha256 d6310a970b0a8a19ad8e0a2b3ead8c38ee90d0e284a9b2511200ce447f460d2c Codescape.GNU.Tools.Package.2018.09-02.for.MIPS.MTI.Linux.CentOS-6.x86_64.tar.gz
diff --git a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.mk b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.mk
index d63a367578..9bee1ab87d 100644
--- a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.mk
+++ b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/toolchain-external-codescape-mti-mips.mk
@@ -4,14 +4,14 @@
#
################################################################################
-TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION = 2016.05-06
-TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SITE = http://codescape-mips-sdk.imgtec.com/components/toolchain/$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION)
+TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION = 2018.09-02
+TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SITE = https://codescape.mips.com/components/toolchain/$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION)
TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_STRIP_COMPONENTS = 2
ifeq ($(HOSTARCH),x86)
-TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION).for.MIPS.MTI.Linux.CentOS-5.x86.tar.gz
+TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION).for.MIPS.MTI.Linux.CentOS-6.x86.tar.gz
else
-TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION).for.MIPS.MTI.Linux.CentOS-5.x86_64.tar.gz
+TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_SOURCE = Codescape.GNU.Tools.Package.$(TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS_VERSION).for.MIPS.MTI.Linux.CentOS-6.x86_64.tar.gz
endif
# Special fixup for Codescape MIPS toolchains, that have bin-<abi> and
diff --git a/toolchain/toolchain-external/toolchain-external-custom/Config.in.options b/toolchain/toolchain-external/toolchain-external-custom/Config.in.options
index 8665d2e2a7..288fc3f3e0 100644
--- a/toolchain/toolchain-external/toolchain-external-custom/Config.in.options
+++ b/toolchain/toolchain-external/toolchain-external-custom/Config.in.options
@@ -123,6 +123,10 @@ choice
m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF
p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_19
+ bool "4.19.x"
+ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19
+
config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_18
bool "4.18.x"
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18
diff --git a/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in b/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in
index 423e4c7db3..5cb0ce2a3e 100644
--- a/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in
+++ b/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in
@@ -1,7 +1,7 @@
config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC
- bool "Synopsys ARC 2018.03 toolchain"
+ bool "Synopsys ARC 2018.09 toolchain"
depends on BR2_arc
- depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7
+ depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8
depends on BR2_HOSTARCH = "x86_64"
select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
select BR2_INSTALL_LIBSTDCPP
@@ -12,7 +12,7 @@ config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC
select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
select BR2_TOOLCHAIN_HAS_SSP
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_15
- select BR2_TOOLCHAIN_GCC_AT_LEAST_7
+ select BR2_TOOLCHAIN_GCC_AT_LEAST_8
help
Toolchain for the ARC cores, from
https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases
diff --git a/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.hash b/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.hash
index df95897e41..20eac19caa 100644
--- a/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.hash
+++ b/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.hash
@@ -1,5 +1,5 @@
-# From https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2018.03-release
-sha256 32e8500b65737b51058d84f443d7919d5b33c43f7dc5b8562e08d4e92c53a77f arc_gnu_2018.03_prebuilt_uclibc_le_arc700_linux_install.tar.gz
-sha256 722e3656f60bafd632b6f2ae2c6efa6b9d3eae1bc1840f4d004aa30f5cb419ff arc_gnu_2018.03_prebuilt_uclibc_be_arc700_linux_install.tar.gz
-sha256 8e736178343cea9a6cbe63a7d86fa9e81db6671f27fc8a9a7cea98cc6183bbcc arc_gnu_2018.03_prebuilt_uclibc_le_archs_linux_install.tar.gz
-sha256 14024daa36f6ae7cf1e474780687e79af5aaa35d374b077f7036685d7eab3d72 arc_gnu_2018.03_prebuilt_uclibc_be_archs_linux_install.tar.gz
+# From https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2018.09-release
+sha256 324b422eec3b9b36ea64c9e13167a4467fc13ab230eff34f2fa785039b460c16 arc_gnu_2018.09_prebuilt_uclibc_le_arc700_linux_install.tar.gz
+sha256 b0299ad9be0c300237789e5bf8e45d72bf040aab00c3718fbdb4160b75d2ed8f arc_gnu_2018.09_prebuilt_uclibc_be_arc700_linux_install.tar.gz
+sha256 d1a4c039416b3da4d94ea066f861cc96ec60afec9c2bab1b2e937555b5e05238 arc_gnu_2018.09_prebuilt_uclibc_le_archs_linux_install.tar.gz
+sha256 a519ed3686dc8e3c5f86646988d38647aa039f4af3204d9b7e84efa26cd37221 arc_gnu_2018.09_prebuilt_uclibc_be_archs_linux_install.tar.gz
diff --git a/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.mk b/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.mk
index c60f296a89..e3ff17ff7b 100644
--- a/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.mk
+++ b/toolchain/toolchain-external/toolchain-external-synopsys-arc/toolchain-external-synopsys-arc.mk
@@ -4,7 +4,7 @@
#
################################################################################
-TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_VERSION = 2018.03
+TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_VERSION = 2018.09
TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_SITE = https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/download/arc-$(TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_VERSION)-release
ifeq ($(BR2_arc750d)$(BR2_arc770d),y)
diff --git a/utils/test-pkg b/utils/test-pkg
index aa91ee02cf..e4f68ed061 100755
--- a/utils/test-pkg
+++ b/utils/test-pkg
@@ -129,7 +129,7 @@ build_one() {
mkdir -p "${dir}"
- support/kconfig/merge_config.sh -O "${dir}" \
+ CONFIG_= support/kconfig/merge_config.sh -O "${dir}" \
"${toolchainconfig}" "support/config-fragments/minimal.config" "${cfg}" \
>> "${dir}/logfile" 2>&1
# We want all the options from the snippet to be present as-is (set