From 9223c210d4fdddf474135e25c86bbf8eacba3bc0 Mon Sep 17 00:00:00 2001 From: jbnadal Date: Thu, 4 Jan 2018 18:52:18 +0100 Subject: [PATCH] Update Buildroot From 17.02.8 -> 17.02.9 --- bsp/buildroot/CHANGES | 15 +++++ bsp/buildroot/Makefile | 10 ++-- bsp/buildroot/VERSION | 2 +- bsp/buildroot/docs/manual/manual.html | 18 +++--- bsp/buildroot/docs/manual/manual.pdf | Bin 499436 -> 499448 bytes bsp/buildroot/docs/manual/manual.text | 4 +- ...le.patch => 0001-bind-cross-compile.patch} | 0 ...gs-a-socket-descriptor-leak-in-OMAPI.patch | 51 +++++++++++++++++ bsp/buildroot/package/dhcp/dhcp.hash | 6 +- bsp/buildroot/package/dhcp/dhcp.mk | 2 +- ...rsion-check-and-symlink-installation.patch | 11 ++-- bsp/buildroot/package/exim/0004-glibc.patch | 27 +++++++++ bsp/buildroot/package/exim/exim.hash | 4 +- bsp/buildroot/package/exim/exim.mk | 6 +- bsp/buildroot/package/flann/flann.mk | 3 +- bsp/buildroot/package/gdb/gdb.mk | 4 +- bsp/buildroot/package/gstreamer/gstreamer.mk | 2 +- .../package/gstreamer1/gstreamer1.mk | 2 +- bsp/buildroot/package/heimdal/heimdal.hash | 2 +- bsp/buildroot/package/heimdal/heimdal.mk | 2 +- bsp/buildroot/package/libcue/libcue.mk | 2 + bsp/buildroot/package/libcurl/libcurl.hash | 4 +- bsp/buildroot/package/libcurl/libcurl.mk | 2 +- bsp/buildroot/package/libevent/libevent.mk | 1 + ...x-broken-sed-call-in-configure.ac.in.patch | 31 +++++++++++ bsp/buildroot/package/libpqxx/libpqxx.mk | 3 + bsp/buildroot/package/libsoxr/Config.in | 2 +- bsp/buildroot/package/linphone/linphone.mk | 7 +++ .../package/linux-headers/Config.in.host | 6 +- ...nfigure-remove-check-on-CXX-compiler.patch | 35 ++++++++++++ bsp/buildroot/package/lldpd/lldpd.mk | 2 +- bsp/buildroot/package/mariadb/mariadb.hash | 4 +- bsp/buildroot/package/mariadb/mariadb.mk | 2 +- bsp/buildroot/package/mfgtools/Config.in.host | 2 +- bsp/buildroot/package/mfgtools/mfgtools.hash | 4 +- bsp/buildroot/package/mfgtools/mfgtools.mk | 6 +- bsp/buildroot/package/mtools/mtools.mk | 4 ++ ...01-gyp-force-link-command-to-use-CXX.patch | 0 ..._OPENSSL-directive-to-openssl_config.patch | 0 bsp/buildroot/package/nodejs/Config.in | 2 +- bsp/buildroot/package/nodejs/nodejs.hash | 4 +- bsp/buildroot/package/nut/nut.mk | 3 + bsp/buildroot/package/openssl/openssl.hash | 5 +- bsp/buildroot/package/openssl/openssl.mk | 2 +- ...001-Check-fname-in-recv_files-sooner.patch | 45 +++++++++++++++ ...Sanitize-xname-in-read_ndx_and_attrs.patch | 39 +++++++++++++ ...ilter-against-fnamecmp-in-recv_files.patch | 28 ++++++++++ ...g-0-when-receiving-xattr-name-values.patch | 33 +++++++++++ bsp/buildroot/package/samba4/samba4.mk | 2 +- bsp/buildroot/package/tor/tor.hash | 2 +- bsp/buildroot/package/tor/tor.mk | 2 +- ...-avcodec-check-avcodec-visible-sizes.patch | 33 ----------- ...ck-visible-size-when-creating-buffer.patch | 33 ----------- bsp/buildroot/package/vlc/vlc.hash | 10 +++- bsp/buildroot/package/vlc/vlc.mk | 4 +- .../package/webkitgtk/webkitgtk.hash | 12 ++-- bsp/buildroot/package/webkitgtk/webkitgtk.mk | 2 +- .../package/wireshark/wireshark.hash | 4 +- bsp/buildroot/package/wireshark/wireshark.mk | 2 +- .../xlib_libXcursor/xlib_libXcursor.hash | 7 ++- .../x11r7/xlib_libXcursor/xlib_libXcursor.mk | 2 +- ...-string-in-PatternMatch-CVE-2017-137.patch | 34 ------------ ...-Check-string-boundaries-CVE-2017-13.patch | 52 ------------------ .../x11r7/xlib_libXfont/xlib_libXfont.hash | 7 ++- .../x11r7/xlib_libXfont/xlib_libXfont.mk | 2 +- ...-string-in-PatternMatch-CVE-2017-137.patch | 34 ------------ ...-Check-string-boundaries-CVE-2017-13.patch | 52 ------------------ .../x11r7/xlib_libXfont2/xlib_libXfont2.hash | 7 ++- .../x11r7/xlib_libXfont2/xlib_libXfont2.mk | 2 +- bsp/buildroot/package/xfsprogs/Config.in | 2 +- bsp/buildroot/support/scripts/size-stats | 12 +++- .../toolchain-external/toolchain-external.mk | 2 +- 72 files changed, 446 insertions(+), 324 deletions(-) rename bsp/buildroot/package/dhcp/{0002-bind-cross-compile.patch => 0001-bind-cross-compile.patch} (100%) create mode 100644 bsp/buildroot/package/dhcp/0002-v4_3-Plugs-a-socket-descriptor-leak-in-OMAPI.patch create mode 100644 bsp/buildroot/package/exim/0004-glibc.patch create mode 100644 bsp/buildroot/package/libpqxx/0001-Fix-broken-sed-call-in-configure.ac.in.patch create mode 100644 bsp/buildroot/package/lldpd/0003-configure-remove-check-on-CXX-compiler.patch rename bsp/buildroot/package/nodejs/{6.11.5 => 6.12.2}/0001-gyp-force-link-command-to-use-CXX.patch (100%) rename bsp/buildroot/package/nodejs/{6.11.5 => 6.12.2}/0002-src-add-HAVE_OPENSSL-directive-to-openssl_config.patch (100%) create mode 100644 bsp/buildroot/package/rsync/0001-Check-fname-in-recv_files-sooner.patch create mode 100644 bsp/buildroot/package/rsync/0002-Sanitize-xname-in-read_ndx_and_attrs.patch create mode 100644 bsp/buildroot/package/rsync/0003-Check-daemon-filter-against-fnamecmp-in-recv_files.patch create mode 100644 bsp/buildroot/package/rsync/0004-Enforce-trailing-0-when-receiving-xattr-name-values.patch delete mode 100644 bsp/buildroot/package/vlc/0013-codec-avcodec-check-avcodec-visible-sizes.patch delete mode 100644 bsp/buildroot/package/vlc/0014-decoder-check-visible-size-when-creating-buffer.patch delete mode 100644 bsp/buildroot/package/x11r7/xlib_libXfont/0001-Check-for-end-of-string-in-PatternMatch-CVE-2017-137.patch delete mode 100644 bsp/buildroot/package/x11r7/xlib_libXfont/0002-pcfGetProperties-Check-string-boundaries-CVE-2017-13.patch delete mode 100644 bsp/buildroot/package/x11r7/xlib_libXfont2/0001-Check-for-end-of-string-in-PatternMatch-CVE-2017-137.patch delete mode 100644 bsp/buildroot/package/x11r7/xlib_libXfont2/0002-pcfGetProperties-Check-string-boundaries-CVE-2017-13.patch diff --git a/bsp/buildroot/CHANGES b/bsp/buildroot/CHANGES index 63874350..a632a936 100644 --- a/bsp/buildroot/CHANGES +++ b/bsp/buildroot/CHANGES @@ -1,3 +1,18 @@ +2017.02.9, Released January 1st, 2018 + + Important / security related fixes. + + Fix divide by zero issue in size-stats script. + + Fix makefile include ordering issue with certain make versions + in the external toolchain handling. + + Updated/fixed packages: dhcp, exim, flann, gdb, heimdal, + libcue, libcurl, libevent, libpqxx, libsoxr, linphone, lldpd, + mariadb, mfgtools, mtools, nodejs, nut, openssl, rsync, + samba4, tor, vlc, webkitgtk, wireshark, xfsprogs, + xlib_libXcursor, xlib_libXfont, xlib_libXfont2 + 2017.02.8, Released November 27th, 2017 Important / security related fixes. diff --git a/bsp/buildroot/Makefile b/bsp/buildroot/Makefile index 4dac404a..067453eb 100644 --- a/bsp/buildroot/Makefile +++ b/bsp/buildroot/Makefile @@ -86,9 +86,9 @@ else # umask / $(CURDIR) / $(O) all: # Set and export the version string -export BR2_VERSION := 2017.02.8 +export BR2_VERSION := 2017.02.9 # Actual time the release is cut (for reproducible builds) -BR2_VERSION_EPOCH = 1511823000 +BR2_VERSION_EPOCH = 1514805000 # Save running make version since it's clobbered by the make package RUNNING_MAKE_VERSION := $(MAKE_VERSION) @@ -483,8 +483,8 @@ include support/dependencies/dependencies.mk PACKAGES += $(DEPENDENCIES_HOST_PREREQ) -include toolchain/*.mk -include toolchain/*/*.mk +include $(sort $(wildcard toolchain/*.mk)) +include $(sort $(wildcard toolchain/*/*.mk)) # Include the package override file if one has been provided in the # configuration. @@ -1074,7 +1074,7 @@ print-version: @echo $(BR2_VERSION_FULL) include docs/manual/manual.mk --include $(foreach dir,$(BR2_EXTERNAL_DIRS),$(dir)/docs/*/*.mk) +-include $(foreach dir,$(BR2_EXTERNAL_DIRS),$(sort $(wildcard $(dir)/docs/*/*.mk))) .PHONY: $(noconfig_targets) diff --git a/bsp/buildroot/VERSION b/bsp/buildroot/VERSION index dc0f3dab..97d6333b 100644 --- a/bsp/buildroot/VERSION +++ b/bsp/buildroot/VERSION @@ -1 +1 @@ -buildroot 2017_02_8 +buildroot 2017_02_9 diff --git a/bsp/buildroot/docs/manual/manual.html b/bsp/buildroot/docs/manual/manual.html index 60329114..8d1aca0b 100644 --- a/bsp/buildroot/docs/manual/manual.html +++ b/bsp/buildroot/docs/manual/manual.html @@ -1,6 +1,6 @@ -The Buildroot user manual

The Buildroot user manual


Table of Contents

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

Buildroot 2017.02.8 manual generated on 2017-11-27 -23:07:46 UTC from git revision d745e94683

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

The Buildroot user manual


Table of Contents

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

Buildroot 2017.02.9 manual generated on 2018-01-01 +11:25:52 UTC from git revision 8f03647169

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

Copyright © 2004-2017 The Buildroot developers

logo.png

Part I. Getting started

Chapter 1. About Buildroot

Buildroot is a tool that simplifies and automates the process of @@ -16,8 +16,8 @@ processors everyone is used to having in his PC. They can be PowerPC processors, MIPS processors, ARM processors, etc.

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



[1] BSP: Board Support Package

[2] SDK: Software Development Kit

Chapter 2. System requirements

Buildroot is designed to run on Linux systems.

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



[1] BSP: Board Support Package

[2] SDK: Software Development Kit

Chapter 2. System requirements

Buildroot is designed to run on Linux systems.

While Buildroot itself will build most host packages it needs for the compilation, certain standard Linux utilities are expected to be already installed on the host system. Below you will find an overview of the mandatory and optional packages (note that package names may vary @@ -272,7 +272,7 @@ processor. Under most Linux systems, the compilation toolchain uses the GNU libc (glibc) as the C standard library. This compilation toolchain is called the "host compilation toolchain". The machine on which it is running, and on which you’re working, is called the "host -system" [3].

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

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

As said above, the compilation toolchain that comes with your system @@ -551,7 +551,7 @@ The third solution is systemd. http://www.freedesktop.org/wiki/Software/systemd.

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



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



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

Chapter 7. Configuration of other components

Before attempting to modify any of the components below, make sure you have already configured Buildroot itself, and have enabled the @@ -2673,7 +2673,7 @@ flags. The argument to be given to LIBFOO_CONFIG_SCRIPTS is the file name(s) of the shell script(s) needing fixing. All these names are relative to $(STAGING_DIR)/usr/bin and if needed multiple names can be given.

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

Example 17.1. Config script: divine package

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

So its fixup would be:

DIVINE_CONFIG_SCRIPTS = divine-config

Example 17.2. Config script: imagemagick package:

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

Example 17.1. Config script: divine package

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

So its fixup would be:

DIVINE_CONFIG_SCRIPTS = divine-config

Example 17.2. Config script: imagemagick package:

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

So it’s fixup would be:

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

On line 14, we specify the list of dependencies this package relies @@ -4601,7 +4601,7 @@ large number of commits in the series;

  • deep impact of the changes in the rest of the project;
  • -RFC [4]; +RFC [4];
  • whenever you feel it will help presenting your work, your choices, the review process, etc. @@ -4683,7 +4683,7 @@ pastebin service. Note that not all available pastebin services will preserve Unix-style line terminators when downloading raw pastes. Following pastebin services are known to work correctly: - https://gist.github.com/ -- http://code.bulix.org/



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

    Chapter 22. DEVELOPERS file and get-developers

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



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

    Chapter 22. DEVELOPERS file and get-developers

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