2
1
Эх сурвалжийг харах

Merge branch 'next'

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Peter Korsgaard 7 жил өмнө
parent
commit
721e4cbb52
100 өөрчлөгдсөн 1224 нэмэгдсэн , 413 устгасан
  1. 1 2
      .gitlab-ci.yml
  2. 1 2
      .gitlab-ci.yml.in
  3. 53 0
      Config.in.legacy
  4. 38 0
      DEVELOPERS
  5. 18 3
      Makefile
  6. 8 0
      boot/uboot/Config.in
  7. 4 0
      boot/uboot/uboot.mk
  8. 1 1
      configs/arm_juno_defconfig
  9. 1 1
      configs/zynq_microzed_defconfig
  10. 1 1
      configs/zynq_zc706_defconfig
  11. 1 1
      configs/zynq_zed_defconfig
  12. 17 9
      docs/manual/using-buildroot-toolchain.txt
  13. 1 0
      fs/Config.in
  14. 50 0
      fs/btrfs/Config.in
  15. 36 0
      fs/btrfs/btrfs.mk
  16. 2 2
      linux/Config.in
  17. 28 0
      package/Config.in
  18. 3 0
      package/Config.in.host
  19. 9 9
      package/Makefile.in
  20. 0 1
      package/acpid/Config.in
  21. 2 2
      package/acpid/acpid.hash
  22. 1 1
      package/acpid/acpid.mk
  23. 0 1
      package/alljoyn/Config.in
  24. 2 4
      package/alljoyn/alljoyn.mk
  25. 171 0
      package/asterisk/0007-res_srtp-Add-support-for-libsrtp2-with-AES-GCM.patch
  26. 52 0
      package/atop/0001-Include-sysmacros.h-to-compile-with-newer-gcc.patch
  27. 0 2
      package/blktrace/Config.in
  28. 2 2
      package/boost/boost.hash
  29. 1 1
      package/boost/boost.mk
  30. 6 4
      package/botan/0001-remove-mips64-explicit-mabi.patch
  31. 4 2
      package/botan/Config.in
  32. 4 2
      package/botan/botan.hash
  33. 37 12
      package/botan/botan.mk
  34. 0 1
      package/btrfs-progs/Config.in
  35. 6 0
      package/btrfs-progs/Config.in.host
  36. 1 1
      package/btrfs-progs/btrfs-progs.hash
  37. 20 2
      package/btrfs-progs/btrfs-progs.mk
  38. 2 1
      package/c-periphery/c-periphery.hash
  39. 1 1
      package/c-periphery/c-periphery.mk
  40. 0 43
      package/ccache/0001-Convert-argument-to-sysroot-option-to-relative-path.patch
  41. 4 3
      package/ccache/ccache.hash
  42. 4 4
      package/ccache/ccache.mk
  43. 43 0
      package/checksec/0001-checksec-Fixed-issue-with-relative-path.patch
  44. 17 0
      package/checksec/Config.in.host
  45. 3 0
      package/checksec/checksec.hash
  46. 16 0
      package/checksec/checksec.mk
  47. 1 1
      package/coreutils/coreutils.hash
  48. 1 1
      package/coreutils/coreutils.mk
  49. 1 0
      package/cryptsetup/Config.in
  50. 1 1
      package/cryptsetup/cryptsetup.hash
  51. 4 2
      package/cryptsetup/cryptsetup.mk
  52. 0 58
      package/dt-utils/0001-common-Rename-strlcpy-to-DT_strlcpy.patch
  53. 0 38
      package/dt-utils/0002-common-Include-sys-types.h-header.patch
  54. 3 0
      package/dt-utils/dt-utils.hash
  55. 1 1
      package/dt-utils/dt-utils.mk
  56. 16 0
      package/duktape/Config.in
  57. 3 0
      package/duktape/duktape.hash
  58. 27 0
      package/duktape/duktape.mk
  59. 2 1
      package/e2fsprogs/e2fsprogs.mk
  60. 4 4
      package/expat/expat.hash
  61. 4 1
      package/expat/expat.mk
  62. 0 138
      package/flatcc/0001-Remove-strncpy-gcc-8-warning-add-flatbuffers_type_ha.patch
  63. 2 1
      package/flatcc/flatcc.hash
  64. 1 1
      package/flatcc/flatcc.mk
  65. 2 1
      package/fmt/fmt.hash
  66. 1 1
      package/fmt/fmt.mk
  67. 5 0
      package/freescale-imx/Config.in
  68. 3 1
      package/freescale-imx/imx-codec/imx-codec.hash
  69. 1 1
      package/freescale-imx/imx-codec/imx-codec.mk
  70. 3 1
      package/freescale-imx/imx-parser/imx-parser.hash
  71. 1 1
      package/freescale-imx/imx-parser/imx-parser.mk
  72. 44 0
      package/freescale-imx/imx-vpu-hantro/0001-Fix-ion.h-header-inclusion-to-be-standard.patch
  73. 20 0
      package/freescale-imx/imx-vpu-hantro/Config.in
  74. 3 0
      package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.hash
  75. 42 0
      package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.mk
  76. 5 8
      package/freescale-imx/imx-vpu/Config.in
  77. 3 1
      package/freescale-imx/imx-vpu/imx-vpu.hash
  78. 1 1
      package/freescale-imx/imx-vpu/imx-vpu.mk
  79. 5 6
      package/freescale-imx/imx-vpuwrap/Config.in
  80. 3 1
      package/freescale-imx/imx-vpuwrap/imx-vpuwrap.hash
  81. 9 2
      package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk
  82. 2 1
      package/fwup/fwup.hash
  83. 1 1
      package/fwup/fwup.mk
  84. 0 1
      package/gadgetfs-test/Config.in
  85. 71 0
      package/gcc/4.9.4/0003-libsanitizer-Use-pre-computed-size.patch
  86. 72 0
      package/gcc/5.5.0/0002-libsanitizer-Use-pre-computed-size.patch
  87. 72 0
      package/gcc/6.4.0/0003-libsanitizer-Use-pre-computed-size.patch
  88. 0 0
      package/gcc/7.3.0/0003-xtensa-fix-PR-target-65416.patch
  89. 72 0
      package/gcc/7.3.0/0004-libsanitizer-Use-pre-computed-size.patch
  90. 9 2
      package/git-crypt/Config.in
  91. 5 2
      package/git-crypt/git-crypt.hash
  92. 3 2
      package/git-crypt/git-crypt.mk
  93. 1 1
      package/glibc/glibc.hash
  94. 1 1
      package/glibc/glibc.mk
  95. 5 2
      package/glibmm/glibmm.hash
  96. 2 2
      package/glibmm/glibmm.mk
  97. 1 1
      package/glorytun/glorytun.hash
  98. 1 1
      package/glorytun/glorytun.mk
  99. 7 1
      package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk
  100. 5 1
      package/gzip/gzip.hash

+ 1 - 2
.gitlab-ci.yml

@@ -43,8 +43,7 @@ check-flake8:
 
 check-package:
     script:
-        - find . -type f \( -name '*.mk' -o -name '*.hash' -o -name 'Config.*' \)
-            -exec ./utils/check-package {} +
+        - make check-package
 
 .defconfig: &defconfig
     # Running the defconfigs for every push is too much, so limit to

+ 1 - 2
.gitlab-ci.yml.in

@@ -43,8 +43,7 @@ check-flake8:
 
 check-package:
     script:
-        - find . -type f \( -name '*.mk' -o -name '*.hash' -o -name 'Config.*' \)
-            -exec ./utils/check-package {} +
+        - make check-package
 
 .defconfig: &defconfig
     # Running the defconfigs for every push is too much, so limit to

+ 53 - 0
Config.in.legacy

@@ -142,6 +142,59 @@ comment "unpredictable ways.                                 "
 comment "----------------------------------------------------"
 endif
 
+###############################################################################
+comment "Legacy options removed in 2018.11"
+
+config BR2_KERNEL_HEADERS_4_10
+	bool "kernel headers version 4.10.x are no longer supported"
+	select BR2_KERNEL_HEADERS_4_9
+	select BR2_LEGACY
+	help
+	  Version 4.10.x of the Linux kernel headers are no longer
+	  maintained upstream and are now removed. As an alternative,
+	  version 4.14.x of the headers have been automatically
+	  selected in your configuration.
+
+config BR2_KERNEL_HEADERS_4_11
+	bool "kernel headers version 4.11.x are no longer supported"
+	select BR2_KERNEL_HEADERS_4_9
+	select BR2_LEGACY
+	help
+	  Version 4.11.x of the Linux kernel headers are no longer
+	  maintained upstream and are now removed. As an alternative,
+	  version 4.14.x of the headers have been automatically
+	  selected in your configuration.
+
+config BR2_KERNEL_HEADERS_4_12
+	bool "kernel headers version 4.12.x are no longer supported"
+	select BR2_KERNEL_HEADERS_4_19
+	select BR2_LEGACY
+	help
+	  Version 4.12.x of the Linux kernel headers are no longer
+	  maintained upstream and are now removed. As an alternative,
+	  version 4.14.x of the headers have been automatically
+	  selected in your configuration.
+
+config BR2_KERNEL_HEADERS_4_13
+	bool "kernel headers version 4.13.x are no longer supported"
+	select BR2_KERNEL_HEADERS_4_19
+	select BR2_LEGACY
+	help
+	  Version 4.13.x of the Linux kernel headers are no longer
+	  maintained upstream and are now removed. As an alternative,
+	  version 4.14.x of the headers have been automatically
+	  selected in your configuration.
+
+config BR2_KERNEL_HEADERS_4_15
+	bool "kernel headers version 4.15.x are no longer supported"
+	select BR2_KERNEL_HEADERS_4_14
+	select BR2_LEGACY
+	help
+	  Version 4.15.x of the Linux kernel headers are no longer
+	  maintained upstream and are now removed. As an alternative,
+	  version 4.14.x of the headers have been automatically
+	  selected in your configuration.
+
 ###############################################################################
 comment "Legacy options removed in 2018.08"
 

+ 38 - 0
DEVELOPERS

@@ -53,6 +53,7 @@ F:	package/nginx-naxsi/
 F:	package/policycoreutils/
 F:	package/python-flask-sqlalchemy/
 F:	package/python-mutagen/
+F:	package/python-pip/
 F:	package/python-psycopg2/
 F:	package/python-sqlalchemy/
 F:	package/python-visitor/
@@ -330,6 +331,7 @@ F:	package/libyuv/
 F:	package/mesa3d/
 F:	package/minidlna/
 F:	package/mjpg-streamer/
+F:	package/perl-crypt-openssl-guess/
 F:	package/perl-crypt-openssl-random/
 F:	package/perl-crypt-openssl-rsa/
 F:	package/perl-digest-sha1/
@@ -470,6 +472,7 @@ F:	package/docker-proxy/
 F:	package/mosh/
 F:	package/rtl8821au/
 F:	package/runc/
+F:	package/tini/
 
 N:	Christophe Vu-Brugier <cvubrugier@fastmail.fm>
 F:	package/drbd-utils/
@@ -479,6 +482,29 @@ F:	package/python-rtslib-fb/
 F:	package/python-urwid/
 F:	package/targetcli-fb/
 
+N:	Christopher McCrory <chrismcc@gmail.com>
+F:	package/perl-appconfig/
+F:	package/perl-astro-suntime/
+F:	package/perl-class-std/
+F:	package/perl-class-std-fast/
+F:	package/perl-data-optlist/
+F:	package/perl-data-uuid/
+F:	package/perl-date-manip/
+F:	package/perl-dbi/
+F:	package/perl-device-serialport/
+F:	package/perl-file-slurp/
+F:	package/perl-io-interface/
+F:	package/perl-io-socket-multicast/
+F:	package/perl-json-maybexs/
+F:	package/perl-mime-tools/
+F:	package/perl-module-implementation/
+F:	package/perl-module-runtime/
+F:	package/perl-number-bytes-human/
+F:	package/perl-params-util/
+F:	package/perl-sub-install/
+F:	package/perl-sys-meminfo/
+F:	package/perl-sys-mmap/
+
 N:	Clayton Shotwell <clayton.shotwell@rockwellcollins.com>
 F:	package/audit/
 F:	package/checkpolicy/
@@ -693,6 +719,7 @@ F:	package/alljoyn-tcl/
 F:	package/alljoyn-tcl-base/
 F:	package/boinc/
 F:	package/cairo/
+F:	package/duktape/
 F:	package/expat/
 F:	package/flatbuffers/
 F:	package/gtksourceview/
@@ -853,6 +880,10 @@ F:	package/libsrtp/
 F:	package/libwebsock/
 F:	package/sofia-sip/
 
+N:	Grzegorz Blach <grzegorz@blach.pl>
+F:	package/python-falcon/
+F:	package/python-mimeparse/
+
 N:	Guillaume Gardet <guillaume.gardet@oliseo.fr>
 F:	package/c-icap/
 F:	package/c-icap-modules/
@@ -1290,6 +1321,7 @@ F:	package/aufs-util/
 F:	package/bc/
 F:	package/bridge-utils/
 F:	package/checkpolicy/
+F:	package/checksec/
 F:	package/cgroupfs-mount/
 F:	package/crda/
 F:	package/devmem2/
@@ -1331,6 +1363,7 @@ F:	package/mtd/
 F:	package/mtools/
 F:	package/nginx-upload/
 F:	package/omniorb/
+F:	package/openresolv/
 F:	package/paxtest/
 F:	package/picocom/
 F:	package/policycoreutils/
@@ -1348,6 +1381,7 @@ F:	package/rsyslog/
 F:	package/setools/
 F:	package/smcroute/
 F:	package/tclap/
+F:	package/tini/
 F:	package/uboot-tools/
 F:	package/unionfs/
 F:	package/valijson/
@@ -1508,6 +1542,9 @@ F:	package/openjpeg/
 N:	Olivier Singla <olivier.singla@gmail.com>
 F:	package/shellinabox/
 
+N:	Paresh Chaudhary <paresh.chaudhary@rockwellcollins.com>
+F:	package/checksec/
+
 N:	Parnell Springmeyer <parnell@digitalmentat.com>
 F:	package/scrypt/
 
@@ -1563,6 +1600,7 @@ F:	package/python-ipaddr/
 F:	package/python-pam/
 F:	package/python-psutil/
 F:	package/python-request-id/
+F:	package/python-semver/
 F:	package/python-texttable/
 F:	package/python-validators/
 F:	package/python-webob/

+ 18 - 3
Makefile

@@ -130,7 +130,7 @@ export BR2_VERSION_FULL := $(BR2_VERSION)$(shell $(TOPDIR)/support/scripts/setlo
 noconfig_targets := menuconfig nconfig gconfig xconfig config oldconfig randconfig \
 	defconfig %_defconfig allyesconfig allnoconfig alldefconfig silentoldconfig release \
 	randpackageconfig allyespackageconfig allnopackageconfig \
-	print-version olddefconfig distclean manual manual-%
+	print-version olddefconfig distclean manual manual-% check-package
 
 # Some global targets do not trigger a build, but are used to collect
 # metadata, or do various checks. When such targets are triggered,
@@ -573,8 +573,8 @@ prepare: $(BUILD_DIR)/buildroot-config/auto.conf
 .PHONY: world
 world: target-post-image
 
-.PHONY: sdk
-sdk: world
+.PHONY: prepare-sdk
+prepare-sdk: world
 	@$(call MESSAGE,"Rendering the SDK relocatable")
 	$(TOPDIR)/support/scripts/fix-rpath host
 	$(TOPDIR)/support/scripts/fix-rpath staging
@@ -582,6 +582,17 @@ sdk: world
 	mkdir -p $(HOST_DIR)/share/buildroot
 	echo $(HOST_DIR) > $(HOST_DIR)/share/buildroot/sdk-location
 
+BR2_SDK_PREFIX ?= $(GNU_TARGET_NAME)_sdk-buildroot
+.PHONY: sdk
+sdk: prepare-sdk $(BR2_TAR_HOST_DEPENDENCY)
+	@$(call MESSAGE,"Generating SDK tarball")
+	$(if $(BR2_SDK_PREFIX),,$(error BR2_SDK_PREFIX can not be empty))
+	$(Q)mkdir -p $(BINARIES_DIR)
+	$(TAR) czf "$(BINARIES_DIR)/$(BR2_SDK_PREFIX).tar.gz" \
+		--owner=0 --group=0 --numeric-owner \
+		--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)
@@ -1125,6 +1136,10 @@ release:
 print-version:
 	@echo $(BR2_VERSION_FULL)
 
+check-package:
+	find $(TOPDIR) -type f \( -name '*.mk' -o -name '*.hash' -o -name 'Config.*' \) \
+		-exec ./utils/check-package {} +
+
 .PHONY: .gitlab-ci.yml
 .gitlab-ci.yml: .gitlab-ci.yml.in
 	cp $< $@

+ 8 - 0
boot/uboot/Config.in

@@ -159,6 +159,14 @@ config BR2_TARGET_UBOOT_NEEDS_OPENSSL
 	  typically the case when the board configuration has
 	  CONFIG_FIT_SIGNATURE enabled.
 
+config BR2_TARGET_UBOOT_NEEDS_LZOP
+	bool "U-Boot needs lzop"
+	help
+	  Select this option if your U-Boot board configuration
+	  requires lzop to be available on the host. This is typically
+	  the case when the board configuration has CONFIG_SPL_LZO
+	  enabled.
+
 config BR2_TARGET_UBOOT_NEEDS_ATF_BL31
 	bool "U-Boot needs ATF BL31"
 	depends on BR2_TARGET_ARM_TRUSTED_FIRMWARE

+ 4 - 0
boot/uboot/uboot.mk

@@ -152,6 +152,10 @@ ifeq ($(BR2_TARGET_UBOOT_NEEDS_OPENSSL),y)
 UBOOT_DEPENDENCIES += host-openssl
 endif
 
+ifeq ($(BR2_TARGET_UBOOT_NEEDS_LZOP),y)
+UBOOT_DEPENDENCIES += host-lzop
+endif
+
 # prior to u-boot 2013.10 the license info was in COPYING. Copy it so
 # legal-info finds it
 define UBOOT_COPY_OLD_LICENSE_FILE

+ 1 - 1
configs/arm_juno_defconfig

@@ -12,7 +12,7 @@ BR2_LINUX_KERNEL_INTREE_DTS_NAME="arm/juno arm/juno-r1 arm/juno-r2"
 BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
 BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
 BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://github.com/ARM-software/arm-trusted-firmware.git"
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="v1.3"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="v1.4"
 BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="juno"
 BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y
 BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33=y

+ 1 - 1
configs/zynq_microzed_defconfig

@@ -20,7 +20,7 @@ BR2_TARGET_UBOOT=y
 BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
 BR2_TARGET_UBOOT_CUSTOM_GIT=y
 BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/Xilinx/u-boot-xlnx.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="xilinx-v2017.3"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="xilinx-v2018.2"
 BR2_TARGET_UBOOT_BOARD_DEFCONFIG="zynq_microzed"
 BR2_TARGET_UBOOT_NEEDS_DTC=y
 BR2_TARGET_UBOOT_NEEDS_OPENSSL=y

+ 1 - 1
configs/zynq_zc706_defconfig

@@ -20,7 +20,7 @@ BR2_TARGET_UBOOT=y
 BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
 BR2_TARGET_UBOOT_CUSTOM_GIT=y
 BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/Xilinx/u-boot-xlnx.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="xilinx-v2017.3"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="xilinx-v2018.2"
 BR2_TARGET_UBOOT_BOARD_DEFCONFIG="zynq_zc706"
 BR2_TARGET_UBOOT_NEEDS_DTC=y
 BR2_TARGET_UBOOT_NEEDS_OPENSSL=y

+ 1 - 1
configs/zynq_zed_defconfig

@@ -20,7 +20,7 @@ BR2_TARGET_UBOOT=y
 BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
 BR2_TARGET_UBOOT_CUSTOM_GIT=y
 BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/Xilinx/u-boot-xlnx.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="xilinx-v2017.3"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="xilinx-v2018.2"
 BR2_TARGET_UBOOT_BOARD_DEFCONFIG="zynq_zed"
 BR2_TARGET_UBOOT_NEEDS_DTC=y
 BR2_TARGET_UBOOT_NEEDS_OPENSSL=y

+ 17 - 9
docs/manual/using-buildroot-toolchain.txt

@@ -12,15 +12,23 @@ The toolchain generated by Buildroot is located by default in
 +output/host/bin/+ to your PATH environment variable and then to
 use +ARCH-linux-gcc+, +ARCH-linux-objdump+, +ARCH-linux-ld+, etc.
 
-It is possible to relocate the toolchain, this allows to distribute
-the toolchain to other developers to build applications for your
-target. To achieve this:
+Alternatively, Buildroot can also export the toolchain and the development
+files of all selected packages, as an SDK, by running the command
++make sdk+. This generates a tarball of the content of the host directory
++output/host/+, named +<TARGET-TUPLE>_sdk-buildroot.tar.gz+ (which can be
+overriden by setting the environment variable +BR2_SDK_PREFIX+) and
+located in the output directory +output/images/+.
 
-* run +make sdk+, which prepares the toolchain to be relocatable;
-* tarball the contents of the +output/host+ directory;
-* distribute the resulting tarball.
+This tarball can then be distributed to application developers, when
+they want to develop their applications that are not (yet) packaged as
+a Buildroot package.
 
-Once the toolchain is installed to the new location, the user must run
-the +relocate-sdk.sh+ script to make sure all paths are updated with
-the new location.
+Upon extracting the SDK tarball, the user must run the script
++relocate-sdk.sh+ (located at the top directory of the SDK), to make
+sure all paths are updated with the new location.
 
+Alternatively, if you just want to prepare the SDK without generating
+the tarball (e.g. because you will just be moving the +host+ directory,
+or will be generating the tarball on your own), Buildroot also allows
+you to just prepare the SDK with +make prepare-sdk+ without actually
+generating a tarball.

+ 1 - 0
fs/Config.in

@@ -1,6 +1,7 @@
 menu "Filesystem images"
 
 source "fs/axfs/Config.in"
+source "fs/btrfs/Config.in"
 source "fs/cloop/Config.in"
 source "fs/cpio/Config.in"
 source "fs/cramfs/Config.in"

+ 50 - 0
fs/btrfs/Config.in

@@ -0,0 +1,50 @@
+config BR2_TARGET_ROOTFS_BTRFS
+	bool "btrfs root filesystem"
+	select BR2_PACKAGE_HOST_BTRFS_PROGS
+	help
+	  Build a btrfs root filesystem. If you enable this option, you
+	  probably want to enable the btrfs-progs package too.
+
+if BR2_TARGET_ROOTFS_BTRFS
+
+config BR2_TARGET_ROOTFS_BTRFS_LABEL
+	string "filesystem label"
+
+config BR2_TARGET_ROOTFS_BTRFS_SIZE
+	string "filesystem size"
+	default "100m"
+	help
+	  The size of the filesystem image in bytes.
+	  Suffix with k, m, g or t for power-of-two kilo-, mega-, giga-
+	  or terabytes.
+
+config BR2_TARGET_ROOTFS_BTRFS_SIZE_SECTOR
+	string "sector size"
+	default "4096"
+	help
+	  This value should be set to the page size in bytes. The
+	  default value of 4096 is the the most common page size for
+	  most systems.  If the sectorsize differs from the page size,
+	  the created filesystem may not be mountable by the kernel.
+	  Therefore it is recommended to leave this value at
+	  4096. Unless you know that your kernel uses a different page
+	  size.  Suffix with k for power-of-two kilobytes.
+
+config BR2_TARGET_ROOTFS_BTRFS_SIZE_NODE
+	string "btree node size"
+	default "16384"
+	help
+	  The tree block size in which btrfs stores metadata in bytes.
+	  This must be a multiple of the sectorsize, but not larger
+	  than 64KiB (65536).
+	  Suffix with k for power-of-two kilobytes.
+
+config BR2_TARGET_ROOTFS_BTRFS_FEATURES
+	string "Filesystem Features"
+	help
+	  A comma separated string of features that can be enabled
+	  during creation time.
+	  For a list of available options, use:
+	    `.../host/bin/mkfs.btrfs -O list-all`
+
+endif # BR2_TARGET_ROOTFS_BTRFS

+ 36 - 0
fs/btrfs/btrfs.mk

@@ -0,0 +1,36 @@
+################################################################################
+#
+# Build the btrfs root filesystem image
+#
+################################################################################
+
+BTRFS_SIZE = $(call qstrip,$(BR2_TARGET_ROOTFS_BTRFS_SIZE))
+ifeq ($(BR2_TARGET_ROOTFS_BTRFS)-$(BTRFS_SIZE),y-)
+$(error BR2_TARGET_ROOTFS_BTRFS_SIZE cannot be empty)
+endif
+
+BTRFS_SIZE_NODE = $(call qstrip,$(BR2_TARGET_ROOTFS_BTRFS_SIZE_NODE))
+BTRFS_SIZE_SECTOR = $(call qstrip,$(BR2_TARGET_ROOTFS_BTRFS_SIZE_SECTOR))
+BTRFS_FEATURES = $(call qstrip,$(BR2_TARGET_ROOTFS_BTRFS_FEATURES))
+# qstrip results in stripping consecutive spaces into a single one. So the
+# variable is not qstrip-ed to preserve the integrity of the string value.
+BTRFS_LABEL := $(subst ",,$(BR2_TARGET_ROOTFS_BTRFS_LABEL))
+# ")
+
+BTRFS_OPTS = \
+	-f \
+	-r '$(TARGET_DIR)' \
+	-L '$(BTRFS_LABEL)' \
+	--byte-count '$(BTRFS_SIZE)' \
+	$(if $(BTRFS_SIZE_NODE),--nodesize '$(BTRFS_SIZE_NODE)') \
+	$(if $(BTRFS_SIZE_SECTOR),--sectorsize '$(BTRFS_SIZE_SECTOR)') \
+	$(if $(BTRFS_FEATURES),--features '$(BTRFS_FEATURES)')
+
+ROOTFS_BTRFS_DEPENDENCIES = host-btrfs-progs
+
+define ROOTFS_BTRFS_CMD
+	$(RM) -f $@
+	$(HOST_DIR)/bin/mkfs.btrfs $(BTRFS_OPTS) $@
+endef
+
+$(eval $(rootfs))

+ 2 - 2
linux/Config.in

@@ -30,7 +30,7 @@ choice
 	prompt "Kernel version"
 
 config BR2_LINUX_KERNEL_LATEST_VERSION
-	bool "Latest version (4.17)"
+	bool "Latest version (4.18)"
 
 config BR2_LINUX_KERNEL_LATEST_CIP_VERSION
 	bool "Latest CIP SLTS version (v4.4.138-cip25)"
@@ -120,7 +120,7 @@ endif
 
 config BR2_LINUX_KERNEL_VERSION
 	string
-	default "4.17.19" if BR2_LINUX_KERNEL_LATEST_VERSION
+	default "4.18.5" if BR2_LINUX_KERNEL_LATEST_VERSION
 	default "v4.4.138-cip25" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION
 	default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
 		if BR2_LINUX_KERNEL_CUSTOM_VERSION

+ 28 - 0
package/Config.in

@@ -665,18 +665,28 @@ endif
 	source "package/perl/Config.in"
 if BR2_PACKAGE_PERL
 menu "Perl libraries/modules"
+	source "package/perl-appconfig/Config.in"
+	source "package/perl-astro-suntime/Config.in"
+	source "package/perl-class-std/Config.in"
+	source "package/perl-class-std-fast/Config.in"
 	source "package/perl-convert-asn1/Config.in"
 	source "package/perl-crypt-blowfish/Config.in"
 	source "package/perl-crypt-cbc/Config.in"
 	source "package/perl-crypt-openssl-random/Config.in"
 	source "package/perl-crypt-openssl-rsa/Config.in"
+	source "package/perl-data-optlist/Config.in"
+	source "package/perl-data-uuid/Config.in"
+	source "package/perl-date-manip/Config.in"
 	source "package/perl-datetime-tiny/Config.in"
+	source "package/perl-dbi/Config.in"
+	source "package/perl-device-serialport/Config.in"
 	source "package/perl-digest-hmac/Config.in"
 	source "package/perl-digest-md5/Config.in"
 	source "package/perl-digest-sha1/Config.in"
 	source "package/perl-encode-detect/Config.in"
 	source "package/perl-encode-locale/Config.in"
 	source "package/perl-file-listing/Config.in"
+	source "package/perl-file-slurp/Config.in"
 	source "package/perl-file-util/Config.in"
 	source "package/perl-gd/Config.in"
 	source "package/perl-gdgraph/Config.in"
@@ -689,7 +699,10 @@ menu "Perl libraries/modules"
 	source "package/perl-http-message/Config.in"
 	source "package/perl-http-negotiate/Config.in"
 	source "package/perl-io-html/Config.in"
+	source "package/perl-io-interface/Config.in"
+	source "package/perl-io-socket-multicast/Config.in"
 	source "package/perl-io-socket-ssl/Config.in"
+	source "package/perl-json-maybexs/Config.in"
 	source "package/perl-json-tiny/Config.in"
 	source "package/perl-libwww-perl/Config.in"
 	source "package/perl-lwp-mediatypes/Config.in"
@@ -697,6 +710,9 @@ menu "Perl libraries/modules"
 	source "package/perl-mailtools/Config.in"
 	source "package/perl-mime-base64-urlsafe/Config.in"
 	source "package/perl-mime-base64/Config.in"
+	source "package/perl-mime-tools/Config.in"
+	source "package/perl-module-implementation/Config.in"
+	source "package/perl-module-runtime/Config.in"
 	source "package/perl-mojolicious-plugin-authentication/Config.in"
 	source "package/perl-mojolicious/Config.in"
 	source "package/perl-net-dns/Config.in"
@@ -707,7 +723,12 @@ menu "Perl libraries/modules"
 	source "package/perl-net-ssleay/Config.in"
 	source "package/perl-net-telnet/Config.in"
 	source "package/perl-netaddr-ip/Config.in"
+	source "package/perl-number-bytes-human/Config.in"
+	source "package/perl-params-util/Config.in"
 	source "package/perl-path-tiny/Config.in"
+	source "package/perl-sub-install/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-timedate/Config.in"
 	source "package/perl-try-tiny/Config.in"
@@ -799,6 +820,7 @@ menu "External python modules"
 	source "package/python-engineio/Config.in"
 	source "package/python-enum/Config.in"
 	source "package/python-enum34/Config.in"
+	source "package/python-falcon/Config.in"
 	source "package/python-flask/Config.in"
 	source "package/python-flask-cors/Config.in"
 	source "package/python-flask-babel/Config.in"
@@ -850,6 +872,7 @@ menu "External python modules"
 	source "package/python-markupsafe/Config.in"
 	source "package/python-mbstrdecoder/Config.in"
 	source "package/python-meld3/Config.in"
+	source "package/python-mimeparse/Config.in"
 	source "package/python-mistune/Config.in"
 	source "package/python-more-itertools/Config.in"
 	source "package/python-msgpack/Config.in"
@@ -874,6 +897,7 @@ menu "External python modules"
 	source "package/python-pexpect/Config.in"
 	source "package/python-pickleshare/Config.in"
 	source "package/python-pillow/Config.in"
+	source "package/python-pip/Config.in"
 	source "package/python-portend/Config.in"
 	source "package/python-posix-ipc/Config.in"
 	source "package/python-priority/Config.in"
@@ -940,6 +964,7 @@ menu "External python modules"
 	source "package/python-sdnotify/Config.in"
 	source "package/python-secretstorage/Config.in"
 	source "package/python-see/Config.in"
+	source "package/python-semver/Config.in"
 	source "package/python-serial/Config.in"
 	source "package/python-service-identity/Config.in"
 	source "package/python-setproctitle/Config.in"
@@ -1293,6 +1318,7 @@ menu "External AngularJS plugins"
 endmenu
 endif
 	source "package/bootstrap/Config.in"
+	source "package/duktape/Config.in"
 	source "package/explorercanvas/Config.in"
 	source "package/flot/Config.in"
 	source "package/jquery/Config.in"
@@ -1843,6 +1869,7 @@ endif
 	source "package/open-plc-utils/Config.in"
 	source "package/openntpd/Config.in"
 	source "package/openobex/Config.in"
+	source "package/openresolv/Config.in"
 	source "package/openssh/Config.in"
 	source "package/openswan/Config.in"
 	source "package/openvpn/Config.in"
@@ -1996,6 +2023,7 @@ comment "Utilities"
 	source "package/sudo/Config.in"
 	source "package/terminology/Config.in"
 	source "package/time/Config.in"
+	source "package/tini/Config.in"
 	source "package/tmux/Config.in"
 	source "package/which/Config.in"
 	source "package/xmlstarlet/Config.in"

+ 3 - 0
package/Config.in.host

@@ -2,9 +2,11 @@ menu "Host utilities"
 
 	source "package/aespipe/Config.in.host"
 	source "package/android-tools/Config.in.host"
+	source "package/btrfs-progs/Config.in.host"
 	source "package/cargo/Config.in.host"
 	source "package/cbootimage/Config.in.host"
 	source "package/checkpolicy/Config.in.host"
+	source "package/checksec/Config.in.host"
 	source "package/cmake/Config.in.host"
 	source "package/cramfs/Config.in.host"
 	source "package/cryptsetup/Config.in.host"
@@ -55,6 +57,7 @@ menu "Host utilities"
 	source "package/sam-ba/Config.in.host"
 	source "package/squashfs/Config.in.host"
 	source "package/sunxi-tools/Config.in.host"
+	source "package/swig/Config.in.host"
 	source "package/tegrarcm/Config.in.host"
 	source "package/ti-cgt-pru/Config.in.host"
 	source "package/uboot-tools/Config.in.host"

+ 9 - 9
package/Makefile.in

@@ -147,29 +147,29 @@ TARGET_CFLAGS_RELRO_FULL = -Wl,-z,now $(TARGET_CFLAGS_RELRO)
 TARGET_LDFLAGS = $(call qstrip,$(BR2_TARGET_LDFLAGS))
 
 ifeq ($(BR2_SSP_REGULAR),y)
-TARGET_CPPFLAGS += -fstack-protector
+TARGET_HARDENED += -fstack-protector
 else ifeq ($(BR2_SSP_STRONG),y)
-TARGET_CPPFLAGS += -fstack-protector-strong
+TARGET_HARDENED += -fstack-protector-strong
 else ifeq ($(BR2_SSP_ALL),y)
-TARGET_CPPFLAGS += -fstack-protector-all
+TARGET_HARDENED += -fstack-protector-all
 endif
 
 ifeq ($(BR2_RELRO_PARTIAL),y)
-TARGET_CPPFLAGS += $(TARGET_CFLAGS_RELRO)
+TARGET_HARDENED += $(TARGET_CFLAGS_RELRO)
 TARGET_LDFLAGS += $(TARGET_CFLAGS_RELRO)
 else ifeq ($(BR2_RELRO_FULL),y)
-TARGET_CPPFLAGS += -fPIE $(TARGET_CFLAGS_RELRO_FULL)
-TARGET_LDFLAGS += -pie
+TARGET_HARDENED += -fPIE $(TARGET_CFLAGS_RELRO_FULL)
+TARGET_LDFLAGS += -pie $(TARGET_CFLAGS_RELRO_FULL)
 endif
 
 ifeq ($(BR2_FORTIFY_SOURCE_1),y)
-TARGET_CPPFLAGS += -D_FORTIFY_SOURCE=1
+TARGET_HARDENED += -D_FORTIFY_SOURCE=1
 else ifeq ($(BR2_FORTIFY_SOURCE_2),y)
-TARGET_CPPFLAGS += -D_FORTIFY_SOURCE=2
+TARGET_HARDENED += -D_FORTIFY_SOURCE=2
 endif
 
 TARGET_CPPFLAGS += -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-TARGET_CFLAGS = $(TARGET_CPPFLAGS) $(TARGET_ABI) $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING)
+TARGET_CFLAGS = $(TARGET_CPPFLAGS) $(TARGET_ABI) $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) $(TARGET_HARDENED)
 TARGET_CXXFLAGS = $(TARGET_CFLAGS)
 TARGET_FCFLAGS = $(TARGET_ABI) $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING)
 

+ 0 - 1
package/acpid/Config.in

@@ -1,6 +1,5 @@
 config BR2_PACKAGE_ACPID
 	bool "acpid"
-	depends on BR2_x86_64 || BR2_i386
 	help
 	  Advanced Configuration and Power Interface event daemon.
 

+ 2 - 2
package/acpid/acpid.hash

@@ -1,3 +1,3 @@
 # From https://sourceforge.net/projects/acpid2/files/
-md5	0432407b5ff75ae8e08afb43052fde2b	acpid-2.0.28.tar.xz
-sha1	a5cb34d53eb6965293c436db23dc81550273975b	acpid-2.0.28.tar.xz
+md5	1528040b5d34f8c24ebabd97befbf913	acpid-2.0.30.tar.xz
+sha1	680bbb3fa9cdabb78fb19c6d24bb57224fbbbaed	acpid-2.0.30.tar.xz

+ 1 - 1
package/acpid/acpid.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ACPID_VERSION = 2.0.28
+ACPID_VERSION = 2.0.30
 ACPID_SOURCE = acpid-$(ACPID_VERSION).tar.xz
 ACPID_SITE = http://downloads.sourceforge.net/project/acpid2
 ACPID_LICENSE = GPL-2.0+

+ 0 - 1
package/alljoyn/Config.in

@@ -7,7 +7,6 @@ config BR2_PACKAGE_ALLJOYN
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_USE_WCHAR
 	select BR2_PACKAGE_LIBCAP
-	select BR2_PACKAGE_OPENSSL
 	help
 	  The AllJoyn framework defines a common way for devices and
 	  apps to communicate with one another regardless of brands,

+ 2 - 4
package/alljoyn/alljoyn.mk

@@ -11,11 +11,9 @@ ALLJOYN_SITE = https://mirrors.kernel.org/allseenalliance/alljoyn/$(ALLJOYN_REV)
 # See https://allseenalliance.org/alliance/ip-policy
 ALLJOYN_LICENSE = ISC
 
-ALLJOYN_DEPENDENCIES = host-scons libcap openssl
+ALLJOYN_DEPENDENCIES = host-scons libcap
 ALLJOYN_INSTALL_STAGING = YES
 
-ALLJOYN_CRYPTO = openssl
-
 # AllJoyn can be compiled in debug or release mode. By default, AllJoyn is built
 # in debug mode.
 ALLJOYN_VARIANT = release
@@ -39,7 +37,7 @@ ALLJOYN_SCONS_OPTS = \
 	CPU=$(ALLJOYN_CPU) \
 	VARIANT=$(ALLJOYN_VARIANT) \
 	BR=off \
-	CRYPTO=$(ALLJOYN_CRYPTO) \
+	CRYPTO=builtin \
 	BINDINGS=$(ALLJOYN_BINDINGS) \
 	TARGET_CFLAGS="$(TARGET_CFLAGS)" \
 	TARGET_CPPFLAGS="$(TARGET_CPPFLAGS)" \

+ 171 - 0
package/asterisk/0007-res_srtp-Add-support-for-libsrtp2-with-AES-GCM.patch

@@ -0,0 +1,171 @@
+From 95b45d1c46b35232ee0b9bdb3135b080c164c7c6 Mon Sep 17 00:00:00 2001
+From: Alexander Traud <pabstraud@compuserve.com>
+Date: Wed, 18 Oct 2017 10:30:25 +0200
+Subject: [PATCH] res_srtp: Add support for libsrtp2 with AES-GCM.
+
+Beside allowing AES-GCM again, this adds AES-192 again.
+
+ASTERISK-27356
+
+Change-Id: Ia97a435faf26300335d9552fa676b5d17e5f7233
+[yann.morin.1998@free.fr: backport from upstream]
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+---
+ configure              | 104 +++++++++++++++++++++++++++++++++++++++++++++++++
+ configure.ac           |   1 +
+ res/srtp/srtp_compat.h |  12 ++++++
+ 3 files changed, 117 insertions(+)
+
+diff --git a/configure b/configure
+index 59bc3b10b1..588fbfd0be 100755
+--- a/configure
++++ b/configure
+@@ -33793,6 +33793,110 @@ fi
+ 
+ 
+ 
++if test "x${PBX_SRTP_192}" != "x1" -a "${USE_SRTP_192}" != "no"; then
++   pbxlibdir=""
++   # if --with-SRTP_192=DIR has been specified, use it.
++   if test "x${SRTP_192_DIR}" != "x"; then
++      if test -d ${SRTP_192_DIR}/lib; then
++         pbxlibdir="-L${SRTP_192_DIR}/lib"
++      else
++         pbxlibdir="-L${SRTP_192_DIR}"
++      fi
++   fi
++   pbxfuncname="srtp_crypto_policy_set_aes_cm_192_hmac_sha1_80"
++   if test "x${pbxfuncname}" = "x" ; then   # empty lib, assume only headers
++      AST_SRTP_192_FOUND=yes
++   else
++      ast_ext_lib_check_save_CFLAGS="${CFLAGS}"
++      CFLAGS="${CFLAGS} "
++      as_ac_Lib=`$as_echo "ac_cv_lib_srtp2_${pbxfuncname}" | $as_tr_sh`
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${pbxfuncname} in -lsrtp2" >&5
++$as_echo_n "checking for ${pbxfuncname} in -lsrtp2... " >&6; }
++if eval \${$as_ac_Lib+:} false; then :
++  $as_echo_n "(cached) " >&6
++else
++  ac_check_lib_save_LIBS=$LIBS
++LIBS="-lsrtp2 ${pbxlibdir}  $LIBS"
++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h.  */
++
++/* Override any GCC internal prototype to avoid an error.
++   Use char because int might match the return type of a GCC
++   builtin and then its argument prototype would still apply.  */
++#ifdef __cplusplus
++extern "C"
++#endif
++char ${pbxfuncname} ();
++int
++main ()
++{
++return ${pbxfuncname} ();
++  ;
++  return 0;
++}
++_ACEOF
++if ac_fn_c_try_link "$LINENO"; then :
++  eval "$as_ac_Lib=yes"
++else
++  eval "$as_ac_Lib=no"
++fi
++rm -f core conftest.err conftest.$ac_objext \
++    conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++eval ac_res=\$$as_ac_Lib
++	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
++$as_echo "$ac_res" >&6; }
++if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
++  AST_SRTP_192_FOUND=yes
++else
++  AST_SRTP_192_FOUND=no
++fi
++
++      CFLAGS="${ast_ext_lib_check_save_CFLAGS}"
++   fi
++
++   # now check for the header.
++   if test "${AST_SRTP_192_FOUND}" = "yes"; then
++      SRTP_192_LIB="${pbxlibdir} -lsrtp2 "
++      # if --with-SRTP_192=DIR has been specified, use it.
++      if test "x${SRTP_192_DIR}" != "x"; then
++         SRTP_192_INCLUDE="-I${SRTP_192_DIR}/include"
++      fi
++      SRTP_192_INCLUDE="${SRTP_192_INCLUDE} "
++      if test "x" = "x" ; then	# no header, assume found
++         SRTP_192_HEADER_FOUND="1"
++      else				# check for the header
++         ast_ext_lib_check_saved_CPPFLAGS="${CPPFLAGS}"
++         CPPFLAGS="${CPPFLAGS} ${SRTP_192_INCLUDE}"
++         ac_fn_c_check_header_mongrel "$LINENO" "" "ac_cv_header_" "$ac_includes_default"
++if test "x$ac_cv_header_" = xyes; then :
++  SRTP_192_HEADER_FOUND=1
++else
++  SRTP_192_HEADER_FOUND=0
++fi
++
++
++         CPPFLAGS="${ast_ext_lib_check_saved_CPPFLAGS}"
++      fi
++      if test "x${SRTP_192_HEADER_FOUND}" = "x0" ; then
++         SRTP_192_LIB=""
++         SRTP_192_INCLUDE=""
++      else
++         if test "x${pbxfuncname}" = "x" ; then		# only checking headers -> no library
++            SRTP_192_LIB=""
++         fi
++         PBX_SRTP_192=1
++         cat >>confdefs.h <<_ACEOF
++#define HAVE_SRTP_192 1
++_ACEOF
++
++      fi
++   fi
++fi
++
++
++
+ if test "x${PBX_SRTP_GCM}" != "x1" -a "${USE_SRTP_GCM}" != "no"; then
+    pbxlibdir=""
+    # if --with-SRTP_GCM=DIR has been specified, use it.
+diff --git a/configure.ac b/configure.ac
+index 9f95786e11..c729b94aba 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2520,6 +2520,7 @@ AST_EXT_LIB_CHECK_SHARED([SRTP], [srtp2], [srtp_init], [srtp2/srtp.h], [], [], [
+ if test "x$PBX_SRTP" = x1;
+ then
+     AST_EXT_LIB_CHECK([SRTP_256], [srtp2], [srtp_crypto_policy_set_aes_cm_256_hmac_sha1_80])
++    AST_EXT_LIB_CHECK([SRTP_192], [srtp2], [srtp_crypto_policy_set_aes_cm_192_hmac_sha1_80])
+     AST_EXT_LIB_CHECK([SRTP_GCM], [srtp2], [srtp_crypto_policy_set_aes_gcm_128_8_auth])
+     AST_EXT_LIB_CHECK([SRTP_SHUTDOWN], [srtp2], [srtp_shutdown], [srtp2/srtp.h])
+ 
+diff --git a/res/srtp/srtp_compat.h b/res/srtp/srtp_compat.h
+index 56ffca1cc2..dbd8ddee0f 100644
+--- a/res/srtp/srtp_compat.h
++++ b/res/srtp/srtp_compat.h
+@@ -16,6 +16,18 @@
+ #define crypto_policy_set_aes_gcm_128_8_auth srtp_crypto_policy_set_aes_gcm_128_8_auth
+ #define crypto_policy_set_aes_gcm_256_8_auth srtp_crypto_policy_set_aes_gcm_256_8_auth
+ 
++#if defined(SRTP_AES_GCM_128_KEY_LEN_WSALT)
++#define AES_128_GCM_KEYSIZE_WSALT SRTP_AES_GCM_128_KEY_LEN_WSALT
++#else
++#define AES_128_GCM_KEYSIZE_WSALT SRTP_AES_128_GCM_KEYSIZE_WSALT
++#endif
++
++#if defined(SRTP_AES_GCM_256_KEY_LEN_WSALT)
++#define AES_256_GCM_KEYSIZE_WSALT SRTP_AES_GCM_256_KEY_LEN_WSALT
++#else
++#define AES_256_GCM_KEYSIZE_WSALT SRTP_AES_256_GCM_KEYSIZE_WSALT
++#endif
++
+ #define err_status_t srtp_err_status_t
+ #define err_status_ok srtp_err_status_ok
+ #define err_status_fail srtp_err_status_fail
+-- 
+2.14.1
+

+ 52 - 0
package/atop/0001-Include-sysmacros.h-to-compile-with-newer-gcc.patch

@@ -0,0 +1,52 @@
+From 414127c03669b4eedc85778a7bff80cf601311d8 Mon Sep 17 00:00:00 2001
+From: SjonHortensius <SjonHortensius@users.noreply.github.com>
+Date: Fri, 24 Aug 2018 18:26:58 +0200
+Subject: [PATCH] Include sysmacros.h to compile with newer gcc
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Older gcc throws a warning
+```
+photosyst.c: In function 'lvmmapname':
+photosyst.c:1465:13: warning: In the GNU C Library, "major" is defined
+ by <sys/sysmacros.h>. For historical compatibility, it is
+ currently defined by <sys/types.h> as well, but we plan to
+ remove this soon. To use "major", include <sys/sysmacros.h>
+ directly. If you did not intend to use a system-defined macro
+ "major", you should undefine it after including <sys/types.h>.
+     dmp->major  = major(statbuf.st_rdev);
+```
+
+Newer gcc throws an error:
+
+```
+photosyst.c: In function ‘lvmmapname’:
+photosyst.c:1482:19: error: called object ‘major’ is not a function or function pointer
+     dmp->major  = major(statbuf.st_rdev);
+                   ^~~~~
+photosyst.c:1437:25: note: declared here
+ lvmmapname(unsigned int major, unsigned int minor,
+            ~~~~~~~~~~~~~^~~~~
+```
+
+Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
+---
+ photosyst.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/photosyst.c b/photosyst.c
+index 19cbbe1..50841a1 100644
+--- a/photosyst.c
++++ b/photosyst.c
+@@ -152,6 +152,7 @@
+ static const char rcsid[] = "$Id: photosyst.c,v 1.38 2010/11/19 07:40:40 gerlof Exp $";
+ 
+ #include <sys/types.h>
++#include <sys/sysmacros.h>
+ #include <stdio.h>
+ #include <string.h>
+ #include <unistd.h>
+-- 
+2.17.1
+

+ 0 - 2
package/blktrace/Config.in

@@ -1,6 +1,5 @@
 config BR2_PACKAGE_BLKTRACE
 	bool "blktrace"
-	depends on BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS
 	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # clock_nanosleep()
 	depends on BR2_USE_MMU # system()
 	select BR2_PACKAGE_LIBAIO
@@ -13,5 +12,4 @@ config BR2_PACKAGE_BLKTRACE
 
 comment "blktrace needs a toolchain w/ NPTL"
 	depends on BR2_USE_MMU
-	depends on BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS
 	depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL

+ 2 - 2
package/boost/boost.hash

@@ -1,5 +1,5 @@
-# From http://www.boost.org/users/history/version_1_67_0.html
-sha256 2684c972994ee57fc5632e03bf044746f6eb45d4920c343937a465fd67a5adba  boost_1_67_0.tar.bz2
+# From http://www.boost.org/users/history/version_1_68_0.html
+sha256 7f6130bc3cf65f56a618888ce9d5ea704fa10b462be126ad053e80e553d6d8b7  boost_1_68_0.tar.bz2
 
 # Locally computed
 sha256 c9bff75738922193e67fa726fa225535870d2aa1059f91452c411736284ad566  LICENSE_1_0.txt

+ 1 - 1
package/boost/boost.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-BOOST_VERSION = 1.67.0
+BOOST_VERSION = 1.68.0
 BOOST_SOURCE = boost_$(subst .,_,$(BOOST_VERSION)).tar.bz2
 BOOST_SITE = http://downloads.sourceforge.net/project/boost/boost/$(BOOST_VERSION)
 BOOST_INSTALL_STAGING = YES

+ 6 - 4
package/botan/0001-remove-mips64-explicit-mabi.patch

@@ -3,15 +3,17 @@ Remove explicit mips64 -mabi parameter
 This breaks when building for n32 ABI on mips64.
 
 Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+[Bernd: rebased for botan-2.7.0]
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
 ---
 
 diff -Nuar Botan-1.10.8-orig/src/build-data/cc/gcc.txt Botan-1.10.8/src/build-data/cc/gcc.txt
 --- Botan-1.10.8-orig/src/build-data/cc/gcc.txt	2014-04-10 17:11:44.000000000 +0300
 +++ Botan-1.10.8/src/build-data/cc/gcc.txt	2014-10-23 09:20:34.506722323 +0300
-@@ -92,7 +92,6 @@
- # The 'linking' bit means "use this for both compiling *and* linking"
- <mach_abi_linking>
- x86_64  -> "-m64"
+@@ -83,7 +83,6 @@
+ 
+ openmp  -> "-fopenmp"
+ 
 -mips64  -> "-mabi=64"
  s390    -> "-m31"
  s390x   -> "-m64"

+ 4 - 2
package/botan/Config.in

@@ -8,6 +8,7 @@ config BR2_PACKAGE_BOTAN_ARCH_SUPPORTS
 config BR2_PACKAGE_BOTAN
 	bool "botan"
 	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_PACKAGE_BOTAN_ARCH_SUPPORTS
 	help
@@ -15,6 +16,7 @@ config BR2_PACKAGE_BOTAN
 
 	  http://botan.randombit.net
 
-comment "botan needs a toolchain w/ C++, threads"
-	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP
+comment "botan needs a toolchain w/ C++, threads, gcc >= 4.8"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP \
+		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
 	depends on BR2_PACKAGE_BOTAN_ARCH_SUPPORTS

+ 4 - 2
package/botan/botan.hash

@@ -1,2 +1,4 @@
-# Locally calculated after checking pgp signature
-sha256 6c5472401d06527e87adcb53dd270f3c9b1fb688703b04dd7a7cfb86289efe52  Botan-1.10.16.tgz
+# From https://botan.randombit.net/releases/sha256sums.txt
+sha256 e42df91556317588c6ca0e41bf796f9bd5ec5c70e0668e6c97c608c697c24a90  Botan-2.7.0.tgz
+# Locally computed
+sha256 40cfd35a9e34d18463806f57553c968fdbaf254a2e2a636d1d8e32ff6b698495  license.txt

+ 37 - 12
package/botan/botan.mk

@@ -4,11 +4,11 @@
 #
 ################################################################################
 
-BOTAN_VERSION = 1.10.16
+BOTAN_VERSION = 2.7.0
 BOTAN_SOURCE = Botan-$(BOTAN_VERSION).tgz
 BOTAN_SITE = http://botan.randombit.net/releases
 BOTAN_LICENSE = BSD-2-Clause
-BOTAN_LICENSE_FILES = doc/license.txt
+BOTAN_LICENSE_FILES = license.txt
 
 BOTAN_INSTALL_STAGING = YES
 
@@ -19,8 +19,30 @@ BOTAN_CONF_OPTS = \
 	--cc-bin="$(TARGET_CXX)" \
 	--prefix=/usr
 
-ifeq ($(BR2_STATIC_LIBS),y)
-BOTAN_CONF_OPTS += --disable-shared --no-autoload
+ifeq ($(BR2_SHARED_LIBS),y)
+BOTAN_CONF_OPTS += \
+	--disable-static-library \
+	--enable-shared-library
+else ifeq ($(BR2_STATIC_LIBS),y)
+BOTAN_CONF_OPTS += \
+	--disable-shared-library \
+	--enable-static-library \
+	--no-autoload
+else ifeq ($(BR2_SHARED_STATIC_LIBS),y)
+BOTAN_CONF_OPTS += \
+	--enable-shared-library \
+	--enable-static-library
+endif
+
+ifeq ($(BR2_TOOLCHAIN_HAS_SSP),y)
+BOTAN_CONF_OPTS += --with-stack-protector
+else
+BOTAN_CONF_OPTS += --without-stack-protector
+endif
+
+ifeq ($(BR2_PACKAGE_BOOST),y)
+BOTAN_DEPENDENCIES += boost
+BOTAN_CONF_OPTS += --with-boost
 endif
 
 ifeq ($(BR2_PACKAGE_BZIP2),y)
@@ -28,24 +50,27 @@ BOTAN_DEPENDENCIES += bzip2
 BOTAN_CONF_OPTS += --with-bzip2
 endif
 
-ifeq ($(BR2_PACKAGE_GMP),y)
-BOTAN_DEPENDENCIES += gmp
-BOTAN_CONF_OPTS += --with-gnump
-endif
-
 ifeq ($(BR2_PACKAGE_OPENSSL),y)
 BOTAN_DEPENDENCIES += openssl
 BOTAN_CONF_OPTS += --with-openssl
 endif
 
+ifeq ($(BR2_PACKAGE_SQLITE),y)
+BOTAN_DEPENDENCIES += sqlite
+BOTAN_CONF_OPTS += --with-sqlite
+endif
+
+ifeq ($(BR2_PACKAGE_XZ),y)
+BOTAN_DEPENDENCIES += xz
+BOTAN_CONF_OPTS += --with-lzma
+endif
+
 ifeq ($(BR2_PACKAGE_ZLIB),y)
 BOTAN_DEPENDENCIES += zlib
 BOTAN_CONF_OPTS += --with-zlib
 endif
 
-ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y)
-BOTAN_CONF_OPTS += --enable-altivec
-else
+ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),)
 BOTAN_CONF_OPTS += --disable-altivec
 endif
 

+ 0 - 1
package/btrfs-progs/Config.in

@@ -2,7 +2,6 @@ config BR2_PACKAGE_BTRFS_PROGS
 	bool "btrfs-progs"
 	depends on BR2_USE_MMU # util-linux
 	depends on BR2_TOOLCHAIN_HAS_THREADS
-	select BR2_PACKAGE_E2FSPROGS
 	select BR2_PACKAGE_LZO
 	select BR2_PACKAGE_UTIL_LINUX
 	select BR2_PACKAGE_UTIL_LINUX_LIBBLKID

+ 6 - 0
package/btrfs-progs/Config.in.host

@@ -0,0 +1,6 @@
+config BR2_PACKAGE_HOST_BTRFS_PROGS
+	bool "host btrfs-progs"
+	help
+	  Btrfs filesystem utilities
+
+	  https://btrfs.wiki.kernel.org/index.php/Main_Page

+ 1 - 1
package/btrfs-progs/btrfs-progs.hash

@@ -1,5 +1,5 @@
 # From https://www.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs/sha256sums.asc
-sha256 013403fb67b17975b21408fa9eb7523b0ecf94f84f8a4397cf972e8e254d2246  btrfs-progs-v4.16.1.tar.xz
+sha256 bf0b34f1538c0b6e88f959937b0419678cadbf2ba7044336dcbfb2bcdc28cd74  btrfs-progs-v4.17.1.tar.xz
 # Locally computed
 sha256 0d5bf346df9e635a29dcdddf832dc5b002ca6cdc1c5c9c6c567d2a61bb0c5c15  COPYING
 sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986  libbtrfsutil/COPYING

+ 20 - 2
package/btrfs-progs/btrfs-progs.mk

@@ -4,10 +4,10 @@
 #
 ################################################################################
 
-BTRFS_PROGS_VERSION = 4.16.1
+BTRFS_PROGS_VERSION = 4.17.1
 BTRFS_PROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/people/kdave/btrfs-progs
 BTRFS_PROGS_SOURCE = btrfs-progs-v$(BTRFS_PROGS_VERSION).tar.xz
-BTRFS_PROGS_DEPENDENCIES = host-pkgconf e2fsprogs lzo util-linux zlib
+BTRFS_PROGS_DEPENDENCIES = host-pkgconf lzo util-linux zlib
 BTRFS_PROGS_CONF_OPTS = --disable-backtrace --disable-zstd --disable-python
 BTRFS_PROGS_LICENSE = GPL-2.0, LGPL-3.0+ (libbtrfsutil)
 BTRFS_PROGS_LICENSE_FILES = COPYING libbtrfsutil/COPYING \
@@ -21,4 +21,22 @@ BTRFS_PROGS_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install-static
 BTRFS_PROGS_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) install-static
 endif
 
+# convert also supports conversion from reiserfs, which needs some
+# reiserfs libraries, but we have no package for them in Buildroot, so
+# we keep things simple and only handle ext2.
+ifeq ($(BR2_PACKAGE_E2FSPROGS),y)
+BTRFS_PROGS_CONF_OPTS += --enable-convert --with-convert=ext2
+BTRFS_PROGS_DEPENDENCIES += e2fsprogs
+else
+BTRFS_PROGS_CONF_OPTS += --disable-convert
+endif
+
+HOST_BTRFS_PROGS_DEPENDENCIES = host-util-linux host-lzo host-zlib
+HOST_BTRFS_PROGS_CONF_OPTS = \
+	--disable-backtrace \
+	--disable-zstd \
+	--disable-python \
+	--disable-convert
+
 $(eval $(autotools-package))
+$(eval $(host-autotools-package))

+ 2 - 1
package/c-periphery/c-periphery.hash

@@ -1,2 +1,3 @@
 # Locally calculated
-sha256 c6cfaae7496ff6500b747106571de6b4ca7d80a383297e592ffcfa3413b66321  c-periphery-v1.1.1.tar.gz
+sha256 50665a4f298b30e4cc8f7dbd38362fd860cc3746803d00325cb04806674e3166  c-periphery-v1.1.3.tar.gz
+sha256 6b5669a90260126f0600aae98cb10fb5e219269dc9cbd0137f63927b96d5c31d  LICENSE

+ 1 - 1
package/c-periphery/c-periphery.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-C_PERIPHERY_VERSION = v1.1.1
+C_PERIPHERY_VERSION = v1.1.3
 C_PERIPHERY_SITE = $(call github,vsergeev,c-periphery,$(C_PERIPHERY_VERSION))
 C_PERIPHERY_INSTALL_STAGING = YES
 # only a static library

+ 0 - 43
package/ccache/0001-Convert-argument-to-sysroot-option-to-relative-path.patch

@@ -1,43 +0,0 @@
-From fe42d6f7b739e8d42811bf46bcccfafa728847a2 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Mathias=20De=20Mar=C3=A9?= <mathias.de_mare@nokia.com>
-Date: Mon, 19 Sep 2016 10:38:13 +0200
-Subject: [PATCH] Convert argument to '--sysroot' option to relative path
-
-Previously, only the argument to '--sysroot=' was converted.
-This changeset adds support for '--sysroot'.
-
-Signed-off-by: Brandon Maier <brandon.maier@rockwellcollins.com>
-Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com>
----
- ccache.c | 15 +++++++++++++++
- 1 file changed, 15 insertions(+)
-
-diff --git a/ccache.c b/ccache.c
-index 8ffadcc..76139b9 100644
---- a/ccache.c
-+++ b/ccache.c
-@@ -2407,6 +2407,21 @@ cc_process_args(struct args *args, struct args **preprocessor_args,
- 			free(option);
- 			continue;
- 		}
-+		// Alternate form of specifying sysroot without =
-+		if (str_eq(argv[i], "--sysroot")) {
-+			if (i == argc-1) {
-+				cc_log("Missing argument to %s", argv[i]);
-+				stats_update(STATS_ARGS);
-+				result = false;
-+				goto out;
-+			}
-+			args_add(stripped_args, argv[i]);
-+			char *relpath = make_relative_path(x_strdup(argv[i+1]));
-+			args_add(stripped_args, relpath);
-+			i++;
-+			free(relpath);
-+			continue;
-+		}
- 		if (str_startswith(argv[i], "-Wp,")) {
- 			if (str_eq(argv[i], "-Wp,-P")
- 			    || strstr(argv[i], ",-P,")
--- 
-2.8.3
-

+ 4 - 3
package/ccache/ccache.hash

@@ -1,3 +1,4 @@
-# Verified key https://samba.org/ftp/ccache/ccache-3.3.4.tar.xz.asc - sha256 computed locally
-sha256  24f15bf389e38c41548c9c259532187774ec0cb9686c3497bbb75504c8dc404f  ccache-3.3.4.tar.xz
-sha256  190576a6e938760ec8113523e6fd380141117303e90766cc4802e770422b30c6  ccache-3.3.5.tar.xz
+# sha256 computed locally
+sha256  18a8b14367d63d3d37fb6c33cba60e1b7fcd7a63d608df97c9771ae0d234fee2  ccache-3.4.2.tar.xz
+sha256  ec6b1a326ff93b2cc21df88a697ae470ff6927a55b8929e7e491b315e1563361  GPL-3.0.txt
+sha256  853e071acb730ca933860a0acf4e44e5dc4bffed6b09503bbcf878e343addcc5  LICENSE.adoc

+ 4 - 4
package/ccache/ccache.mk

@@ -4,11 +4,11 @@
 #
 ################################################################################
 
-CCACHE_VERSION = 3.3.5
+CCACHE_VERSION = 3.4.2
 CCACHE_SITE = https://www.samba.org/ftp/ccache
 CCACHE_SOURCE = ccache-$(CCACHE_VERSION).tar.xz
 CCACHE_LICENSE = GPL-3.0+, others
-CCACHE_LICENSE_FILES = LICENSE.txt GPL-3.0.txt
+CCACHE_LICENSE_FILES = LICENSE.adoc GPL-3.0.txt
 
 # Force ccache to use its internal zlib. The problem is that without
 # this, ccache would link against the zlib of the build system, but we
@@ -38,8 +38,8 @@ HOST_CCACHE_CONF_ENV = \
 HOST_CCACHE_DEFAULT_CCACHE_DIR = $(patsubst $(HOME)/%,\%s/%,$(BR_CACHE_DIR))
 
 define HOST_CCACHE_PATCH_CONFIGURATION
-	sed -i 's,getenv("CCACHE_DIR"),getenv("BR_CACHE_DIR"),' $(@D)/ccache.c
-	sed -i 's,"%s/.ccache","$(HOST_CCACHE_DEFAULT_CCACHE_DIR)",' $(@D)/conf.c
+	sed -i 's,getenv("CCACHE_DIR"),getenv("BR_CACHE_DIR"),' $(@D)/src/ccache.c
+	sed -i 's,"%s/.ccache","$(HOST_CCACHE_DEFAULT_CCACHE_DIR)",' $(@D)/src/conf.c
 endef
 
 HOST_CCACHE_POST_PATCH_HOOKS += HOST_CCACHE_PATCH_CONFIGURATION

+ 43 - 0
package/checksec/0001-checksec-Fixed-issue-with-relative-path.patch

@@ -0,0 +1,43 @@
+From b48a2dfae26fa3b4af8e65fb5953b3caf62c137b Mon Sep 17 00:00:00 2001
+From: Paresh Chaudhary <paresh.chaudhary@rockwellcollins.com>
+Date: Mon, 21 May 2018 14:34:23 -0500
+Subject: [PATCH] checksec: Fixed issue with relative path
+
+Before this patch, the checksec script was not able to find existing
+directories when the user passed a relative path with --dir/-d,
+the script aborted with a "No such file or directory". The same error
+was reported when the script was executed through a relative path.
+
+https://github.com/slimm609/checksec.sh/issues/54
+
+Signed-off-by: Paresh Chaudhary <paresh.chaudhary@rockwellcollins.com>
+Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com>
+---
+ checksec | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/checksec b/checksec
+index 24b521f..baf8d63 100755
+--- a/checksec
++++ b/checksec
+@@ -1193,7 +1193,7 @@ do
+     echo_message "RELRO           STACK CANARY      NX            PIE             RPATH      RUNPATH      FORTIFY Checked         Total   Filename\n" '' "<dir name='$tempdir'>\n" "{ \"dir\": { \"name\":\"$tempdir\" },"
+     fdircount=0
+     fdirtotal=0
+-    for N in $(find $tempdir -type f); do
++    for N in $(find . -type f); do
+       if [[ "$N" != "[A-Za-z1-0]*" ]]; then
+         out=$(file "$N")
+         if [[  $out =~ ELF ]] ; then
+@@ -1201,7 +1201,7 @@ do
+         fi
+       fi
+     done
+-    for N in $(find $tempdir -type f); do
++    for N in $(find . -type f); do
+       if [[ "$N" != "[A-Za-z1-0]*" ]]; then
+     # read permissions?
+     if [[ ! -r "$N" ]]; then
+-- 
+1.9.1
+

+ 17 - 0
package/checksec/Config.in.host

@@ -0,0 +1,17 @@
+config BR2_PACKAGE_HOST_CHECKSEC
+	bool "host checksec"
+	help
+	  This tool provides a shell script to check the
+	  properties of executables
+	  (PIE,RELRO,Stack Canaries,Fortify Source).
+	  It also has a kernel test mode that can run on target
+	  for testing of PaX, ASLR, heap and config hardening.
+
+	  NOTE: when using this tool as a host tool, the tool
+	  can offline check a target folder of elf files for
+	  hardening features enabled in those elf files.  There
+	  are other features of this tool, like the kernel test
+	  feature that are not functional offline, but require the
+	  user to execute in a chroot or on target.
+
+	  https://github.com/slimm609/checksec.sh.git

+ 3 - 0
package/checksec/checksec.hash

@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 510b0b0528f15d0bf13fa1ae7140d2b9fc9261323c98ff76c011bef475a69c14 checksec-cdefe53eb72e6e8f23308417d2fc6b68cba9dbac.tar.gz
+sha256 c5e2a8e188040fc34eb9362084778a2e25f8d1f888e47a2be09efa7cecd9c70d LICENSE.txt

+ 16 - 0
package/checksec/checksec.mk

@@ -0,0 +1,16 @@
+################################################################################
+#
+# checksec
+#
+################################################################################
+
+CHECKSEC_VERSION = cdefe53eb72e6e8f23308417d2fc6b68cba9dbac
+CHECKSEC_SITE = $(call github,slimm609,checksec.sh,$(CHECKSEC_VERSION))
+CHECKSEC_LICENSE = BSD-3-Clause
+CHECKSEC_LICENSE_FILES = LICENSE.txt
+
+define HOST_CHECKSEC_INSTALL_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/checksec $(HOST_DIR)/bin/checksec
+endef
+
+$(eval $(host-generic-package))

+ 1 - 1
package/coreutils/coreutils.hash

@@ -1,2 +1,2 @@
 # Locally calculated after checking pgp signature
-sha256 8891d349ee87b9ff7870f52b6d9312a9db672d2439d289bc57084771ca21656b  coreutils-8.27.tar.xz
+sha256 e831b3a86091496cdba720411f9748de81507798f6130adeaef872d206e1b057  coreutils-8.30.tar.xz

+ 1 - 1
package/coreutils/coreutils.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-COREUTILS_VERSION = 8.27
+COREUTILS_VERSION = 8.30
 COREUTILS_SITE = $(BR2_GNU_MIRROR)/coreutils
 COREUTILS_SOURCE = coreutils-$(COREUTILS_VERSION).tar.xz
 COREUTILS_LICENSE = GPL-3.0+

+ 1 - 0
package/cryptsetup/Config.in

@@ -8,6 +8,7 @@ config BR2_PACKAGE_CRYPTSETUP
 	select BR2_PACKAGE_LVM2
 	select BR2_PACKAGE_UTIL_LINUX
 	select BR2_PACKAGE_UTIL_LINUX_LIBUUID
+	select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
 	select BR2_PACKAGE_JSON_C
 	help
 	  This tool helps manipulate dm-crypt and luks partitions for

+ 1 - 1
package/cryptsetup/cryptsetup.hash

@@ -1,4 +1,4 @@
 # From https://www.kernel.org/pub/linux/utils/cryptsetup/v2.0/sha256sums.asc
-sha256 4d6cca04c1f5ff4a68d045d190efb2623087eda0274ded92f92a4b6911e501d4  cryptsetup-2.0.3.tar.xz
+sha256 9d3a3c7033293e0c97f0ad0501fd5b4d4913ae497cbf70cca06633ccc54b5734  cryptsetup-2.0.4.tar.xz
 sha256 45670cce8b6a0ddd66c8016cd8ccef6cd71f35717cbacc7f1e895b3855207b33  COPYING
 sha256 8c33cc37871654ec7ed87e6fbb896c8cf33ef5ef05b1611a5aed857596ffafa5  COPYING.LGPL

+ 4 - 2
package/cryptsetup/cryptsetup.mk

@@ -5,7 +5,7 @@
 ################################################################################
 
 CRYPTSETUP_VERSION_MAJOR = 2.0
-CRYPTSETUP_VERSION = $(CRYPTSETUP_VERSION_MAJOR).3
+CRYPTSETUP_VERSION = $(CRYPTSETUP_VERSION_MAJOR).4
 CRYPTSETUP_SOURCE = cryptsetup-$(CRYPTSETUP_VERSION).tar.xz
 CRYPTSETUP_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/cryptsetup/v$(CRYPTSETUP_VERSION_MAJOR)
 CRYPTSETUP_DEPENDENCIES = lvm2 popt util-linux host-pkgconf json-c \
@@ -14,6 +14,7 @@ CRYPTSETUP_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (library)
 CRYPTSETUP_LICENSE_FILES = COPYING COPYING.LGPL
 CRYPTSETUP_INSTALL_STAGING = YES
 CRYPTSETUP_CONF_ENV += LDFLAGS="$(TARGET_LDFLAGS) $(TARGET_NLS_LIBS)"
+CRYPTSETUP_CONF_OPTS += --enable-blkid
 
 # cryptsetup uses libgcrypt by default, but can be configured to use OpenSSL
 # or kernel crypto modules instead
@@ -37,7 +38,8 @@ HOST_CRYPTSETUP_DEPENDENCIES = \
 	host-openssl
 
 HOST_CRYPTSETUP_CONF_OPTS = --with-crypto_backend=openssl \
-	--disable-kernel_crypto
+	--disable-kernel_crypto \
+	--enable-blkid
 
 $(eval $(autotools-package))
 $(eval $(host-autotools-package))

+ 0 - 58
package/dt-utils/0001-common-Rename-strlcpy-to-DT_strlcpy.patch

@@ -1,58 +0,0 @@
-From 3d229cc0f8dc81335c53b1f7471ef82ef2f6e570 Mon Sep 17 00:00:00 2001
-From: Marcin Niestroj <m.niestroj@grinn-global.com>
-Date: Fri, 23 Jun 2017 11:11:04 +0200
-Subject: [PATCH] common: Rename strlcpy to DT_strlcpy
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-strlcpy function is defined in uClibc library, causing "static
-declaration of ‘strlcpy’ follows non-static declaration" build
-errors.
-
-Rename internal strlcpy function to DT_strlcpy to avoid conflicts.
-
-Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
----
- src/dt/common.h | 4 ++--
- src/libdt.c     | 2 +-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/dt/common.h b/src/dt/common.h
-index f6bad44..992e28f 100644
---- a/src/dt/common.h
-+++ b/src/dt/common.h
-@@ -168,7 +168,7 @@ static inline char *barebox_asprintf(const char *fmt, ...)
- #define basprintf(fmt, arg...) barebox_asprintf(fmt, ##arg)
- 
- /**
-- * strlcpy - Copy a %NUL terminated string into a sized buffer
-+ * DT_strlcpy - Copy a %NUL terminated string into a sized buffer
-  * @dest: Where to copy the string to
-  * @src: Where to copy the string from
-  * @size: size of destination buffer
-@@ -178,7 +178,7 @@ static inline char *barebox_asprintf(const char *fmt, ...)
-  * of course, the buffer size is zero). It does not pad
-  * out the result like strncpy() does.
-  */
--static inline size_t strlcpy(char *dest, const char *src, size_t size)
-+static inline size_t DT_strlcpy(char *dest, const char *src, size_t size)
- {
- 	size_t ret = strlen(src);
- 
-diff --git a/src/libdt.c b/src/libdt.c
-index 4db5160..3adeed2 100644
---- a/src/libdt.c
-+++ b/src/libdt.c
-@@ -1503,7 +1503,7 @@ int of_modalias_node(struct device_node *node, char *modalias, int len)
- 	if (!compatible || strlen(compatible) > cplen)
- 		return -ENODEV;
- 	p = strchr(compatible, ',');
--	strlcpy(modalias, p ? p + 1 : compatible, len);
-+	DT_strlcpy(modalias, p ? p + 1 : compatible, len);
- 	return 0;
- }
- 
--- 
-2.13.1
-

+ 0 - 38
package/dt-utils/0002-common-Include-sys-types.h-header.patch

@@ -1,38 +0,0 @@
-From b8bc4e83bf447b6330ece54e94a1684d12ecdd0b Mon Sep 17 00:00:00 2001
-From: Marcin Niestroj <m.niestroj@grinn-global.com>
-Date: Fri, 23 Jun 2017 12:00:30 +0200
-Subject: [PATCH] common: Include sys/types.h header
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Build with musl library fails with following error:
-
-In file included from src/crypto/sha1.c:21:0:
-./src/digest.h:95:10: error: unknown type name ‘ulong’
-          ulong start, ulong size);
-...
-
-Fix that by including sys/types.h header in common.h, so ulong type
-is defined with musl library.
-
-Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
----
- src/dt/common.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/dt/common.h b/src/dt/common.h
-index 992e28f..1425c53 100644
---- a/src/dt/common.h
-+++ b/src/dt/common.h
-@@ -13,6 +13,7 @@
- 
- #include <sys/ioctl.h>
- #include <sys/stat.h>
-+#include <sys/types.h>
- 
- #include <mtd/mtd-abi.h>
- 
--- 
-2.13.1
-

+ 3 - 0
package/dt-utils/dt-utils.hash

@@ -0,0 +1,3 @@
+# Locally computed
+sha256 a3aae73da39fd46775de390b7babafb63767082da10870c01b6595c4c9762af6  dt-utils-v2018.05.0.tar.gz
+sha256 a45932c79317d15116eadbf1c9c6fc59117ec3c4621db3a876066defa723963b  COPYING

+ 1 - 1
package/dt-utils/dt-utils.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-DT_UTILS_VERSION = v2017.03.0
+DT_UTILS_VERSION = v2018.05.0
 DT_UTILS_SITE = https://git.pengutronix.de/git/tools/dt-utils
 DT_UTILS_SITE_METHOD = git
 DT_UTILS_LICENSE = GPL-2.0

+ 16 - 0
package/duktape/Config.in

@@ -0,0 +1,16 @@
+config BR2_PACKAGE_DUKTAPE
+	bool "duktape"
+	depends on !BR2_STATIC_LIBS
+	help
+	  Duktape is an embeddable Javascript engine, with a focus on
+	  portability and compact footprint.
+
+	  Duktape is easy to integrate into a C/C++ project: add
+	  duktape.c, duktape.h, and duk_config.h to your build, and use
+	  the Duktape API to call Ecmascript functions from C code and
+	  vice versa.
+
+	  http://www.duktape.org
+
+comment "duktape needs a toolchain w/ dynamic library"
+	depends on BR2_STATIC_LIBS

+ 3 - 0
package/duktape/duktape.hash

@@ -0,0 +1,3 @@
+# Locally computed:
+sha256	0df1c0a9d40bfae31733e5c44f0eabaeae59e0a2ebf7693ff68bbabd49aae331	duktape-v2.3.0.tar.gz
+sha256	5358498534dac625c89a69c10becf3dcc40f9af58e6b69ee358ebdf6934f49c6	LICENSE.txt

+ 27 - 0
package/duktape/duktape.mk

@@ -0,0 +1,27 @@
+################################################################################
+#
+# duktape
+#
+################################################################################
+
+DUKTAPE_VERSION = v2.3.0
+DUKTAPE_SITE = $(call github,svaarala,duktape-releases,$(DUKTAPE_VERSION))
+DUKTAPE_LICENSE = MIT
+DUKTAPE_LICENSE_FILES = LICENSE.txt
+DUKTAPE_INSTALL_STAGING = YES
+
+define DUKTAPE_BUILD_CMDS
+	$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) -f Makefile.sharedlibrary
+endef
+
+define DUKTAPE_INSTALL_STAGING_CMDS
+	$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) -f Makefile.sharedlibrary \
+		INSTALL_PREFIX=$(STAGING_DIR)/usr install
+endef
+
+define DUKTAPE_INSTALL_TARGET_CMDS
+	$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) -f Makefile.sharedlibrary \
+		INSTALL_PREFIX=$(TARGET_DIR)/usr install
+endef
+
+$(eval $(generic-package))

+ 2 - 1
package/e2fsprogs/e2fsprogs.mk

@@ -26,8 +26,9 @@ HOST_E2FSPROGS_CONF_OPTS = \
 	--disable-fuse2fs \
 	--disable-libblkid \
 	--disable-libuuid \
+	--disable-testio-debug \
 	--enable-symlink-install \
-	--disable-testio-debug
+	--enable-elf-shlibs
 
 # Set the binary directories to "/bin" and "/sbin", as busybox does,
 # so that we do not end up with two versions of e2fs tools.

+ 4 - 4
package/expat/expat.hash

@@ -1,7 +1,7 @@
-# From https://sourceforge.net/projects/expat/files/expat/2.2.5/
-md5	789e297f547980fc9ecc036f9a070d49		expat-2.2.5.tar.bz2
-sha1	490659abd7d6c6d4cb4e60c945a15fbf081564f6	expat-2.2.5.tar.bz2
+# From https://sourceforge.net/projects/expat/files/expat/2.2.6/
+md5	ca047ae951b40020ac831c28859161b2		expat-2.2.6.tar.bz2
+sha1	c8947fc3119a797b55485f2f7bdaaeb49cc9df01	expat-2.2.6.tar.bz2
 
 # Locally calculated
-sha256	d9dc32efba7e74f788fcc4f212a43216fc37cf5f23f4c2339664d473353aedf6	expat-2.2.5.tar.bz2
+sha256	17b43c2716d521369f82fc2dc70f359860e90fa440bea65b3b85f0b246ea81f2	expat-2.2.6.tar.bz2
 sha256	46336ab2fec900803e2f1a4253e325ac01d998efb09bc6906651f7259e636f76	COPYING

+ 4 - 1
package/expat/expat.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-EXPAT_VERSION = 2.2.5
+EXPAT_VERSION = 2.2.6
 EXPAT_SITE = http://downloads.sourceforge.net/project/expat/expat/$(EXPAT_VERSION)
 EXPAT_SOURCE = expat-$(EXPAT_VERSION).tar.bz2
 EXPAT_INSTALL_STAGING = YES
@@ -13,5 +13,8 @@ HOST_EXPAT_DEPENDENCIES = host-pkgconf
 EXPAT_LICENSE = MIT
 EXPAT_LICENSE_FILES = COPYING
 
+EXPAT_CONF_OPTS = --without-docbook
+HOST_EXPAT_CONF_OPTS = --without-docbook
+
 $(eval $(autotools-package))
 $(eval $(host-autotools-package))

+ 0 - 138
package/flatcc/0001-Remove-strncpy-gcc-8-warning-add-flatbuffers_type_ha.patch

@@ -1,138 +0,0 @@
-From c0df0b6fca4fa6bca114bba4df74f1b4e53124c0 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Mikkel=20Fahn=C3=B8e=20J=C3=B8rgensen?= <mikkel@dvide.com>
-Date: Sat, 9 Jun 2018 11:10:24 +0200
-Subject: [PATCH] Remove strncpy gcc-8 warning, add
- flatbuffers_type_hash_from_string
-
-[baruch: drop CHANGELOG hunk]
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
-Upstream status: commit c0df0b6fca4
-
- include/flatcc/flatcc_identifier.h            | 21 +++++++++++++++++++
- .../reflection/flatbuffers_common_reader.h    |  4 +---
- src/compiler/codegen_c_reader.c               |  4 +---
- src/runtime/json_printer.c                    |  7 +++++--
- src/runtime/verifier.c                        |  5 ++---
- 6 files changed, 32 insertions(+), 11 deletions(-)
-
-diff --git a/include/flatcc/flatcc_identifier.h b/include/flatcc/flatcc_identifier.h
-index cd918cb42b48..31af3074f4db 100644
---- a/include/flatcc/flatcc_identifier.h
-+++ b/include/flatcc/flatcc_identifier.h
-@@ -77,6 +77,27 @@ static inline flatbuffers_thash_t flatbuffers_type_hash_from_identifier(const fl
-         (uint32_t)p[0] + (((uint32_t)p[1]) << 8) + (((uint32_t)p[2]) << 16) + (((uint32_t)p[3]) << 24) : 0;
- }
- 
-+/*
-+ * Convert a null terminated string identifier like "MONS" or "X" into a
-+ * native type hash identifier, usually for comparison. This will not
-+ * work with type hash strings because they can contain null bytes.
-+ */
-+static inline flatbuffers_thash_t flatbuffers_type_hash_from_string(const char *identifier)
-+{
-+    flatbuffers_thash_t h = 0;
-+    const uint8_t *p = (const uint8_t *)identifier;
-+
-+    if (!p[0]) return h;
-+    h += p[0];
-+    if (!p[1]) return h;
-+    h += p[1] << 8;
-+    if (!p[2]) return h;
-+    h += p[2] << 16;
-+    /* No need to test for termination here. */
-+    h += p[3] << 24;
-+    return h;
-+}
-+
- /*
-  * Computes the little endian wire format of the type hash. It can be
-  * used as a file identifer argument to various flatcc buffer calls.
-diff --git a/include/flatcc/reflection/flatbuffers_common_reader.h b/include/flatcc/reflection/flatbuffers_common_reader.h
-index dee44ad653f1..9604052685f6 100644
---- a/include/flatcc/reflection/flatbuffers_common_reader.h
-+++ b/include/flatcc/reflection/flatbuffers_common_reader.h
-@@ -464,9 +464,7 @@ static inline T N ## _ ## NK (N ## _struct_t t__tmp) { return t__tmp ? &(t__tmp-
- /* If fid is null, the function returns true without testing as buffer is not expected to have any id. */
- static inline int flatbuffers_has_identifier(const void *buffer, const char *fid)
- { flatbuffers_thash_t id, id2 = 0; if (fid == 0) { return 1; };
--  strncpy((char *)&id2, fid, sizeof(id2));
--  /* Identifier strings are always considered little endian. */
--  id2 = __flatbuffers_thash_cast_from_le(id2);
-+  id2 = flatbuffers_type_hash_from_string(fid);
-   id = __flatbuffers_thash_read_from_pe(((flatbuffers_uoffset_t *)buffer) + 1);
-   return id2 == 0 || id == id2; }
- static inline int flatbuffers_has_type_hash(const void *buffer, flatbuffers_thash_t thash)
-diff --git a/src/compiler/codegen_c_reader.c b/src/compiler/codegen_c_reader.c
-index e3df74754344..559731050a15 100644
---- a/src/compiler/codegen_c_reader.c
-+++ b/src/compiler/codegen_c_reader.c
-@@ -748,9 +748,7 @@ static void gen_helpers(fb_output_t *out)
-             "/* If fid is null, the function returns true without testing as buffer is not expected to have any id. */\n"
-             "static inline int %shas_identifier(const void *buffer, const char *fid)\n"
-             "{ %sthash_t id, id2 = 0; if (fid == 0) { return 1; };\n"
--            "  strncpy((char *)&id2, fid, sizeof(id2));\n"
--            "  /* Identifier strings are always considered little endian. */\n"
--            "  id2 = __%sthash_cast_from_le(id2);\n"
-+            "  id2 = %stype_hash_from_string(fid);\n"
-             "  id = __%sthash_read_from_pe(((%suoffset_t *)buffer) + 1);\n"
-             "  return id2 == 0 || id == id2; }\n"
-             "static inline int %shas_type_hash(const void *buffer, %sthash_t thash)\n"
-diff --git a/src/runtime/json_printer.c b/src/runtime/json_printer.c
-index 8fe248331f43..bc86d21f8f9d 100644
---- a/src/runtime/json_printer.c
-+++ b/src/runtime/json_printer.c
-@@ -20,6 +20,7 @@
- 
- #include "flatcc/flatcc_flatbuffers.h"
- #include "flatcc/flatcc_json_printer.h"
-+#include "flatcc/flatcc_identifier.h"
- 
- #include "flatcc/portable/pprintint.h"
- #include "flatcc/portable/pprintfp.h"
-@@ -1008,6 +1009,9 @@ void flatcc_json_printer_struct_field(flatcc_json_printer_t *ctx,
- /*
-  * Make sure the buffer identifier is valid before assuming the rest of
-  * the buffer is sane.
-+ * NOTE: this won't work with type hashes because these can contain
-+ * nulls in the fid string. In this case use null as fid to disable
-+ * check.
-  */
- static int accept_header(flatcc_json_printer_t * ctx,
-         const void *buf, size_t bufsiz, const char *fid)
-@@ -1020,8 +1024,7 @@ static int accept_header(flatcc_json_printer_t * ctx,
-         return 0;
-     }
-     if (fid != 0) {
--        strncpy((char *)&id2, fid, FLATBUFFERS_IDENTIFIER_SIZE);
--        id2 = __flatbuffers_thash_cast_from_le(id2);
-+        id2 = flatbuffers_type_hash_from_string(fid);
-         id = __flatbuffers_thash_read_from_pe((uint8_t *)buf + offset_size);
-         if (!(id2 == 0 || id == id2)) {
-             RAISE_ERROR(bad_input);
-diff --git a/src/runtime/verifier.c b/src/runtime/verifier.c
-index 68dbc1b6fb0b..3b7c68cca4d7 100644
---- a/src/runtime/verifier.c
-+++ b/src/runtime/verifier.c
-@@ -10,6 +10,7 @@
- #include "flatcc/flatcc_rtconfig.h"
- #include "flatcc/flatcc_flatbuffers.h"
- #include "flatcc/flatcc_verifier.h"
-+#include "flatcc/flatcc_identifier.h"
- 
- /* Customization for testing. */
- #if FLATCC_DEBUG_VERIFY
-@@ -110,9 +111,7 @@ static inline uoffset_t read_uoffset(const void *p, uoffset_t base)
- 
- static inline thash_t read_thash_identifier(const char *identifier)
- {
--    flatbuffers_thash_t id = 0;
--    strncpy((char *)&id, identifier, sizeof(id));
--    return __flatbuffers_thash_cast_from_le(id);
-+    return flatbuffers_type_hash_from_string(identifier);
- }
- 
- static inline thash_t read_thash(const void *p, uoffset_t base)
--- 
-2.17.1
-

+ 2 - 1
package/flatcc/flatcc.hash

@@ -1,2 +1,3 @@
 # Locally calculated
-sha256	8c4560ca32e3c555716d9363bed469e2c60e0f443ec32bc08e7abfe681e25ca9  flatcc-v0.5.1.tar.gz
+sha256	02dac93d3daf8d0a290aa8711a9b8a53f047436ec5331adb1972389061ec6615  flatcc-v0.5.2.tar.gz
+sha256	c8f0d9c1f92c658d87ebd854ee7447a3d3912d2c3a5c78c117787be5d5da8af3  LICENSE

+ 1 - 1
package/flatcc/flatcc.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FLATCC_VERSION = v0.5.1
+FLATCC_VERSION = v0.5.2
 FLATCC_SITE = $(call github,dvidelabs,flatcc,$(FLATCC_VERSION))
 FLATCC_LICENSE = Apache-2.0
 FLATCC_LICENSE_FILES = LICENSE

+ 2 - 1
package/fmt/fmt.hash

@@ -1,2 +1,3 @@
 # Locally calculated
-sha256 35300a0d356529447a79ed5ccf419239d8b34f916e5d4625f046fd37afa3650a  fmt-4.0.0.tar.gz
+sha256 73d4cab4fa8a3482643d8703de4d9522d7a56981c938eca42d929106ff474b44  fmt-5.1.0.tar.gz
+sha256 560d39617dfb4b4e4088597291a070ed6c3a8d67668114ed475c673430c3e49a  LICENSE.rst

+ 1 - 1
package/fmt/fmt.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FMT_VERSION = 4.0.0
+FMT_VERSION = 5.1.0
 FMT_SITE = $(call github,fmtlib,fmt,$(FMT_VERSION))
 FMT_LICENSE = BSD-2-Clause
 FMT_LICENSE_FILES = LICENSE.rst

+ 5 - 0
package/freescale-imx/Config.in

@@ -65,6 +65,10 @@ config BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
 		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53 || \
 		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q
 
+config BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
+	bool
+	default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M
+
 config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU
 	bool
 	default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q || \
@@ -80,6 +84,7 @@ source "package/freescale-imx/imx-m4fwloader/Config.in"
 source "package/freescale-imx/imx-parser/Config.in"
 source "package/freescale-imx/imx-uuc/Config.in"
 source "package/freescale-imx/imx-vpu/Config.in"
+source "package/freescale-imx/imx-vpu-hantro/Config.in"
 source "package/freescale-imx/imx-vpuwrap/Config.in"
 source "package/freescale-imx/firmware-imx/Config.in"
 if (BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51 || BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53)

+ 3 - 1
package/freescale-imx/imx-codec/imx-codec.hash

@@ -1,2 +1,4 @@
 # locally computed
-sha256	20d3f9b4187fcd9e7007c94558a00bab1191513eee74b6f0d8c7b43f874e06ed  imx-codec-4.2.1.bin
+sha256  6bb54f91c3ca18567e14d95d3858022dc9be00dc86e9edfdb544d1240a3b2b04  imx-codec-4.3.5.bin
+sha256  78696664f7afe7f2b081c99af60082d6403fab935b1b10056ed41aec123ff7fa  COPYING
+sha256  fc93f26e4197b9240c327ce26ae6e02123f022423d4704c7b0448a37372cf2a2  EULA

+ 1 - 1
package/freescale-imx/imx-codec/imx-codec.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-IMX_CODEC_VERSION = 4.2.1
+IMX_CODEC_VERSION = 4.3.5
 IMX_CODEC_SITE = $(FREESCALE_IMX_SITE)
 IMX_CODEC_SOURCE = imx-codec-$(IMX_CODEC_VERSION).bin
 IMX_CODEC_INSTALL_STAGING = YES

+ 3 - 1
package/freescale-imx/imx-parser/imx-parser.hash

@@ -1,2 +1,4 @@
 # locally computed
-sha256	36d3ae7285f3a83a87abf680b8a52b3c07df869d2443de844fb5f0ff528ca862  imx-parser-4.2.1.bin
+sha256  9cd8c49a0bb1050afcfbcc7a677a348443fda4ecacb621cc6e38897619e27c67  imx-parser-4.3.5.bin
+sha256  78696664f7afe7f2b081c99af60082d6403fab935b1b10056ed41aec123ff7fa  COPYING
+sha256  fc93f26e4197b9240c327ce26ae6e02123f022423d4704c7b0448a37372cf2a2  EULA

+ 1 - 1
package/freescale-imx/imx-parser/imx-parser.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-IMX_PARSER_VERSION = 4.2.1
+IMX_PARSER_VERSION = 4.3.5
 IMX_PARSER_SITE = $(FREESCALE_IMX_SITE)
 IMX_PARSER_SOURCE = imx-parser-$(IMX_PARSER_VERSION).bin
 IMX_PARSER_INSTALL_STAGING = YES

+ 44 - 0
package/freescale-imx/imx-vpu-hantro/0001-Fix-ion.h-header-inclusion-to-be-standard.patch

@@ -0,0 +1,44 @@
+From 872c82e7cbb9a0a0e761e8ac70fc28e19a55b4c3 Mon Sep 17 00:00:00 2001
+From: Gary Bisson <gary.bisson@boundarydevices.com>
+Date: Thu, 12 Jul 2018 11:38:28 +0200
+Subject: [PATCH] Fix ion.h header inclusion to be standard
+
+NXP "solution" was to manually copy the header to include/linux.
+Let's point the Makefile to the proper (mainline) location instead:
+https://elixir.bootlin.com/linux/v4.17/source/drivers/staging/android/uapi/ion.h
+
+Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
+---
+ Makefile                                  | 2 ++
+ decoder_sw/software/linux/dwl/dwl_linux.c | 2 +-
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index b74e23a..a5ce22b 100755
+--- a/Makefile
++++ b/Makefile
+@@ -11,6 +11,8 @@ INCLUDE_HEADERS = -I./decoder_sw -I$(SOURCE_ROOT)/source/inc -I$(SOURCE_ROOT)/so
+ INCLUDE_HEADERS += -I$(SOURCE_ROOT)/linux/memalloc
+ #INCLUDE_HEADERS += -I$(SOURCE_ROOT)/linux/ldriver
+ INCLUDE_HEADERS += -I$(LINUX_KERNEL_ROOT)/include/uapi -I$(LINUX_KERNEL_ROOT)/include
++# ION header location
++INCLUDE_HEADERS += -I$(LINUX_KERNEL_ROOT)/drivers/staging/android/uapi
+ 
+ CFLAGS += -DDEC_MODULE_PATH=\"/dev/mxc_hantro\" -DUSE_FAKE_RFC_TABLE -DFIFO_DATATYPE=void* -DNDEBUG -DDOWN_SCALER \
+            -DUSE_EXTERNAL_BUFFER -DUSE_FAST_EC -DUSE_VP9_EC -DGET_FREE_BUFFER_NON_BLOCK \
+diff --git a/decoder_sw/software/linux/dwl/dwl_linux.c b/decoder_sw/software/linux/dwl/dwl_linux.c
+index 8183660..ed37d86 100644
+--- a/decoder_sw/software/linux/dwl/dwl_linux.c
++++ b/decoder_sw/software/linux/dwl/dwl_linux.c
+@@ -41,7 +41,7 @@
+ #include "dwl.h"
+ #include <linux/hantrodec.h>
+ #ifdef USE_ION
+-#include <linux/ion.h>
++#include <ion.h>
+ #ifdef ANDROID
+ #include <linux/mxc_ion.h>
+ #endif
+-- 
+2.18.0
+

+ 20 - 0
package/freescale-imx/imx-vpu-hantro/Config.in

@@ -0,0 +1,20 @@
+comment "imx-vpu-hantro needs an i.MX-specific Linux kernel to be built"
+	depends on !BR2_LINUX_KERNEL
+
+comment "imx-vpu-hantro needs an i.MX platform with Hantro VPU"
+	depends on BR2_LINUX_KERNEL
+	depends on !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
+
+config BR2_PACKAGE_IMX_VPU_HANTRO
+	bool "imx-vpu-hantro"
+	depends on BR2_LINUX_KERNEL
+	depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
+	help
+	  Library of userspace helpers specific for the NXP i.MX SoC
+	  integrating a Hantro Video Processing Unit (VPU) such as the
+	  i.MX8MQ/i.MX8MM.
+	  It requires a kernel that includes the i.MX specific headers
+	  to be built.
+
+	  This library is provided by NXP as-is and doesn't have an
+	  upstream.

+ 3 - 0
package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.hash

@@ -0,0 +1,3 @@
+sha256  cbc648e41f005aad209f74c9e5dd346138dca12efeb7b27e471de7474c4da302  imx-vpu-hantro-1.6.0.bin
+sha256  0f34f6175247762e2e1c38319aadf657a53f00ce124e569dfc61b30451549e7a  COPYING
+sha256  faf01d10e484879247963eb97d96622a980232e22a35e487dfe53b13708b686a  EULA

+ 42 - 0
package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.mk

@@ -0,0 +1,42 @@
+################################################################################
+#
+# imx-vpu-hantro
+#
+################################################################################
+
+IMX_VPU_HANTRO_VERSION = 1.6.0
+IMX_VPU_HANTRO_SITE = $(FREESCALE_IMX_SITE)
+IMX_VPU_HANTRO_SOURCE = imx-vpu-hantro-$(IMX_VPU_HANTRO_VERSION).bin
+IMX_VPU_HANTRO_DEPENDENCIES = linux
+IMX_VPU_HANTRO_INSTALL_STAGING = YES
+
+IMX_VPU_HANTRO_MAKE_ENV = \
+	$(TARGET_MAKE_ENV) \
+	$(TARGET_CONFIGURE_OPTS) \
+	CROSS_COMPILE="$(TARGET_CROSS)" \
+	SDKTARGETSYSROOT=$(STAGING_DIR) \
+	LINUX_KERNEL_ROOT=$(LINUX_DIR)
+
+IMX_VPU_HANTRO_LICENSE = NXP Semiconductor Software License Agreement
+IMX_VPU_HANTRO_LICENSE_FILES = EULA COPYING
+IMX_VPU_HANTRO_REDISTRIBUTE = NO
+
+define IMX_VPU_HANTRO_EXTRACT_CMDS
+	$(call FREESCALE_IMX_EXTRACT_HELPER,$(IMX_VPU_HANTRO_DL_DIR)/$(IMX_VPU_HANTRO_SOURCE))
+endef
+
+define IMX_VPU_HANTRO_BUILD_CMDS
+	$(IMX_VPU_HANTRO_MAKE_ENV) $(MAKE1) -C $(@D)
+endef
+
+define IMX_VPU_HANTRO_INSTALL_STAGING_CMDS
+	$(IMX_VPU_HANTRO_MAKE_ENV) $(MAKE1) -C $(@D) \
+		DEST_DIR=$(STAGING_DIR) libdir=/usr/lib install
+endef
+
+define IMX_VPU_HANTRO_INSTALL_TARGET_CMDS
+	$(IMX_VPU_HANTRO_MAKE_ENV) $(MAKE1) -C $(@D) \
+		DEST_DIR=$(TARGET_DIR) libdir=/usr/lib install
+endef
+
+$(eval $(generic-package))

+ 5 - 8
package/freescale-imx/imx-vpu/Config.in

@@ -1,17 +1,14 @@
 comment "imx-vpu needs an i.MX platform with VPU support"
-	depends on BR2_arm
 	depends on !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
 
 config BR2_PACKAGE_IMX_VPU
 	bool "imx-vpu"
-	depends on BR2_arm # Only relevant for i.MX
 	depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
 	select BR2_PACKAGE_FIRMWARE_IMX
 	help
-	  Library of userspace helpers specific for the Freescale i.MX
-	  platform. It wraps the kernel interfaces for the i.MX platform
-	  Video Processing Unit (VPU) driver. It requires a kernel that
-	  includes the i.MX specific headers to be built.
+	  Library of userspace helpers specific for the NXP i.MX SoC
+	  integrating a Chips&Media CODA Video Processing Unit (VPU)
+	  such as the i.MX27/i.MX5x/i.MX6x.
 
-	  This library is provided by Freescale as-is and doesn't have
-	  an upstream.
+	  This library is provided by NXP as-is and doesn't have an
+	  upstream.

+ 3 - 1
package/freescale-imx/imx-vpu/imx-vpu.hash

@@ -1,2 +1,4 @@
 # Locally computed
-sha256	ee265e88d17c7369bd9cb917e7cce035b8c7ee2ba4491645fdab9f382f54beb0  imx-vpu-5.4.37.bin
+sha256  34bed0ddf6c797f444bddfa5d5495adc751ff268b6431d8beb48129c89c9e47f  imx-vpu-5.4.38.bin
+sha256  78696664f7afe7f2b081c99af60082d6403fab935b1b10056ed41aec123ff7fa  COPYING
+sha256  fc93f26e4197b9240c327ce26ae6e02123f022423d4704c7b0448a37372cf2a2  EULA

+ 1 - 1
package/freescale-imx/imx-vpu/imx-vpu.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-IMX_VPU_VERSION = 5.4.37
+IMX_VPU_VERSION = 5.4.38
 IMX_VPU_SITE = $(FREESCALE_IMX_SITE)
 IMX_VPU_SOURCE = imx-vpu-$(IMX_VPU_VERSION).bin
 

+ 5 - 6
package/freescale-imx/imx-vpuwrap/Config.in

@@ -1,17 +1,16 @@
 comment "imx-vpuwrap needs an imx-specific Linux kernel to be built"
-	depends on BR2_arm
 	depends on !BR2_LINUX_KERNEL
 
 comment "imx-vpuwrap needs an i.MX platform with VPU support"
-	depends on BR2_arm
-	depends on BR2_LINUX_KERNEL && !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
+	depends on BR2_LINUX_KERNEL
+	depends on !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU && !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
 
 config BR2_PACKAGE_IMX_VPUWRAP
 	bool "imx-vpuwrap"
 	depends on BR2_LINUX_KERNEL
-	depends on BR2_arm # Only relevant for i.MX
-	depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
-	select BR2_PACKAGE_IMX_VPU
+	depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU || BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
+	select BR2_PACKAGE_IMX_VPU if BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
+	select BR2_PACKAGE_IMX_VPU_HANTRO if BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
 	help
 	  Wrapper library for the vpu library, giving it a different
 	  API.

+ 3 - 1
package/freescale-imx/imx-vpuwrap/imx-vpuwrap.hash

@@ -1,2 +1,4 @@
 # locally computed
-sha256	282e7f8766ce385d8752bd29f04ddeff709ece0846be97547cf982183bbe241e  imx-vpuwrap-1.0.68.bin
+sha256  5c08b4b7c771404c998779f0e27a75564b57958d463e2df152c910d76cca9e44  imx-vpuwrap-4.3.5.bin
+sha256  78696664f7afe7f2b081c99af60082d6403fab935b1b10056ed41aec123ff7fa  COPYING
+sha256  fc93f26e4197b9240c327ce26ae6e02123f022423d4704c7b0448a37372cf2a2  EULA

+ 9 - 2
package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk

@@ -4,12 +4,19 @@
 #
 ################################################################################
 
-IMX_VPUWRAP_VERSION = 1.0.68
+IMX_VPUWRAP_VERSION = 4.3.5
 IMX_VPUWRAP_SITE = $(FREESCALE_IMX_SITE)
 IMX_VPUWRAP_SOURCE = imx-vpuwrap-$(IMX_VPUWRAP_VERSION).bin
-IMX_VPUWRAP_DEPENDENCIES = imx-vpu
 IMX_VPUWRAP_INSTALL_STAGING = YES
 
+ifeq ($(BR2_PACKAGE_IMX_VPU),y)
+IMX_VPUWRAP_DEPENDENCIES = imx-vpu
+endif
+
+ifeq ($(BR2_PACKAGE_IMX_VPU_HANTRO),y)
+IMX_VPUWRAP_DEPENDENCIES = imx-vpu-hantro
+endif
+
 IMX_VPUWRAP_LICENSE = NXP Semiconductor Software License Agreement
 IMX_VPUWRAP_LICENSE_FILES = EULA COPYING
 IMX_VPUWRAP_REDISTRIBUTE = NO

+ 2 - 1
package/fwup/fwup.hash

@@ -1,2 +1,3 @@
 # Locally calculated
-sha256 852e255bd65f9db473a06184abb3e94e3b6b86be7bf66169e8df8146d5966ae1  fwup-v0.15.4.tar.gz
+sha256 20302dc96cef88438034e15551e178bb0652c28d99aa7ca5260100cb3bebbc2a  fwup-v1.2.5.tar.gz
+sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE

+ 1 - 1
package/fwup/fwup.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FWUP_VERSION = v0.15.4
+FWUP_VERSION = v1.2.5
 FWUP_SITE = $(call github,fhunleth,fwup,$(FWUP_VERSION))
 FWUP_LICENSE = Apache-2.0
 FWUP_LICENSE_FILES = LICENSE

+ 0 - 1
package/gadgetfs-test/Config.in

@@ -8,7 +8,6 @@ if BR2_PACKAGE_GADGETFS_TEST
 
 config BR2_PACKAGE_GADGETFS_TEST_USE_AIO
 	bool "use asynchronous i/o"
-	depends on BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS
 	select BR2_PACKAGE_LIBAIO
 	help
 	  Select this to have gadgetfs-test do asynchronous I/O using

+ 71 - 0
package/gcc/4.9.4/0003-libsanitizer-Use-pre-computed-size.patch

@@ -0,0 +1,71 @@
+From 61f38c64c01a15560026115a157b7021ec67bd3b Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 24 May 2018 20:21:54 +0000
+Subject: [PATCH] libsanitizer: Use pre-computed size of struct ustat for Linux
+
+Cherry-pick compiler-rt revision 333213:
+
+<sys/ustat.h> has been removed from glibc 2.28 by:
+
+commit cf2478d53ad7071e84c724a986b56fe17f4f4ca7
+Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date:   Sun Mar 18 11:28:59 2018 +0800
+
+    Deprecate ustat syscall interface
+
+This patch uses pre-computed size of struct ustat for Linux.
+
+	PR sanitizer/85835
+	* sanitizer_common/sanitizer_platform_limits_posix.cc: Don't
+	include <sys/ustat.h> for Linux.
+	(SIZEOF_STRUCT_USTAT): New.
+	(struct_ustat_sz): Use SIZEOF_STRUCT_USTAT for Linux.
+
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@260688 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Backported from upstream commit
+https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=61f38c64c01a15560026115a157b7021ec67bd3b
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ libsanitizer/ChangeLog                                    |  8 ++++++++
+ .../sanitizer_common/sanitizer_platform_limits_posix.cc   | 15 +++++++++++++--
+ 2 files changed, 21 insertions(+), 2 deletions(-)
+
+diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
+index 31a5e69..8017afd 100644
+--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
+@@ -81,7 +89,6 @@ typedef struct user_fpregs elf_fpregset_t;
+ # include <sys/procfs.h>
+ #endif
+ #include <sys/user.h>
+-#include <sys/ustat.h>
+ #include <linux/cyclades.h>
+ #include <linux/if_eql.h>
+ #include <linux/if_plip.h>
+@@ -163,7 +170,19 @@
+   unsigned struct_old_utsname_sz = sizeof(struct old_utsname);
+   unsigned struct_oldold_utsname_sz = sizeof(struct oldold_utsname);
+   unsigned struct_itimerspec_sz = sizeof(struct itimerspec);
+-  unsigned struct_ustat_sz = sizeof(struct ustat);
++  // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which
++  // has been removed from glibc 2.28.
++#if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \
++  || defined(__powerpc64__) || defined(__arch64__) || defined(__sparcv9) \
++  || defined(__x86_64__)
++#define SIZEOF_STRUCT_USTAT 32
++#elif defined(__arm__) || defined(__i386__) || defined(__mips__) \
++  || defined(__powerpc__) || defined(__s390__)
++#define SIZEOF_STRUCT_USTAT 20
++#else
++#error Unknown size of struct ustat
++#endif
++  unsigned struct_ustat_sz = SIZEOF_STRUCT_USTAT;
+ #endif // SANITIZER_LINUX
+ 
+ #if SANITIZER_LINUX && !SANITIZER_ANDROID
+-- 
+2.9.3

+ 72 - 0
package/gcc/5.5.0/0002-libsanitizer-Use-pre-computed-size.patch

@@ -0,0 +1,72 @@
+From 61f38c64c01a15560026115a157b7021ec67bd3b Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 24 May 2018 20:21:54 +0000
+Subject: [PATCH] libsanitizer: Use pre-computed size of struct ustat for Linux
+
+Cherry-pick compiler-rt revision 333213:
+
+<sys/ustat.h> has been removed from glibc 2.28 by:
+
+commit cf2478d53ad7071e84c724a986b56fe17f4f4ca7
+Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date:   Sun Mar 18 11:28:59 2018 +0800
+
+    Deprecate ustat syscall interface
+
+This patch uses pre-computed size of struct ustat for Linux.
+
+	PR sanitizer/85835
+	* sanitizer_common/sanitizer_platform_limits_posix.cc: Don't
+	include <sys/ustat.h> for Linux.
+	(SIZEOF_STRUCT_USTAT): New.
+	(struct_ustat_sz): Use SIZEOF_STRUCT_USTAT for Linux.
+
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@260688 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Downloaded from upstream commit
+https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=61f38c64c01a15560026115a157b7021ec67bd3b
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ libsanitizer/ChangeLog                                    |  8 ++++++++
+ .../sanitizer_common/sanitizer_platform_limits_posix.cc   | 15 +++++++++++++--
+ 2 files changed, 21 insertions(+), 2 deletions(-)
+
+diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
+index 31a5e69..8017afd 100644
+--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
+@@ -154,7 +154,6 @@ typedef struct user_fpregs elf_fpregset_t;
+ # include <sys/procfs.h>
+ #endif
+ #include <sys/user.h>
+-#include <sys/ustat.h>
+ #include <linux/cyclades.h>
+ #include <linux/if_eql.h>
+ #include <linux/if_plip.h>
+@@ -247,7 +246,19 @@ namespace __sanitizer {
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+ #if SANITIZER_LINUX && !SANITIZER_ANDROID
+-  unsigned struct_ustat_sz = sizeof(struct ustat);
++  // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which
++  // has been removed from glibc 2.28.
++#if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \
++  || defined(__powerpc64__) || defined(__arch64__) || defined(__sparcv9) \
++  || defined(__x86_64__)
++#define SIZEOF_STRUCT_USTAT 32
++#elif defined(__arm__) || defined(__i386__) || defined(__mips__) \
++  || defined(__powerpc__) || defined(__s390__)
++#define SIZEOF_STRUCT_USTAT 20
++#else
++#error Unknown size of struct ustat
++#endif
++  unsigned struct_ustat_sz = SIZEOF_STRUCT_USTAT;
+   unsigned struct_rlimit64_sz = sizeof(struct rlimit64);
+   unsigned struct_statvfs64_sz = sizeof(struct statvfs64);
+ #endif // SANITIZER_LINUX && !SANITIZER_ANDROID
+-- 
+2.9.3
+

+ 72 - 0
package/gcc/6.4.0/0003-libsanitizer-Use-pre-computed-size.patch

@@ -0,0 +1,72 @@
+From 61f38c64c01a15560026115a157b7021ec67bd3b Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 24 May 2018 20:21:54 +0000
+Subject: [PATCH] libsanitizer: Use pre-computed size of struct ustat for Linux
+
+Cherry-pick compiler-rt revision 333213:
+
+<sys/ustat.h> has been removed from glibc 2.28 by:
+
+commit cf2478d53ad7071e84c724a986b56fe17f4f4ca7
+Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date:   Sun Mar 18 11:28:59 2018 +0800
+
+    Deprecate ustat syscall interface
+
+This patch uses pre-computed size of struct ustat for Linux.
+
+	PR sanitizer/85835
+	* sanitizer_common/sanitizer_platform_limits_posix.cc: Don't
+	include <sys/ustat.h> for Linux.
+	(SIZEOF_STRUCT_USTAT): New.
+	(struct_ustat_sz): Use SIZEOF_STRUCT_USTAT for Linux.
+
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@260688 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Downloaded from upstream commit
+https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=61f38c64c01a15560026115a157b7021ec67bd3b
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ libsanitizer/ChangeLog                                    |  8 ++++++++
+ .../sanitizer_common/sanitizer_platform_limits_posix.cc   | 15 +++++++++++++--
+ 2 files changed, 21 insertions(+), 2 deletions(-)
+
+diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
+index 31a5e69..8017afd 100644
+--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
+@@ -154,7 +154,6 @@ typedef struct user_fpregs elf_fpregset_t;
+ # include <sys/procfs.h>
+ #endif
+ #include <sys/user.h>
+-#include <sys/ustat.h>
+ #include <linux/cyclades.h>
+ #include <linux/if_eql.h>
+ #include <linux/if_plip.h>
+@@ -247,7 +246,19 @@ namespace __sanitizer {
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+ #if SANITIZER_LINUX && !SANITIZER_ANDROID
+-  unsigned struct_ustat_sz = sizeof(struct ustat);
++  // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which
++  // has been removed from glibc 2.28.
++#if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \
++  || defined(__powerpc64__) || defined(__arch64__) || defined(__sparcv9) \
++  || defined(__x86_64__)
++#define SIZEOF_STRUCT_USTAT 32
++#elif defined(__arm__) || defined(__i386__) || defined(__mips__) \
++  || defined(__powerpc__) || defined(__s390__)
++#define SIZEOF_STRUCT_USTAT 20
++#else
++#error Unknown size of struct ustat
++#endif
++  unsigned struct_ustat_sz = SIZEOF_STRUCT_USTAT;
+   unsigned struct_rlimit64_sz = sizeof(struct rlimit64);
+   unsigned struct_statvfs64_sz = sizeof(struct statvfs64);
+ #endif // SANITIZER_LINUX && !SANITIZER_ANDROID
+-- 
+2.9.3
+

+ 0 - 0
package/gcc/7.3.0/0002-xtensa-fix-PR-target-65416.patch → package/gcc/7.3.0/0003-xtensa-fix-PR-target-65416.patch


+ 72 - 0
package/gcc/7.3.0/0004-libsanitizer-Use-pre-computed-size.patch

@@ -0,0 +1,72 @@
+From 61f38c64c01a15560026115a157b7021ec67bd3b Mon Sep 17 00:00:00 2001
+From: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 24 May 2018 20:21:54 +0000
+Subject: [PATCH] libsanitizer: Use pre-computed size of struct ustat for Linux
+
+Cherry-pick compiler-rt revision 333213:
+
+<sys/ustat.h> has been removed from glibc 2.28 by:
+
+commit cf2478d53ad7071e84c724a986b56fe17f4f4ca7
+Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date:   Sun Mar 18 11:28:59 2018 +0800
+
+    Deprecate ustat syscall interface
+
+This patch uses pre-computed size of struct ustat for Linux.
+
+	PR sanitizer/85835
+	* sanitizer_common/sanitizer_platform_limits_posix.cc: Don't
+	include <sys/ustat.h> for Linux.
+	(SIZEOF_STRUCT_USTAT): New.
+	(struct_ustat_sz): Use SIZEOF_STRUCT_USTAT for Linux.
+
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@260688 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Downloaded from upstream commit
+https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=61f38c64c01a15560026115a157b7021ec67bd3b
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ libsanitizer/ChangeLog                                    |  8 ++++++++
+ .../sanitizer_common/sanitizer_platform_limits_posix.cc   | 15 +++++++++++++--
+ 2 files changed, 21 insertions(+), 2 deletions(-)
+
+diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
+index 31a5e69..8017afd 100644
+--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc
+@@ -154,7 +154,6 @@ typedef struct user_fpregs elf_fpregset_t;
+ # include <sys/procfs.h>
+ #endif
+ #include <sys/user.h>
+-#include <sys/ustat.h>
+ #include <linux/cyclades.h>
+ #include <linux/if_eql.h>
+ #include <linux/if_plip.h>
+@@ -247,7 +246,19 @@ namespace __sanitizer {
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+ 
+ #if SANITIZER_LINUX && !SANITIZER_ANDROID
+-  unsigned struct_ustat_sz = sizeof(struct ustat);
++  // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which
++  // has been removed from glibc 2.28.
++#if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \
++  || defined(__powerpc64__) || defined(__arch64__) || defined(__sparcv9) \
++  || defined(__x86_64__)
++#define SIZEOF_STRUCT_USTAT 32
++#elif defined(__arm__) || defined(__i386__) || defined(__mips__) \
++  || defined(__powerpc__) || defined(__s390__)
++#define SIZEOF_STRUCT_USTAT 20
++#else
++#error Unknown size of struct ustat
++#endif
++  unsigned struct_ustat_sz = SIZEOF_STRUCT_USTAT;
+   unsigned struct_rlimit64_sz = sizeof(struct rlimit64);
+   unsigned struct_statvfs64_sz = sizeof(struct statvfs64);
+ #endif // SANITIZER_LINUX && !SANITIZER_ANDROID
+-- 
+2.9.3
+

+ 9 - 2
package/git-crypt/Config.in

@@ -1,6 +1,8 @@
 config BR2_PACKAGE_GIT_CRYPT
 	bool "git-crypt"
 	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11
+	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr
 	depends on BR2_USE_MMU # git
 	select BR2_PACKAGE_GIT # runtime
 	select BR2_PACKAGE_OPENSSL
@@ -10,6 +12,11 @@ config BR2_PACKAGE_GIT_CRYPT
 
 	  https://www.agwa.name/projects/git-crypt/
 
-comment "git-crypt needs a toolchain w/ C++"
-	depends on !BR2_INSTALL_LIBSTDCPP
+comment "git-crypt needs a toolchain w/ C++, gcc >= 4.9"
+	depends on !BR2_INSTALL_LIBSTDCPP \
+		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
 	depends on BR2_USE_MMU
+
+comment "git-crypt needs a toolchain not affected by GCC bug 64735"
+	depends on BR2_USE_MMU
+	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735

+ 5 - 2
package/git-crypt/git-crypt.hash

@@ -1,2 +1,5 @@
-# Hash from: https://lists.cloudmutt.com/pipermail/git-crypt-announce/2015-May/000003.html
-sha256 0a8f92c0a0a125bf768d0c054d947ca4e4b8d6556454b0e7e87fb907ee17cf06 git-crypt-0.5.0.tar.gz
+# Locally calculated after checking pgp signature
+sha256 6d30fcd99442d50f4b3c8d554067ff1d980cdf9f3120ee774131172dba98fd6f  git-crypt-0.6.0.tar.gz
+# Locally calculated
+sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903  COPYING
+sha256 506657e7a381165550e6c33e35b3b03bbef3e1feb68ba5529e264bd75ed2dc64  parse_options.hpp

+ 3 - 2
package/git-crypt/git-crypt.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-GIT_CRYPT_VERSION = 0.5.0
+GIT_CRYPT_VERSION = 0.6.0
 GIT_CRYPT_SITE = https://www.agwa.name/projects/git-crypt/downloads
 GIT_CRYPT_DEPENDENCIES = host-pkgconf openssl
 GIT_CRYPT_LICENSE = GPL-3.0+, MIT
@@ -14,7 +14,8 @@ GIT_CRYPT_LIBS = `$(PKG_CONFIG_HOST_BINARY) --libs openssl`
 
 define GIT_CRYPT_BUILD_CMDS
 	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \
-		LDFLAGS="$(TARGET_LDFLAGS) $(GIT_CRYPT_LIBS)" PREFIX=/usr
+		LDFLAGS="$(TARGET_LDFLAGS) $(GIT_CRYPT_LIBS)" \
+		CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11" PREFIX=/usr
 endef
 
 define GIT_CRYPT_INSTALL_TARGET_CMDS

+ 1 - 1
package/glibc/glibc.hash

@@ -1,5 +1,5 @@
 # Locally calculated (fetched from Github)
-sha256  33189b3f10c88730a1f686fac794bc01f31765f12ffd75bc5e8a0f2a690d217a     glibc-glibc-2.27-57-g6c99e37f6fb640a50a3113b2dbee5d5389843c1e.tar.gz
+sha256  877c7b4741501d1762af8ef1a2518bdf2d722947d2e8d48b203e2d83cc600bca     glibc-glibc-2.28.tar.gz
 # Locally calculated (fetched from Github)
 sha256  e08ab67b2db2d0f0e8f3311d23c54fb8f6d4c1ef6fa0b4047fd5da400e3ce9de     glibc-arc-2018.03-release.tar.gz
 

+ 1 - 1
package/glibc/glibc.mk

@@ -10,7 +10,7 @@ GLIBC_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,glibc,$(GLIBC_VE
 else
 # Generate version string using:
 #   git describe --match 'glibc-*' --abbrev=40 origin/release/MAJOR.MINOR/master
-GLIBC_VERSION = glibc-2.27-57-g6c99e37f6fb640a50a3113b2dbee5d5389843c1e
+GLIBC_VERSION = glibc-2.28
 # Upstream doesn't officially provide an https download link.
 # There is one (https://sourceware.org/git/glibc.git) but it's not reliable,
 # sometimes the connection times out. So use an unofficial github mirror.

+ 5 - 2
package/glibmm/glibmm.hash

@@ -1,2 +1,5 @@
-# From http://ftp.gnome.org/pub/GNOME/sources/glibmm/2.54/glibmm-2.54.1.sha256sum
-sha256	7cc28c732b04d70ed34f0c923543129083cfb90580ea4a2b4be5b38802bf6a4a glibmm-2.54.1.tar.xz
+# From http://ftp.gnome.org/pub/GNOME/sources/glibmm/2.56/glibmm-2.56.0.sha256sum
+sha256	6e74fcba0d245451c58fc8a196e9d103789bc510e1eee1a9b1e816c5209e79a9 glibmm-2.56.0.tar.xz
+# License files, locally calculated
+sha256	3ea7fa7c5d9a3a113e950eca9cfb85107f096270d8e4dd99daa9d8abdebc60e7 COPYING
+sha256	ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING.tools

+ 2 - 2
package/glibmm/glibmm.mk

@@ -4,8 +4,8 @@
 #
 ################################################################################
 
-GLIBMM_VERSION_MAJOR = 2.54
-GLIBMM_VERSION = $(GLIBMM_VERSION_MAJOR).1
+GLIBMM_VERSION_MAJOR = 2.56
+GLIBMM_VERSION = $(GLIBMM_VERSION_MAJOR).0
 GLIBMM_LICENSE = LGPL-2.1+ (library), GPL-2.0+ (tools)
 GLIBMM_LICENSE_FILES = COPYING COPYING.tools
 GLIBMM_SOURCE = glibmm-$(GLIBMM_VERSION).tar.xz

+ 1 - 1
package/glorytun/glorytun.hash

@@ -1,2 +1,2 @@
-sha256 76849b1568119cf0834749db56d4882966863d31351c21c1b22f373f0c97a498  glorytun-0.0.93-mud.tar.gz
+sha256 5e23afad4592d6af27ffd2cb3c826cf0ea1b5166a05ef1ae5c77fb4e465bb735  glorytun-0.0.99-mud.tar.gz
 sha256 bd418f8ef7d62f2c89e3aa1e5dc41c7d7a6212eb1cdb4d39a26a5bd333e1b4a3  LICENSE

+ 1 - 1
package/glorytun/glorytun.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-GLORYTUN_VERSION = 0.0.93-mud
+GLORYTUN_VERSION = 0.0.99-mud
 GLORYTUN_SITE = https://github.com/angt/glorytun/releases/download/v$(GLORYTUN_VERSION)
 GLORYTUN_DEPENDENCIES = libsodium host-pkgconf
 GLORYTUN_LICENSE = BSD-2-clause

+ 7 - 1
package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk

@@ -25,13 +25,19 @@ GST1_PLUGINS_GOOD_CONF_OPTS = \
 
 # Options which require currently unpackaged libraries
 GST1_PLUGINS_GOOD_CONF_OPTS += \
-	--disable-jack \
 	--disable-libdv \
 	--disable-dv1394 \
 	--disable-shout2
 
 GST1_PLUGINS_GOOD_DEPENDENCIES = gstreamer1 gst1-plugins-base
 
+ifeq ($(BR2_PACKAGE_JACK2),y)
+GST1_PLUGINS_GOOD_CONF_OPTS += --enable-jack
+GST1_PLUGINS_GOOD_DEPENDENCIES += jack2
+else
+GST1_PLUGINS_GOOD_CONF_OPTS += --disable-jack
+endif
+
 ifeq ($(BR2_PACKAGE_LIBV4L),y)
 GST1_PLUGINS_GOOD_CONF_OPTS += --with-libv4l2
 GST1_PLUGINS_GOOD_DEPENDENCIES += libv4l

+ 5 - 1
package/gzip/gzip.hash

@@ -1,2 +1,6 @@
 # Locally calculated after checking pgp signature
-sha256 ff1767ec444f71e5daf8972f6f8bf68cfcca1d2f76c248eb18e8741fc91dbbd3  gzip-1.8.tar.xz
+# https://ftp.gnu.org/gnu/gzip/gzip-1.9.tar.xz.sig
+# using key 155D3FC500C834486D1EEA677FD9FCCB000BEEEE
+sha256 ae506144fc198bd8f81f1f4ad19ce63d5a2d65e42333255977cf1dcf1479089a  gzip-1.9.tar.xz
+# Locally calculated
+sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903  COPYING

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно