فهرست منبع

Merge branch 'next'

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Peter Korsgaard 10 سال پیش
والد
کامیت
cddaae8229
38فایلهای تغییر یافته به همراه348 افزوده شده و 111 حذف شده
  1. 25 0
      board/via/imx6_vab820/patches/uboot/default-to-boot-from-the-SD-card.patch
  2. 107 0
      board/via/imx6_vab820/readme.txt
  3. 6 0
      boot/barebox/Config.in
  4. 1 0
      boot/barebox/barebox.mk
  5. 4 4
      configs/riotboard_defconfig
  6. 31 0
      configs/via_imx6_vab820_defconfig
  7. 13 2
      docs/manual/adding-packages-kconfig.txt
  8. 6 0
      linux/Config.in
  9. 1 0
      linux/linux.mk
  10. 1 0
      package/Config.in.host
  11. 37 0
      package/boost/0002-gcc.jam-compiler-options-fix.patch
  12. 3 3
      package/boost/boost.hash
  13. 1 1
      package/boost/boost.mk
  14. 6 0
      package/busybox/Config.in
  15. 1 0
      package/busybox/busybox.mk
  16. 0 59
      package/e2fsprogs/0001-libext2fs-fix-potential-buffer-overflow-in-closefs.patch
  17. 2 2
      package/e2fsprogs/e2fsprogs.hash
  18. 1 1
      package/e2fsprogs/e2fsprogs.mk
  19. 7 0
      package/faketime/Config.in.host
  20. 20 0
      package/faketime/faketime.mk
  21. 15 2
      package/flashrom/Config.in
  22. 2 0
      package/flashrom/flashrom.hash
  23. 2 2
      package/flashrom/flashrom.mk
  24. 0 24
      package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk
  25. 1 1
      package/libuv/libuv.mk
  26. 1 1
      package/luajit/0001-no-bin-symlink.patch
  27. 0 0
      package/luajit/0002-install-inc.patch
  28. 0 0
      package/luajit/0003-install-so.patch
  29. 1 1
      package/luajit/luajit.hash
  30. 1 1
      package/luajit/luajit.mk
  31. 1 1
      package/mmc-utils/mmc-utils.mk
  32. 1 1
      package/mosquitto/mosquitto.hash
  33. 1 1
      package/mosquitto/mosquitto.mk
  34. 10 4
      package/pkg-kconfig.mk
  35. 2 0
      package/sepolgen/sepolgen.hash
  36. 30 0
      package/sepolgen/sepolgen.mk
  37. 6 0
      package/uclibc/Config.in
  38. 1 0
      package/uclibc/uclibc.mk

+ 25 - 0
board/via/imx6_vab820/patches/uboot/default-to-boot-from-the-SD-card.patch

@@ -0,0 +1,25 @@
+From 6e72bef18c928753c9861c1f6fc8c2c4dd5d1e97 Mon Sep 17 00:00:00 2001
+From: Gergely Imreh <imrehg@gmail.com>
+Date: Thu, 30 Apr 2015 16:24:38 +0800
+Subject: [PATCH] default to boot from the SD card
+
+---
+ include/configs/mx6qvab820_common.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/configs/mx6qvab820_common.h b/include/configs/mx6qvab820_common.h
+index 99bc8a9..2e70c94 100644
+--- a/include/configs/mx6qvab820_common.h
++++ b/include/configs/mx6qvab820_common.h
+@@ -216,7 +216,7 @@
+ 	"bootcmd_mmc=setenv mmcdev 1; setenv rootdev 0; setenv mmcname mmc; run bootcmd_main;\0"
+ 
+ #define CONFIG_BOOTCOMMAND \
+-	"run bootcmd_mmc"
++	"run bootcmd_sd"
+ 
+ #define CONFIG_ARP_TIMEOUT     200UL
+ 
+-- 
+2.3.7
+

+ 107 - 0
board/via/imx6_vab820/readme.txt

@@ -0,0 +1,107 @@
+VIA VAB-820/AMOS-820
+====================
+
+This file documents the Buildroot support for the VIA VAB-820 board and
+VIA AMOS-820 system, which are built around a Freescale i.MX6 Quad/Dual SoC.
+The kernel and u-boot is based on the official VIA BSP, which is in turn
+based on the Freescale Linux 3.10.17_1.0.0_ga BSP.
+
+
+Configuring and building Buildroot
+----------------------------------
+
+Start from the defconfig:
+
+  $ make via_imx6_vab820_defconfig
+
+You can edit build options the usual way:
+
+  $ make menuconfig
+
+When you are happy with the setup, run:
+
+  $ make
+
+The result of the build with the default settings should be these files:
+
+  output/images
+  ├── imx6q-vab820.dtb
+  ├── rootfs.tar
+  ├── u-boot.imx
+  └── uImage
+
+
+Set up your SD card
+-------------------
+
+*Important*: pay attention which partition you are modifying so you don't
+accidentally erase the wrong file system, e.g your host computer or your
+external storage!
+
+In the default setup you need to create 2 partitions on your SD card:
+a boot partition and a root partition. In this guide and in the default u-boot
+settings the boot partition is vfat, while the root partition is ext4.
+
+You also need to leave space for u-boot at the beginning of the card, before
+all the partitions.
+
+For example, if your SD card is at /dev/sdX, using fdisk, and starting from
+an empty card, the steps are along these lines:
+
+  # fdisk /dev/sdX
+  n         (new partition)
+  p         (primary partition)
+  1	    (first partition)
+  <return>  (default first sector, should be at least 1MB from the beginning
+             which is 2048 sectors if the sector size is 512KB)
+  +50M      (50MB size, as an example)
+  t         (switch partition type)
+  b         (select "W95 FAT32" type)
+  n         (the second partition)
+  p         (primary partition)
+  2	    (second partition)
+  <return>  (default first sector)
+  <return>  (use all remaining space)
+  p         (print so the partition looks something like this below)
+    Device     Boot  Start      End  Sectors  Size Id Type
+    /dev/sdX1         2048   104447   102400   50M  b W95 FAT32
+    /dev/sdX2       104448 15564799 15460352  7.4G 83 Linux
+  w         (save changes)
+
+After this you need to format the newly created file system:
+
+  # mkfs.vfat -L boot /dev/sdX1
+  # mkfs.ext4 -L rootfs /dev/sdX2
+
+Now the system can be copied onto the card. First copy the u-boot onto
+the region of the card before the first partition (starting from the
+root directory of buildroot):
+
+  # dd if=output/images/u-boot.imx of=/dev/sdX bs=512 seek=2
+
+Mount the first partition /dev/sdX1, and copy the kernel and the
+compiled device tree:
+
+  # cp output/images/uImage /mnt/<BOOT-PARTITION>
+  # cp output/images/imx6q-vab820.dtb /mnt/<BOOT-PARTITION>
+
+Finally, copy the root file system onto the mounted (empty) /dev/sdX2
+rootfs partition:
+
+  # tar xf output/images/rootfs.tar -C /mnt/<ROOTFS-PARTITION>
+
+
+Booting
+-------
+
+To use the on-card u-boot, you need adjust jumper J11 located just next to
+the SD card slot on the VAB-820 board. The correct position for SD card
+boot is jumping the two pins towards the inside of the board.
+
+To modify the default boot parameters compiled into u-boot, you can create
+a boot script with the file name `boot.scr` and place it onto the boot
+partition (same directory as `uImage`).
+
+If you want to have the login prompt on the serial debug line instead of
+the console, adjust the buildroot settings as:
+"System Configuration > getty options > TTY port > ttymxc1"

+ 6 - 0
boot/barebox/Config.in

@@ -91,6 +91,12 @@ config BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE
 	help
 	help
 	  Path to the barebox configuration file
 	  Path to the barebox configuration file
 
 
+config BR2_TARGET_BAREBOX_CONFIG_FRAGMENT_FILES
+	string "Additional configuration fragment files"
+	help
+	  A space-separated list of configuration fragment files,
+	  that will be merged to the main Barebox configuration file.
+
 config BR2_TARGET_BAREBOX_BAREBOXENV
 config BR2_TARGET_BAREBOX_BAREBOXENV
 	bool "bareboxenv tool in target"
 	bool "bareboxenv tool in target"
 	help
 	help

+ 1 - 0
boot/barebox/barebox.mk

@@ -64,6 +64,7 @@ BAREBOX_SOURCE_CONFIG = $(call qstrip,$(BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE))
 endif
 endif
 
 
 BAREBOX_KCONFIG_FILE = $(BAREBOX_SOURCE_CONFIG)
 BAREBOX_KCONFIG_FILE = $(BAREBOX_SOURCE_CONFIG)
+BAREBOX_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_TARGET_BAREBOX_CONFIG_FRAGMENT_FILES))
 BAREBOX_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig
 BAREBOX_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig
 BAREBOX_KCONFIG_OPTS = $(BAREBOX_MAKE_FLAGS)
 BAREBOX_KCONFIG_OPTS = $(BAREBOX_MAKE_FLAGS)
 
 

+ 4 - 4
configs/riotboard_defconfig

@@ -14,19 +14,19 @@ BR2_ROOTFS_OVERLAY="board/embest/riotboard/rootfs_overlay"
 
 
 # bootloader
 # bootloader
 BR2_TARGET_UBOOT=y
 BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_VERSION="2015.01"
+BR2_TARGET_UBOOT_VERSION="2015.04"
 BR2_TARGET_UBOOT_BOARDNAME="riotboard"
 BR2_TARGET_UBOOT_BOARDNAME="riotboard"
 BR2_TARGET_UBOOT_FORMAT_IMX=y
 BR2_TARGET_UBOOT_FORMAT_IMX=y
 
 
 # kernel headers
 # kernel headers
 BR2_KERNEL_HEADERS_VERSION=y
 BR2_KERNEL_HEADERS_VERSION=y
-BR2_DEFAULT_KERNEL_VERSION="3.19.3"
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_19=y
+BR2_DEFAULT_KERNEL_VERSION="4.0"
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_0=y
 
 
 # kernel
 # kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.19.3"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.0"
 BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
 BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_DTS_SUPPORT=y

+ 31 - 0
configs/via_imx6_vab820_defconfig

@@ -0,0 +1,31 @@
+# Architecture
+BR2_arm=y
+BR2_cortex_a9=y
+BR2_ARM_EABIHF=y
+BR2_ARM_FPU_VFPV3=y
+
+# Toolchain
+BR2_KERNEL_HEADERS_VERSION=y
+BR2_DEFAULT_KERNEL_VERSION="3.10.17"
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_10=y
+BR2_GLOBAL_PATCH_DIR="board/via/imx6_vab820/patches"
+
+# Kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_GIT=y
+BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/viaembedded/vab820-kernel-bsp.git"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="via_3.10.17_2.0.1"
+BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
+BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
+BR2_LINUX_KERNEL_UIMAGE=y
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_USE_INTREE_DTS=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-vab820"
+
+# Bootloader
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BOARDNAME="mx6qvab820"
+BR2_TARGET_UBOOT_CUSTOM_GIT=y
+BR2_TARGET_UBOOT_CUSTOM_REPO_URL="git://github.com/viaembedded/vab820-uboot-bsp.git"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="via_3.10.17_2.0.1"
+BR2_TARGET_UBOOT_FORMAT_IMX=y

+ 13 - 2
docs/manual/adding-packages-kconfig.txt

@@ -34,8 +34,14 @@ This snippet creates the following make targets:
 
 
 * +foo-menuconfig+, which calls the package's +menuconfig+ target
 * +foo-menuconfig+, which calls the package's +menuconfig+ target
 
 
-* +foo-update-config+, which copies the configuration back to the source
-  configuration file.
+* +foo-update-config+, which copies the configuration back to the
+  source configuration file. It is not possible to use this target
+  when fragment files are set.
+
+* +foo-update-defconfig+, which copies the configuration back to the
+  source configuration file. The configuration file will only list the
+  options that differ from the default values. It is not possible to
+  use this target when fragment files are set.
 
 
 and ensures that the source configuration file is copied to the build
 and ensures that the source configuration file is copied to the build
 directory at the right moment.
 directory at the right moment.
@@ -46,6 +52,11 @@ be set to suit the needs of the package under consideration:
 * +FOO_KCONFIG_EDITORS+: a space-separated list of kconfig editors to
 * +FOO_KCONFIG_EDITORS+: a space-separated list of kconfig editors to
   support, for example 'menuconfig xconfig'. By default, 'menuconfig'.
   support, for example 'menuconfig xconfig'. By default, 'menuconfig'.
 
 
+* +FOO_KCONFIG_FRAGMENT_FILES+: a space-separated list of configuration
+  fragment files that are merged to the main configuration file.
+  Fragment files are typically used when there is a desire to stay in sync
+  with an upstream (def)config file, with some minor modifications.
+
 * +FOO_KCONFIG_OPTS+: extra options to pass when calling the kconfig
 * +FOO_KCONFIG_OPTS+: extra options to pass when calling the kconfig
   editors. This may need to include '$(FOO_MAKE_OPTS)', for example. By
   editors. This may need to include '$(FOO_MAKE_OPTS)', for example. By
   default, empty.
   default, empty.

+ 6 - 0
linux/Config.in

@@ -164,6 +164,12 @@ config BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE
 	  Note: this can be a defconfig file or a complete .config file,
 	  Note: this can be a defconfig file or a complete .config file,
 	  which can later be saved back with make linux-update-(def)config.
 	  which can later be saved back with make linux-update-(def)config.
 
 
+config BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES
+	string "Additional configuration fragment files"
+	help
+	  A space-separated list of kernel configuration fragment files,
+	  that will be merged to the main kernel configuration file.
+
 #
 #
 # Binary format
 # Binary format
 #
 #

+ 1 - 0
linux/linux.mk

@@ -182,6 +182,7 @@ KERNEL_SOURCE_CONFIG = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE))
 endif
 endif
 
 
 LINUX_KCONFIG_FILE = $(KERNEL_SOURCE_CONFIG)
 LINUX_KCONFIG_FILE = $(KERNEL_SOURCE_CONFIG)
+LINUX_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES))
 LINUX_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig
 LINUX_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig
 LINUX_KCONFIG_OPTS = $(LINUX_MAKE_FLAGS)
 LINUX_KCONFIG_OPTS = $(LINUX_MAKE_FLAGS)
 
 

+ 1 - 0
package/Config.in.host

@@ -7,6 +7,7 @@ menu "Host utilities"
 	source "package/dosfstools/Config.in.host"
 	source "package/dosfstools/Config.in.host"
 	source "package/e2fsprogs/Config.in.host"
 	source "package/e2fsprogs/Config.in.host"
 	source "package/e2tools/Config.in.host"
 	source "package/e2tools/Config.in.host"
+	source "package/faketime/Config.in.host"
 	source "package/genext2fs/Config.in.host"
 	source "package/genext2fs/Config.in.host"
 	source "package/genimage/Config.in.host"
 	source "package/genimage/Config.in.host"
 	source "package/genpart/Config.in.host"
 	source "package/genpart/Config.in.host"

+ 37 - 0
package/boost/0002-gcc.jam-compiler-options-fix.patch

@@ -0,0 +1,37 @@
+From a891e48ed0b647b7bf550ad1d179398b23d0726e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
+Date: Sat, 2 May 2015 13:47:54 +0200
+Subject: [PATCH] gcc.jam compiler options fix
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Only PowerPC, SPARC, and x86 do support the -m32 and -m64 compiler options [1].
+
+Rather then excluding all architectures not supporting these options as it is
+done in commit c0634341d9ee2c02d3a55c91dafb988afc066c49 [2], include all
+architectures that do support them.
+
+[1] https://gcc.gnu.org/onlinedocs/gcc/Option-Summary.html
+[2] https://github.com/boostorg/build/commit/c0634341d9ee2c02d3a55c91dafb988afc066c49
+
+Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
+---
+ src/tools/gcc.jam | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam
+index db04534..fbe8ab0 100644
+--- a/tools/build/src/tools/gcc.jam
++++ b/tools/build/src/tools/gcc.jam
+@@ -451,7 +451,7 @@ rule setup-address-model ( targets * : sources * : properties * )
+         else
+         {
+             local arch = [ feature.get-values architecture : $(properties) ] ;
+-            if $(arch) != arm
++            if $(arch) = power || $(arch) = sparc || $(arch) = x86
+             {
+                 if $(model) = 32
+                 {
+--
+2.3.7

+ 3 - 3
package/boost/boost.hash

@@ -1,3 +1,3 @@
-# From http://sourceforge.net/projects/boost/files/boost/1.57.0/
-md5	1be49befbdd9a5ce9def2983ba3e7b76	boost_1_57_0.tar.bz2
-sha1	e151557ae47afd1b43dc3fac46f8b04a8fe51c12	boost_1_57_0.tar.bz2
+# From http://sourceforge.net/projects/boost/files/boost/1.58.0/
+md5	b8839650e61e9c1c0a89f371dd475546	boost_1_58_0.tar.bz2
+sha1	2fc96c1651ac6fe9859b678b165bd78dc211e881	boost_1_58_0.tar.bz2

+ 1 - 1
package/boost/boost.mk

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

+ 6 - 0
package/busybox/Config.in

@@ -20,6 +20,12 @@ config BR2_PACKAGE_BUSYBOX_CONFIG
 
 
 	  Most people will just use the default BusyBox configuration file.
 	  Most people will just use the default BusyBox configuration file.
 
 
+config BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES
+	string "Additional BusyBox configuration fragment files"
+	help
+	  A space-separated list of configuration fragment files,
+	  that will be merged to the main BusyBox configuration file.
+
 config BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 config BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 	bool "Show packages that are also provided by busybox"
 	bool "Show packages that are also provided by busybox"
 	help
 	help

+ 1 - 0
package/busybox/busybox.mk

@@ -46,6 +46,7 @@ ifndef BUSYBOX_CONFIG_FILE
 endif
 endif
 
 
 BUSYBOX_KCONFIG_FILE = $(BUSYBOX_CONFIG_FILE)
 BUSYBOX_KCONFIG_FILE = $(BUSYBOX_CONFIG_FILE)
+BUSYBOX_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES))
 BUSYBOX_KCONFIG_EDITORS = menuconfig xconfig gconfig
 BUSYBOX_KCONFIG_EDITORS = menuconfig xconfig gconfig
 BUSYBOX_KCONFIG_OPTS = $(BUSYBOX_MAKE_OPTS)
 BUSYBOX_KCONFIG_OPTS = $(BUSYBOX_MAKE_OPTS)
 
 

+ 0 - 59
package/e2fsprogs/0001-libext2fs-fix-potential-buffer-overflow-in-closefs.patch

@@ -1,59 +0,0 @@
-From 49d0fe2a14f2a23da2fe299643379b8c1d37df73 Mon Sep 17 00:00:00 2001
-From: Theodore Ts'o <tytso@mit.edu>
-Date: Fri, 6 Feb 2015 12:46:39 -0500
-Subject: [PATCH] libext2fs: fix potential buffer overflow in closefs()
-
-Upstream commit 49d0fe2a14f2.
-
-The bug fix in f66e6ce4446: "libext2fs: avoid buffer overflow if
-s_first_meta_bg is too big" had a typo in the fix for
-ext2fs_closefs().  In practice most of the security exposure was from
-the openfs path, since this meant if there was a carefully crafted
-file system, buffer overrun would be triggered when the file system was
-opened.
-
-However, if corrupted file system didn't trip over some corruption
-check, and then the file system was modified via tune2fs or debugfs,
-such that the superblock was marked dirty and then written out via the
-closefs() path, it's possible that the buffer overrun could be
-triggered when the file system is closed.
-
-Also clear up a signed vs unsigned warning while we're at it.
-
-Thanks to Nick Kralevich <nnk@google.com> for asking me to look at
-compiler warning in the code in question, which led me to notice the
-bug in f66e6ce4446.
-
-Addresses: CVE-2015-1572
-
-Signed-off-by: Theodore Ts'o <tytso@mit.edu>
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
- lib/ext2fs/closefs.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/lib/ext2fs/closefs.c b/lib/ext2fs/closefs.c
-index 1f9911311a1a..ab5b2fb2365e 100644
---- a/lib/ext2fs/closefs.c
-+++ b/lib/ext2fs/closefs.c
-@@ -287,7 +287,7 @@ errcode_t ext2fs_flush2(ext2_filsys fs, int flags)
- 	dgrp_t		j;
- #endif
- 	char	*group_ptr;
--	int	old_desc_blocks;
-+	blk64_t	old_desc_blocks;
- 	struct ext2fs_numeric_progress_struct progress;
- 
- 	EXT2_CHECK_MAGIC(fs, EXT2_ET_MAGIC_EXT2FS_FILSYS);
-@@ -346,7 +346,7 @@ errcode_t ext2fs_flush2(ext2_filsys fs, int flags)
- 	group_ptr = (char *) group_shadow;
- 	if (fs->super->s_feature_incompat & EXT2_FEATURE_INCOMPAT_META_BG) {
- 		old_desc_blocks = fs->super->s_first_meta_bg;
--		if (old_desc_blocks > fs->super->s_first_meta_bg)
-+		if (old_desc_blocks > fs->desc_blocks)
- 			old_desc_blocks = fs->desc_blocks;
- 	} else
- 		old_desc_blocks = fs->desc_blocks;
--- 
-2.1.4
-

+ 2 - 2
package/e2fsprogs/e2fsprogs.hash

@@ -1,2 +1,2 @@
-# From https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.42.12/sha256sums.asc
-sha256 6dadcd3b759195150d20154ab9d6516e3b3cbb35d66d461f55ae94a2854e7de8 e2fsprogs-1.42.12.tar.xz
+# From https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.42.13/sha256sums.asc
+sha256 e16474b5a3a30f9197160c4b91bd48d5a463583049c0fcc405b6f0f7075aa0c7 e2fsprogs-1.42.13.tar.xz

+ 1 - 1
package/e2fsprogs/e2fsprogs.mk

@@ -4,7 +4,7 @@
 #
 #
 ################################################################################
 ################################################################################
 
 
-E2FSPROGS_VERSION = 1.42.12
+E2FSPROGS_VERSION = 1.42.13
 E2FSPROGS_SOURCE = e2fsprogs-$(E2FSPROGS_VERSION).tar.xz
 E2FSPROGS_SOURCE = e2fsprogs-$(E2FSPROGS_VERSION).tar.xz
 E2FSPROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/people/tytso/e2fsprogs/v$(E2FSPROGS_VERSION)
 E2FSPROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/people/tytso/e2fsprogs/v$(E2FSPROGS_VERSION)
 E2FSPROGS_LICENSE = GPLv2, libuuid BSD-3c, libss and libet MIT-like with advertising clause
 E2FSPROGS_LICENSE = GPLv2, libuuid BSD-3c, libss and libet MIT-like with advertising clause

+ 7 - 0
package/faketime/Config.in.host

@@ -0,0 +1,7 @@
+config BR2_PACKAGE_HOST_FAKETIME
+	bool "host faketime"
+	help
+	  Faketime reports faked system time to programs without
+	  having to change the system-wide time.
+
+	  https://github.com/wolfcw/libfaketime

+ 20 - 0
package/faketime/faketime.mk

@@ -0,0 +1,20 @@
+################################################################################
+#
+# libfaketime
+#
+################################################################################
+
+FAKETIME_VERSION = v0.9.6
+FAKETIME_SITE = $(call github,wolfcw,libfaketime,$(FAKETIME_VERSION))
+FAKETIME_LICENSE = GPLv2
+FAKETIME_LICENSE_FILES = COPYING
+
+define HOST_FAKETIME_BUILD_CMDS
+	$(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=$(HOST_DIR)/usr
+endef
+
+define HOST_FAKETIME_INSTALL_CMDS
+	$(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=$(HOST_DIR)/usr install
+endef
+
+$(eval $(host-generic-package))

+ 15 - 2
package/flashrom/Config.in

@@ -1,11 +1,24 @@
 config BR2_PACKAGE_FLASHROM
 config BR2_PACKAGE_FLASHROM
 	bool "flashrom"
 	bool "flashrom"
 	select BR2_PACKAGE_PCIUTILS
 	select BR2_PACKAGE_PCIUTILS
+	select BR2_PACKAGE_LIBUSB
+	select BR2_PACKAGE_LIBUSB_COMPAT
+	select BR2_PACKAGE_LIBFTDI
 	# dmidecode is only a runtime dependency
 	# dmidecode is only a runtime dependency
 	select BR2_PACKAGE_DMIDECODE
 	select BR2_PACKAGE_DMIDECODE
 	depends on BR2_i386 || BR2_x86_64
 	depends on BR2_i386 || BR2_x86_64
+	depends on BR2_TOOLCHAIN_HAS_THREADS 	# libusb
+	depends on BR2_ARCH_HAS_ATOMICS 	# libftdi
 	help
 	help
-	  BIOS-updating utility.
-	  Requires PCIUtils libraries.
+	  flashrom is a utility for identifying, reading, writing,
+	  verifying and erasing flash chips. It is designed to flash
+	  BIOS/EFI/coreboot/firmware/optionROM images on mainboards,
+	  network/graphics/storage controller cards, and various other
+	  programmer devices.
 
 
 	  http://flashrom.org/
 	  http://flashrom.org/
+
+comment "flashrom needs a toolchain w/ threads"
+	depends on BR2_i386 || BR2_x86_64
+	depends on BR2_ARCH_HAS_ATOMICS
+	depends on !BR2_TOOLCHAIN_HAS_THREADS

+ 2 - 0
package/flashrom/flashrom.hash

@@ -0,0 +1,2 @@
+# Locally computed
+sha256 13dc7c895e583111ecca370363a3527d237d178a134a94b20db7df177c05f934 flashrom-0.9.8.tar.bz2

+ 2 - 2
package/flashrom/flashrom.mk

@@ -4,10 +4,10 @@
 #
 #
 ################################################################################
 ################################################################################
 
 
-FLASHROM_VERSION = 0.9.7
+FLASHROM_VERSION = 0.9.8
 FLASHROM_SOURCE = flashrom-$(FLASHROM_VERSION).tar.bz2
 FLASHROM_SOURCE = flashrom-$(FLASHROM_VERSION).tar.bz2
 FLASHROM_SITE = http://download.flashrom.org/releases
 FLASHROM_SITE = http://download.flashrom.org/releases
-FLASHROM_DEPENDENCIES = pciutils
+FLASHROM_DEPENDENCIES = pciutils libusb libusb-compat libftdi
 FLASHROM_LICENSE = GPLv2+
 FLASHROM_LICENSE = GPLv2+
 FLASHROM_LICENSE_FILES = COPYING
 FLASHROM_LICENSE_FILES = COPYING
 
 

+ 0 - 24
package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk

@@ -544,13 +544,6 @@ else
 GST1_PLUGINS_BAD_CONF_OPTS += --disable-bz2
 GST1_PLUGINS_BAD_CONF_OPTS += --disable-bz2
 endif
 endif
 
 
-ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_CDAUDIO),y)
-GST1_PLUGINS_BAD_CONF_OPTS += --enable-cdaudio
-GST1_PLUGINS_BAD_DEPENDENCIES += libcdaudio
-else
-GST1_PLUGINS_BAD_CONF_OPTS += --disable-cdaudio
-endif
-
 ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_CURL),y)
 ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_CURL),y)
 GST1_PLUGINS_BAD_CONF_OPTS += --enable-curl
 GST1_PLUGINS_BAD_CONF_OPTS += --enable-curl
 GST1_PLUGINS_BAD_DEPENDENCIES += libcurl
 GST1_PLUGINS_BAD_DEPENDENCIES += libcurl
@@ -663,23 +656,6 @@ else
 GST1_PLUGINS_BAD_CONF_OPTS += --disable-rsvg
 GST1_PLUGINS_BAD_CONF_OPTS += --disable-rsvg
 endif
 endif
 
 
-ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_EGLGLES),y)
-GST1_PLUGINS_BAD_CONF_OPTS += --enable-eglgles
-GST1_PLUGINS_BAD_DEPENDENCIES += libegl libgles
-
-ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
-# RPI has odd locations for several required headers.
-GST1_PLUGINS_BAD_CONF_OPTS += --with-egl-window-system=rpi
-GST1_PLUGINS_BAD_CONF_ENV += \
-	CFLAGS="$(TARGET_CFLAGS) \
-	-I$(STAGING_DIR)/usr/include/IL \
-	-I$(STAGING_DIR)/usr/include/interface/vcos/pthreads \
-	-I$(STAGING_DIR)/usr/include/interface/vmcs_host/linux"
-endif
-else
-GST1_PLUGINS_BAD_CONF_OPTS += --disable-eglgles
-endif
-
 ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SDL),y)
 ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SDL),y)
 GST1_PLUGINS_BAD_CONF_ENV += ac_cv_path_SDL_CONFIG=$(STAGING_DIR)/usr/bin/sdl-config
 GST1_PLUGINS_BAD_CONF_ENV += ac_cv_path_SDL_CONFIG=$(STAGING_DIR)/usr/bin/sdl-config
 GST1_PLUGINS_BAD_CONF_OPTS += --enable-sdl
 GST1_PLUGINS_BAD_CONF_OPTS += --enable-sdl

+ 1 - 1
package/libuv/libuv.mk

@@ -4,7 +4,7 @@
 #
 #
 ################################################################################
 ################################################################################
 
 
-LIBUV_VERSION = v1.4.2
+LIBUV_VERSION = v1.5.0
 LIBUV_SITE = $(call github,libuv,libuv,$(LIBUV_VERSION))
 LIBUV_SITE = $(call github,libuv,libuv,$(LIBUV_VERSION))
 LIBUV_DEPENDENCIES = host-pkgconf
 LIBUV_DEPENDENCIES = host-pkgconf
 LIBUV_INSTALL_STAGING = YES
 LIBUV_INSTALL_STAGING = YES

+ 1 - 1
package/luajit/0004-no-bin-symlink.patch → package/luajit/0001-no-bin-symlink.patch

@@ -1,4 +1,4 @@
-Do not use a symlink for the binary, simply name if luajit
+Do not use a symlink for the binary, simply name it luajit
 
 
 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 
 

+ 0 - 0
package/luajit/0005-install-inc.patch → package/luajit/0002-install-inc.patch


+ 0 - 0
package/luajit/0006-install-so.patch → package/luajit/0003-install-so.patch


+ 1 - 1
package/luajit/luajit.hash

@@ -1,2 +1,2 @@
 # Hashes from: http://luajit.org/download.html
 # Hashes from: http://luajit.org/download.html
-md5 f14e9104be513913810cd59c8c658dc0    LuaJIT-2.0.3.tar.gz
+md5 dd9c38307f2223a504cbfb96e477eca0    LuaJIT-2.0.4.tar.gz

+ 1 - 1
package/luajit/luajit.mk

@@ -4,7 +4,7 @@
 #
 #
 ################################################################################
 ################################################################################
 
 
-LUAJIT_VERSION = 2.0.3
+LUAJIT_VERSION = 2.0.4
 LUAJIT_SOURCE = LuaJIT-$(LUAJIT_VERSION).tar.gz
 LUAJIT_SOURCE = LuaJIT-$(LUAJIT_VERSION).tar.gz
 LUAJIT_SITE = http://luajit.org/download
 LUAJIT_SITE = http://luajit.org/download
 LUAJIT_LICENSE = MIT
 LUAJIT_LICENSE = MIT

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

@@ -4,7 +4,7 @@
 #
 #
 ################################################################################
 ################################################################################
 
 
-MMC_UTILS_VERSION = 11f2ceabc4ad3f0dd568e0ce68166e4803e0615b
+MMC_UTILS_VERSION = d0b46442b50794217e53b2455c1344c548d9d088
 MMC_UTILS_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git
 MMC_UTILS_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git
 MMC_UTILS_LICENSE = GPLv2
 MMC_UTILS_LICENSE = GPLv2
 
 

+ 1 - 1
package/mosquitto/mosquitto.hash

@@ -1,2 +1,2 @@
 # Locally calculated after checking pgp signature
 # Locally calculated after checking pgp signature
-sha256	75a8b051c7859a2426ffc15bf45b44f79c8288395a325d791ba54e5df9af58a8  mosquitto-1.4.1.tar.gz
+sha256	5ebc3800a0018bfbec62dcc3748fb29f628df068acd39c62c4ef651d9276647e  mosquitto-1.4.2.tar.gz

+ 1 - 1
package/mosquitto/mosquitto.mk

@@ -4,7 +4,7 @@
 #
 #
 ################################################################################
 ################################################################################
 
 
-MOSQUITTO_VERSION = 1.4.1
+MOSQUITTO_VERSION = 1.4.2
 MOSQUITTO_SITE = http://mosquitto.org/files/source
 MOSQUITTO_SITE = http://mosquitto.org/files/source
 MOSQUITTO_LICENSE = EPLv1.0 or EDLv1.0
 MOSQUITTO_LICENSE = EPLv1.0 or EDLv1.0
 MOSQUITTO_LICENSE_FILES = LICENSE.txt epl-v10 edl-v10
 MOSQUITTO_LICENSE_FILES = LICENSE.txt epl-v10 edl-v10

+ 10 - 4
package/pkg-kconfig.mk

@@ -35,18 +35,20 @@ $(call inner-generic-package,$(1),$(2),$(3),$(4))
 $(2)_KCONFIG_EDITORS ?= menuconfig
 $(2)_KCONFIG_EDITORS ?= menuconfig
 $(2)_KCONFIG_OPTS ?=
 $(2)_KCONFIG_OPTS ?=
 $(2)_KCONFIG_FIXUP_CMDS ?=
 $(2)_KCONFIG_FIXUP_CMDS ?=
+$(2)_KCONFIG_FRAGMENT_FILES ?=
 
 
 # The config file could be in-tree, so before depending on it the package should
 # The config file could be in-tree, so before depending on it the package should
 # be extracted (and patched) first
 # be extracted (and patched) first
 $$($(2)_KCONFIG_FILE): | $(1)-patch
 $$($(2)_KCONFIG_FILE): | $(1)-patch
 
 
-# The .config file is obtained by copying it from the specified source
-# configuration file, after the package has been patched.
+# The specified source configuration file and any additional configuration file
+# fragments are merged together to .config, after the package has been patched.
 # Since the file could be a defconfig file it needs to be expanded to a
 # Since the file could be a defconfig file it needs to be expanded to a
 # full .config first. We use 'make oldconfig' because this can be safely
 # full .config first. We use 'make oldconfig' because this can be safely
 # done even when the package does not support defconfigs.
 # done even when the package does not support defconfigs.
-$$($(2)_DIR)/.config: $$($(2)_KCONFIG_FILE)
-	$$(INSTALL) -m 0644 $$($(2)_KCONFIG_FILE) $$($(2)_DIR)/.config
+$$($(2)_DIR)/.config: $$($(2)_KCONFIG_FILE) $$($(2)_KCONFIG_FRAGMENT_FILES)
+	support/kconfig/merge_config.sh -m -O $$(@D) \
+		$$($(2)_KCONFIG_FILE) $$($(2)_KCONFIG_FRAGMENT_FILES)
 	@yes "" | $$($(2)_MAKE_ENV) $$(MAKE) -C $$($(2)_DIR) \
 	@yes "" | $$($(2)_MAKE_ENV) $$(MAKE) -C $$($(2)_DIR) \
 		$$($(2)_KCONFIG_OPTS) oldconfig
 		$$($(2)_KCONFIG_OPTS) oldconfig
 
 
@@ -87,6 +89,8 @@ $(1)-savedefconfig: $$($(2)_DIR)/.stamp_kconfig_fixup_done
 # Even though we could use 'cp --preserve-timestamps' here, the separate
 # Even though we could use 'cp --preserve-timestamps' here, the separate
 # cp and 'touch --reference' is used for symmetry with $(1)-update-defconfig.
 # cp and 'touch --reference' is used for symmetry with $(1)-update-defconfig.
 $(1)-update-config: $$($(2)_DIR)/.stamp_kconfig_fixup_done
 $(1)-update-config: $$($(2)_DIR)/.stamp_kconfig_fixup_done
+	@$$(if $$($(2)_KCONFIG_FRAGMENT_FILES), \
+		echo "Unable to perform $(1)-update-config when fragment files are set"; exit 1)
 	cp -f $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE)
 	cp -f $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE)
 	touch --reference $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE)
 	touch --reference $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE)
 
 
@@ -95,6 +99,8 @@ $(1)-update-config: $$($(2)_DIR)/.stamp_kconfig_fixup_done
 # $(1)-update-config, the reference for 'touch' is _not_ the file from which
 # $(1)-update-config, the reference for 'touch' is _not_ the file from which
 # we copy.
 # we copy.
 $(1)-update-defconfig: $(1)-savedefconfig
 $(1)-update-defconfig: $(1)-savedefconfig
+	@$$(if $$($(2)_KCONFIG_FRAGMENT_FILES), \
+		echo "Unable to perform $(1)-update-defconfig when fragment files are set"; exit 1)
 	cp -f $$($(2)_DIR)/defconfig $$($(2)_KCONFIG_FILE)
 	cp -f $$($(2)_DIR)/defconfig $$($(2)_KCONFIG_FILE)
 	touch --reference $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE)
 	touch --reference $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE)
 
 

+ 2 - 0
package/sepolgen/sepolgen.hash

@@ -0,0 +1,2 @@
+# https://github.com/SELinuxProject/selinux/wiki/Releases
+sha256 8a1c6d3a78c9b6ad3555c74def555f65a62950bf21c111c585bfc382fec3a645  sepolgen-1.1.9.tar.gz

+ 30 - 0
package/sepolgen/sepolgen.mk

@@ -0,0 +1,30 @@
+################################################################################
+#
+# sepolgen
+#
+################################################################################
+
+SEPOLGEN_VERSION = 1.1.9
+SEPOLGEN_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20130423
+SEPOLGEN_LICENSE = GPLv2
+SEPOLGEN_LICENSE_FILES = COPYING
+
+ifeq ($(BR2_PACKAGE_PYTHON3),y)
+HOST_SEPOLGEN_DEPENDENCIES = host-python3
+HOST_SEPOLGEN_MAKE_CMDS = $(HOST_CONFIGURE_OPTS) \
+	PYTHONLIBDIR=/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages
+else
+HOST_SEPOLGEN_DEPENDENCIES = host-python
+HOST_SEPOLGEN_MAKE_CMDS = $(HOST_CONFIGURE_OPTS) \
+	PYTHONLIBDIR=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages
+endif
+
+define HOST_SEPOLGEN_BUILD_CMDS
+	$(MAKE) -C $(@D) $(HOST_SEPOLGEN_MAKE_CMDS) DESTDIR=$(HOST_DIR)
+endef
+
+define HOST_SEPOLGEN_INSTALL_CMDS
+	$(MAKE) -C $(@D) $(HOST_SEPOLGEN_MAKE_CMDS) DESTDIR=$(HOST_DIR) install
+endef
+
+$(eval $(host-generic-package))

+ 6 - 0
package/uclibc/Config.in

@@ -86,6 +86,12 @@ config BR2_UCLIBC_CONFIG
 	  See also docs/README in this package.
 	  See also docs/README in this package.
 	  If unsure, use the default.
 	  If unsure, use the default.
 
 
+config BR2_UCLIBC_CONFIG_FRAGMENT_FILES
+	string "Additional uClibc configuration fragment files"
+	help
+	  A space-separated list of configuration fragment files,
+	  that will be merged to the main uClibc configuration file.
+
 config BR2_TOOLCHAIN_BUILDROOT_INET_RPC
 config BR2_TOOLCHAIN_BUILDROOT_INET_RPC
 	bool "Enable RPC support"
 	bool "Enable RPC support"
 	select BR2_TOOLCHAIN_HAS_NATIVE_RPC
 	select BR2_TOOLCHAIN_HAS_NATIVE_RPC

+ 1 - 0
package/uclibc/uclibc.mk

@@ -42,6 +42,7 @@ UCLIBC_CONFIG_FILE = $(call qstrip,$(BR2_UCLIBC_CONFIG))
 endif
 endif
 
 
 UCLIBC_KCONFIG_FILE = $(UCLIBC_CONFIG_FILE)
 UCLIBC_KCONFIG_FILE = $(UCLIBC_CONFIG_FILE)
+UCLIBC_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_UCLIBC_CONFIG_FRAGMENT_FILES))
 
 
 UCLIBC_KCONFIG_OPTS = \
 UCLIBC_KCONFIG_OPTS = \
 	$(UCLIBC_MAKE_FLAGS) \
 	$(UCLIBC_MAKE_FLAGS) \