Commit Graph

31682 Commits

Author SHA1 Message Date
Zakharov Vlad
999c7048c1 toolchain: Bump ARC tools to arc-2016.09-eng013
As described at:
4520524ba0
this commit continues a series of updates of ARC tools.
This time we're updating tools to arc-2016.09-eng013.

This engenering build contains some important GCC updatesthat fixes
some failures for ARC, such as:
http://autobuild.buildroot.net/results/f80/f80ad8a07d9d58b46592c2c99b227197b0f808d3//
http://autobuild.buildroot.net/results/e59/e59e6592fc697cceda359e421387dd905ff04701//
http://autobuild.buildroot.net/results/521/52157aa2b5d75b5338f3bde7ae5beb3d300283d3//

We still keep GDB as it is of arc-2016.03 release because there're some
issues we'd like to resolve before releasing it to wider audience.

So again note this is next engineering builds of arc-2016.09 series
and it might have all kinds of breakages, please don't use it for
production builds.

Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 19:36:27 +02:00
Petr Kulhavy
fad58cefa4 boot/uboot: allow to build multiple U-Boot images
Sometimes it is desired to build multiple U-boot images. E.g. one to
save into flash memory and one for serial load. So far this was not
possible.

This change allows to select any combination of the target formats. They
are all copied to the image folder.

Signed-off-by: Petr Kulhavy <brain@jikos.cz>
[Thomas:
 - Handle the BR2_TARGET_UBOOT_FORMAT_BIN, which wasn't handled, and
   therefore u-boot.bin was not copied when
   BR2_TARGET_UBOOT_FORMAT_BIN=y.
 - Rename UBOOT_BIN to UBOOT_BINS, since it can now contain multiple
   values.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 19:24:12 +02:00
Romain Naour
373c24cd1b package/efl: enable elput support
Signed-off-by: Romain Naour <romain.naour@gmail.com>
[Thomas:
 - add --disable-elput in the !BR2_PACKAGE_EFL_ELPUT case
 - add missing dependency on libxkbcomm]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 18:26:35 +02:00
Romain Naour
87b73f50a3 package/efl: add OpenGL/OpenGLES support
Allow to enable graphic acceleration using OpenGL or OpenGLES with efl
libraries.

The full OpenGL option depend on X11, because full OpenGL means GLX,
which means X11. Also select efl xlib support when full OpenGL is
selected.

Enable OpenGL ES when EGL API is enabled, otherwise the build fail with
this error:
configure: error: OpenGL ES requires EGL, please add --enable-egl to your configure options to switch to EGL + OpenGL ES.

With the upcomming Wayland support in EFL Buildroot packaging,
OpenGL ES support is recommended.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
[Thomas:
 - use a single ifeq/else ifeq/else ifeq/endif block
 - remove the "default" for the choice, move the "none" choice at the
   end, and simply rely on the first choice having its dependencies met
   being automatically enable by kconfig. So OpenGL first, then
   OpenGLES, and then none.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 16:57:54 +02:00
Yann E. MORIN
e76b4fd103 core: distclean is a noconfig target
When the .config contains invalid configuration *(e.g. two providers for
a same virtual package), it is not possible to run "make distclean"
because the .config file is sourced and packages interpreted in this
case.

Add distclean to the noconfig list, so that we can run it in all cases.

However, this meand that DL_DIR is no longer set, and thus the default
download location never removed. We fix that by always removing the
download location, so that if it is the one configured we still remove
it (no change) and if it is not the one configured, we remove an
non-existing location and leave the user's location intact (no change
either).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 16:21:00 +02:00
Luca Ceresoli
c2d80a8c5d core: don't build host-cmake if it is available on the build host
Currently all cmake packages depend on host-cmake. Unfortunately
host-cmake takes a long time to configure and build: almost 7 minutes
on a dual-core i5 with SSD. The time does not change even with ccache
enabled.

Indeed, building host-cmake is avoidable if it is already installed on
the build host: CMake is supposed to be quite portable, and the only
patch in Buildroot for the CMake package seems to only affect
target-cmake.

Thus we automatically skip building host-cmake and use the one on the
system if:
 - cmake is available on the system and
 - it is recent enough.

First, we leverage the existing infrastructure in
support/dependencies/dependencies.mk to find out whether there's a
suitable cmake executable on the system. Its path can be passed in the
BR2_CMAKE environment variable, otherwise it defaults to "cmake". If
it is enabled, found and suitable then we set BR2_CMAKE_HOST_DEPENDENCY
to empty; otherwise we set BR2_CMAKE_HOST_DEPENDENCY to 'host-cmake' and
override BR2_CMAKE with "$(HOST_DIR)/usr/bin/cmake" to revert to using
our own cmake (the old behaviour).

Then in pkg-cmake.mk we replace the hard-coded dependency on host-cmake
to using the BR2_CMAKE_HOST_DEPENDENCY variable, and we use $(BR2_CMAKE)
instead of $(HOST_DIR)/usr/bin/cmake.

Unlike what we do for host-tar and host-xzcat, for host-cmake we do
not add host-cmake to DEPENDENCIES_HOST_PREREQ. If we did, host-cmake
would be a dependency for _any_ package when it's not installed on the
host, even when no cmake package is selected.

Cmake versions older than 3.0 are affected by the bug described and
fixed in Buildroot in ef2c1970e4 ("cmake: add patch to fix Qt mkspecs
detection"). The bug was fixed in upstream CMake in version 3.0 [0].

Amongst all the cmake packages currently in Buildroot, the currently
highest version mentioned in cmake_minimum_required() is 3.1 (grantlee
and opencv3).

Thus we use 3.1 as the lowest required cmake for now, until a package is
bumped, or a new package added, with a higher required version.

[0] https://cmake.org/gitweb?p=cmake.git;h=e8b8b37ef6fef094940d3384df5a1d421b9fa568

Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Davide Viti <zinosat@tiscali.it>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Tested-by: Romain Naour <romain.naour@gmail.com>
[yann.morin.1998@free.fr:
  - simplify logic in check-host-cmake.mk;
  - set and use BR2_CMAKE_HOST_DEPENDENCY, drop USE_SYSTEM_CMAKE;
  - bump to cmake 3.1 for grantlee and opencv;
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 16:12:06 +02:00
Alistair Francis
ce29aaf030 xen: remove -Werror when building host tools
Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 15:55:13 +02:00
Eric Le Bihan
e23ddf0c13 xvisor: new package
This new package provides Xvisor, an open-source type-1 hypervisor,
which aims at providing a monolithic, light-weight, portable, and
flexible virtualization solution.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
[Thomas:
 - use MKIMAGE_ARCH instead of BR2_ARCH when calling mkimage
 - use $(MKIMAGE)
 - license is GPLv2+.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 15:34:05 +02:00
Thomas Petazzoni
4309092e34 docs/manual: update pkg-kconfig doc about <pkg>_KCONFIG_DOTCONFIG
Content provided by Yann E. Morin.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 14:46:04 +02:00
Eric Le Bihan
bbbc8b5de3 pkg-kconfig: support alternative .config location
Kconfig clones, such as openconf used by xvisor [1], do not look for
.config at the root of the build directory, but in a subdirectory (e.g.
build/openconf).

This patch introduces a new Makefile variable named
$(2)_KCONFIG_DOTCONFIG, which contains the path to .config relative to
the source directory of the package. It defaults to .config and can be
overridden in the package Makefile.

It also creates the full directory hierarchy where the .config file is
stored, in case it does not exist (e.g. in xvisor).

This allows the use of the kconfig-package infrastructure with packages
relying on such clones.

[1] https://github.com/xvisor/xvisor/tree/master/tools/openconf

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
[Thomas: use "install -D" instead of "mkdir + cp", as suggested by
Yann.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 14:44:10 +02:00
Yann E. MORIN
4b81badbcc infra/pkg-kconfig: Be sure to reconfigure the package on foo-reconfigure
Currently, calling foo-reconfigure for a kconfig-based package will not
re-trigger the configuration (kconfig-wise) step for the package.

This can be problematic when using an override-srcdir suring development
and the content of the veride-srcdir changes (e.g. on a rebase, a merge,
or during a bisect).

This is because the configuration (kconfig-wise) of the package is not
done in the _CONFIGURE_CMDS block, but as a separate action that is not
part of any step [0].

So, be sure to remove the stamp file .stamp_kconfig_fixup_done during
the foo-clean-for-reconfigure rule, so that the configuration is applied
again with the new source tree.

We use another rule, foo-clean-kconfig-for-reconfigure, because we do
not want to override the default foo-clean-for-reconfigure rule, and we
have no way to add conditional commands to it.

[0] The reasons it was not done are not entirely clear in my head, but
IIRC that was not working at the time we tried with Thomas DS.

Reported-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 14:38:41 +02:00
Thomas Claveirole
a7af6d621b package/autoconf-archive: bump to version 2016.03.20
Signed-off-by: Thomas Claveirole <thomas.claveirole@green-communications.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 14:28:34 +02:00
André Hentschel
16dbd226ce openal: Disable build also for examples and tests
Fixes:

  http://autobuild.buildroot.net/results/a11eab534b8642077705d891329c1fd40d394419

Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 14:27:38 +02:00
Bernd Kuhls
85a8766a7b package/{mesa3d, mesa3d-headers}: bump version to 12.0.3
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 14:20:44 +02:00
Tatsuyuki Ishi
82cc7ecf9f php: bump to 7.0.11
Signed-off-by: Tatsuyuki Ishi <ishitatsuyuki@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 14:05:41 +02:00
Jörg Krause
41778d75c7 package/upmpdcli: add patch to fix include path of log
The "log.{h,hxx}" header files are included from libupnpp.

As we are using the pkg-config file of libupnpp to get the header
include path, instead of the hardcoded `{prefix}/include/libupnpp`
these files are not found.

Upstream-status: https://github.com/medoc92/upmpdcli/issues/46

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 13:36:15 +02:00
Jörg Krause
56d878a927 package/upmpdcli: add patch to use pkg-config for libupnpp
Building upmpdcli aborts because of an unsafe header inclusion of
`/usr/include/libupnpp`. Using `{prefix}` to get the header path is
wrong for cross-compilation.

Instead of hard-coding the flags for libupnpp use pkg-config to get the
correct ones.

Note that this patch adds the host-pkgconfig dependency unconditionally and
removes the necessity to pass the libupnpp manually to LIBS for a static
build.

Upstream-status: https://github.com/medoc92/upmpdcli/pull/49

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 13:35:31 +02:00
Jörg Krause
af4d2b27d6 package/upmpdcli: add patch to fix jsoncpp detection
Although jsoncpp is present, the build system of upmpdcli does not detect it.

The default installation path for the header files of jsoncpp is
{prefix}/json, but some systems (Debian) prefers to install the headers
in {prefix}/jsoncpp/json.

The build system only checks for the header files in
{prefix}/jsoncpp/json, so jsoncpp is not found.

This patch from upstream handles both cases now when checking for the jsoncpp
library.

The patch is squashed of two commits from upstream:
1/ aba96db0cfe8a2e5c825f4448c0ad184e21b50e1
2/ ce144f19a8c2e8c1e0ec3fe53699e874e5eb43fe

Fixes:
http://autobuild.buildroot.net/results/5bc6c558fccea0e1e1936894ce372f2b7b8ecac2
http://autobuild.buildroot.net/results/9c2d3892f17c240c44f7255d821d66acbed361f0
http://autobuild.buildroot.net/results/4d22729535ca4e6acbb48a25145611bb49c10149
http://autobuild.buildroot.net/results/fda321774c3eb225f966dd9f83def5329b703a03
http://autobuild.buildroot.net/results/f5eb306b0032e830f7f72ce80e318aa11774a5d1

.. and many more!

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 13:35:09 +02:00
Jörg Krause
bf51bff138 package/upmpdcli: fix missing dependencies
Starting with version 1.2 upmpdcli depends on libmicrohttpd and jsoncpp.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 13:34:46 +02:00
Jörg Krause
abd4d29c8b package/upmpdcli: requires GCC 4.7
upmpdcli now uses C++11 features, meaning the minimum usable GCC version
is 4.7.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 13:33:39 +02:00
Jörg Krause
defd94927c package/libupnpp: add patch to get pkg-config file
Apply a patch from upstream to install a pkg-config file for libupnpp.

Fetch from:
9f03bb0e7b

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 13:33:30 +02:00
Gary Bisson
341bc36d22 configs: nitrogen*: enable VFP and NEON support
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 12:36:18 +02:00
Rahul Bedarkar
c1d86b826b blktrace: needs MMU support
iowatcher/main.c uses system() which uses fork().

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 12:35:17 +02:00
Rahul Bedarkar
08b9e24eaa blktrace: add dependency on NPTL
blkiomon.c assumes that clock_nanosleep() is always available. But it
is only available with NPTL. Since it unconditionally uses it, we add
dependency on NPTL.

Fixes:
  http://autobuild.buildroot.net/results/c87/c87cd4a7b0bed938506bcf7e88d4cda60e28e6e5/

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 12:35:17 +02:00
Peter Korsgaard
b715991c23 nginx-naxsi: clarify pcre dependency
It is not directly obvious why we select pcre but not add it to the .mk
file, so add a comment to clarify.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-17 12:09:31 +02:00
Gustavo Zacarias
e9ffb3b8f7 breakpad: enable for uClibc
There's nothing holding it off for uClibc-based toolchains so enable it.

Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 19:01:39 +02:00
Samuel Martin
c8301c4fe3 package/urg: fix build caused by missing header inclusion
Update select-h patch to also fix the C++ serial driver.

Fixes:
  http://autobuild.buildroot.net/results/cd7/cd76699188d2ee99b5f2d32b6a797de0d832a192/

Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 19:00:18 +02:00
Rahul Bedarkar
9b0dc3515a libcap-ng: annotate licenses with components
libcap-ng.so library is released under LGPLv2.1+ and programs testcap,
filecap, netcap and pscap are released under GPLv2+.

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 18:46:08 +02:00
Rahul Bedarkar
e0b38197e0 libcap-ng: bump version to 0.7.8
Drop upstream patch

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 18:45:34 +02:00
Rahul Bedarkar
d1011f89a1 audit: update legal info
Programs are released under GPLv2+. README file says libraries
libaudit.* and libauparse.* are released under LGPL but there are two
files auparse/strsplit.c and lib/strsplit.c which are released under
GPLv2+ which makes both libraries GPL. Until we review situation with
upstream, we simply mention "unclear (libraries)".

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
[Thomas: add "unclear (libraries)" as suggested by Arnout.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 18:44:54 +02:00
Rahul Bedarkar
6126e5c0d6 audit: bump version to 2.6.7
Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 18:44:20 +02:00
Rahul Bedarkar
2deb74c17e audit: remove autoreconf
Commit upstream 51925b7dd6d0("package/audit: Bump to version 2.6.5")
removed patch 0002 as part of version bump. But forgot to disable
autoreconf.

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 18:43:47 +02:00
Rahul Bedarkar
8d9cad0d05 util-linux: add optional dependency on audit
login and hwclock can be built with audit support. This patch adds
optional dependency on audit package if it is already selected.

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 18:43:09 +02:00
Rahul Bedarkar
c8252fdebb util-linux: add optional dependency on readline
fdisk and sfdisk tools can be built with readline support. This patch
adds optional dependency on readline if it is already selected.

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 18:42:33 +02:00
Rahul Jain
4f1a599240 libubox: update legal info
Reviewed-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Reviewed-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
Signed-off-by: Rahul Jain <rahul.jain@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 18:38:34 +02:00
Rahul Jain
a64621fb51 libubox: bump version
Reviewed-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Reviewed-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
Signed-off-by: Rahul Jain <Rahul.Jain@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-16 18:34:35 +02:00
Gustavo Zacarias
ad01626233 linux-firmware: bump version
And copy firmware for BCM43430 and BCM43438, hence rpi3 wifi support at
last.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-15 22:13:48 +02:00
Gustavo Zacarias
783c215c82 linux-headers: bump 3.{2, 14}.x and 4.4.x series
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-15 17:48:18 +02:00
Vicente Olivert Riera
114cec2bba linux-headers: bump 4.7.x series to 4.7.4
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-15 12:50:38 +02:00
Thomas Petazzoni
b171466c44 toolchain-external: fix potential entire root filesystem removal
This reverts commit a0aa7e0e17 and reworks
the code to fix a major and potentially catastrophic bug when the
following conditions are met:

 - The user has selected a "known toolchain profile", such as a Linaro
   toolchain, a Sourcery CodeBench toolchain etc. People using "custom
   toolchain profile" are not affected.

 - The user has enabled BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED=y to
   indicate that the toolchain is already locally available (as
   opposed to having Buildroot download and extract the toolchain)

 - The user has left BR2_TOOLCHAIN_EXTERNAL_PATH empty, because his
   toolchain is directly available through the PATH environment
   variable. When BR2_TOOLCHAIN_EXTERNAL_PATH is non-empty, Buildroot
   will do something silly (remove the toolchain contents), but that
   are limited to the toolchain itself.

When such conditions are met, Buildroot will run "rm -rf /*" due to
TOOLCHAIN_EXTERNAL_INSTALL_DIR being empty.

This bug does not exist in 2016.05, and appeared in 2016.08 due to
commit a0aa7e0e17.

Commit a0aa7e0e17 removed the assignment
of TOOLCHAIN_EXTERNAL_SOURCE and TOOLCHAIN_EXTERNAL_SITE to empty, as
part of a global cleanup to remove such assignments that supposedly
had become unneeded following a fix of the package infrastructure
(75630eba22: core: do not attempt
downloads with no _VERSION set).

However, this causes TOOLCHAIN_EXTERNAL_SOURCE to be non-empty even
for BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED=y configuration, with the
following consequences:

 - Buildroot downloads the toolchain tarball (while we're saying the
   toolchain is already available). Not dramatic, but clearly buggy.

 - Buildroot registers a post-extract hook that moves the toolchain
   from its extract directory (output/build/toolchain-external-.../ to
   its final location in host/opt/ext-toolchain/). Before doing this,
   it removes everything in TOOLCHAIN_EXTERNAL_INSTALL_DIR (which
   should normally be host/opt/ext-toolchain/).

Another mistake that caused the bug is commit
b731dc7bfb ("toolchain-external: make
extraction idempotent"), which introduce the dangerous call "rm -rf
$(var)/*", which can be catastrophic if by mistake $(var) is
empty. Instead, this commit should have just used rm -rf $(var) to
remove the directory instead: it would have failed without consequences
if $(var) is empty, and the directory was anyway already re-created
right after with a mkdir.

To address this problem, we:

 - Revert commit a0aa7e0e17, so that
   _SOURCE and _SITE are empty in the pre-installed toolchain case.

 - Rework the code to ensure that similar problems will no happen in the
   future, by:

   - Registering the TOOLCHAIN_EXTERNAL_MOVE hook only when
     BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y, since moving the toolchain is
     only needed when Buildroot downloaded the toolchain.

   - Introduce a variable TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR which
     is the path in which Buildroot installs external toolchains when it
     is in charge of downloading/extracting them. Then, the
     TOOLCHAIN_EXTERNAL_MOVE hook is changed to use this variable, which
     is guaranteed to be non-empty.

   - Replace the removal of the directory contents $(var)/* by removing
     the directory itself $(var). The directory was anyway already
     re-created if needed afterwards. Thanks to doing this, if $(var)
     ever becomes empty, we will do "rm -rf" which will fail and abort
     the build, and not the catastrophic "rm -rf /*".

Reported-by: Mason <slash.tmp@free.fr>
Cc: Mason <slash.tmp@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-15 11:59:07 +02:00
Vicente Olivert Riera
9294348f4d linux: bump default to version 4.7.4
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-15 11:56:45 +02:00
Gustavo Zacarias
9714c6d2ef libinput: bump to version 1.5.0
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-15 11:56:02 +02:00
Gustavo Zacarias
b644b9c35b ccache: bump to version 3.3.1
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-15 11:55:54 +02:00
Fabio Estevam
f2d98f3744 configs: Add support for Solidrun's MX6 Cubox/Hummingboard
Add support for Solidrun's MX6 Cubox/Hummingboard.

For more information about these boards, please check:

https://www.solid-run.com/freescale-imx6-family/hummingboard/
https://www.solid-run.com/freescale-imx6-family/cubox-i/

U-Boot is capable of detecting the version of the board in run-time
and loads the correct dtb.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-14 22:58:31 +02:00
Yegor Yefremov
96165841a7 python-pyusb: bump to version 1.0.0
Remove dependency on Python 2 only.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-14 21:49:51 +02:00
Yegor Yefremov
5757aaf36d python-tornado: bump to version 4.4.1
Remove upstream patch.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-14 21:46:08 +02:00
Gustavo Zacarias
e8e8c0b0c3 pango: bump to version 1.40.3
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-14 21:46:04 +02:00
Vicente Olivert Riera
28dc7f4adc libcurl: bump version to 7.50.3
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-14 21:45:58 +02:00
Gustavo Zacarias
ed5604ed9e httping: bump to version 2.5
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-14 16:46:26 +02:00
Fabio Estevam
9d26ac1e76 wandboard: Remove unneeded return code
There is no need to handle this return code, so just remove it.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-09-14 16:46:06 +02:00