Commit Graph

31622 Commits

Author SHA1 Message Date
Thomas Petazzoni
1bd02bc230 gcc: remove BR2_GCC_ENABLE_TLS option
The current BR2_GCC_ENABLE_TLS can cause users to make incorrect
choices, and is not very useful. This options allows to decide whether
we pass --enable-tls or --disable-tls to gcc, to enable or disable
support for Thread Local Storage.

Its behavior is:

 - The option is default to "y" but only exists if we're using
   uClibc/NPTL or glibc.

 - When we're using uClibc, the option can be disabled.

So, in practice, this means that currently:

 - TLS support is always on for glibc

 - TLS support is on by default for uClibc/NPTL, but can be disabled in
   the configuration. This is in fact bad and causes the build failure
   reported in bug #7424 (this bug is still reproducible on master)

 - TLS support is always disabled for uClibc/no-thread and
   uClibc/linuxthreads.

 - TLS support is always disabled for musl. This does not cause any
   build failure, but musl can use TLS support, and therefore be more
   efficient. According to
   http://www.openwall.com/lists/musl/2012/10/04/1, "Note that if you've
   been building gcc with --disable-tls, __thread was already working
   but gets emulated (very poorly; it's slow and will abort() if it runs
   out of memory) through libgcc.".

So, this commit completely removes the BR2_GCC_ENABLE_TLS and instead
makes the right choice inside gcc.mk directly:

 - TLS support enabled for glibc, musl and uClibc/NPTL

 - TLS support in other cases, i.e uClibc/no-thread and
   uClibc/linuxthreads.

We have intentionally *not* added the option to
Config.in.legacy. Indeed, the new behavior is *exactly* the same as the
older behavior, with the exception of:

 - People can no longer disable TLS support in uClibc/NPTL, which was
   anyway causing a build failure and therefore was not used.

 - TLS support is now enabled on musl, but people using musl already had
   BR2_GCC_ENABLE_TLS not set, so they wouldn't get the legacy warning.

Fixes bug #7424.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2016-08-31 21:45:36 +02:00
Thomas Petazzoni
511a161b87 valgrind: let the valgrind configure script detect TLS availability
Back in 2005, in commit
a2c326396a ("update valgrind to the latest
and greatest"), an explicit --disable-tls option was added. More
recently, in commit 31a3f4bd54 ("valgrind:
enable tls support") changed this to be conditional on
BR2_GCC_ENABLE_TLS.

However, the configure script of valgrind is perfectly capable of
detecting TLS support, even in a cross-compilation case: it tries to
compile a program that uses __thread and sees if it works.

Since we're about to modify how BR2_GCC_ENABLE_TLS is handled, we'd
better remove its usage from packages, and valgrind is the only package
using this config option.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2016-08-31 21:45:33 +02:00
Fabrice Fontaine
df3df495c4 gupnp: bump to version 0.99.0
Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-31 16:30:16 +02:00
Fabrice Fontaine
b82b8b23b2 gssdp: bump to version 0.99.0
Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-31 16:29:58 +02:00
Jeroen Roovers
da3bb9167c package/procps-ng: Bump to version 3.3.12
Signed-off-by: Jeroen Roovers <jer@airfi.aero>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-31 16:29:48 +02:00
Zakharov Vlad
e227e6bf50 toolchain: Bump ARC tools to arc-2016.09-eng010
As described at:
4520524ba0
this commit continues a series of updates of ARC tools.
This time we're updating tools to arc-2016.09-eng010.

This engenering build contains different fixes done to TLS and
PIE features. Appropriate custom patches are removed as they have
been added to eng010.

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: Peter Korsgaard <peter@korsgaard.com>
2016-08-31 09:32:29 +02:00
Fabrice Fontaine
af6865a4fa alljoyn-tcl: bump to version 16.04a
Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-30 22:49:29 +02:00
Fabrice Fontaine
d340eb3995 alljoyn: bump to version 16.04a
Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-30 22:49:13 +02:00
Peter Korsgaard
3c4aa539f5 mosquitto: bump to version 1.4.10
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-30 22:49:00 +02:00
Gustavo Zacarias
27de4c1d36 libinput: bump to version 1.4.2
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-30 22:48:50 +02:00
Gustavo Zacarias
3e1a107463 gvfs: bump to version 1.28.3
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-30 08:37:11 +02:00
Peter Korsgaard
7e981ed085 Update for 2016.08-rc3
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-30 08:18:50 +02:00
Masahiro Yamada
df5793e309 zynq: enable BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
The recent U-Boot adopts Kconfig for its configuration system.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 23:29:37 +02:00
Thomas Petazzoni
6304578d4e libaio: allow building on static-only configurations
This commit adds a simple patch to the libaio build system that allows
it to be used on static-only configurations. It is probably easier to
fix this than to propagate the !BR2_STATIC_LIBS dependency.

Fixes:

  http://autobuild.buildroot.net/results/8c86402bd14a0af1b82e6e07c06531a856dd37c6/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Tested-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 23:24:50 +02:00
Gustavo Zacarias
ca6811fe84 ccache: bump to version 3.3
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 23:21:22 +02:00
Thomas Petazzoni
9d1cce411b docs/website: remove reference to GMane
GMane is dead (at least its web interface), so it's no longer really
useful to reference it.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 23:19:15 +02:00
Gustavo Zacarias
144498c826 pango: bump to version 1.40.2
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 18:06:14 +02:00
Peter Korsgaard
877928afb6 tftpd: disallow on nios with pre-6.x toolchains
Fixes:
http://autobuild.buildroot.org/results/349/349bc8668614b0f2c970ff33f25216e708ecdb46/
http://autobuild.buildroot.org/results/264/26486e88211d01ee49ad786e9a27a67b849ad1ab/

Older toolchains contain an issue with the linker script causing failures when linking tftpd:

tftpd.c:(.text.startup+0x5c): warning: Unable to reach (null) (at 0x00000000)
from the global pointer (at 0x00011a80) because the offset (-72320) is out of
the allowed range, -32678 to 32767.

This is a known issue which has been fixed from 6.x, so disallow on older
toolchains:

https://www.altera.com/support/support-resources/knowledge-base/solutions/rd02132012_291.html

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 17:58:32 +02:00
Bernd Kuhls
b63c8d36f4 package/openswan: not available on musl
After fixing the usual sys/cdefs.h and _P stuff the build still fails
because Openswan makes use of GLOB_ functions

/home/bernd/buildroot/br4/output/build/openswan-2.6.48/lib/libipsecconf/parser.l:200:29: error: ‘GLOB_BRACE’ undeclared (first use in this function)
      globresult = glob(try, GLOB_BRACE, NULL, &globbuf);
                             ^
/home/bernd/buildroot/br4/output/build/openswan-2.6.48/lib/libipsecconf/parser.l:200:29: note: each undeclared identifier is reported only once for each function it appears in
/home/bernd/buildroot/br4/output/build/openswan-2.6.48/lib/libipsecconf/parser.l:207:41: error: ‘GLOB_NOMAGIC’ undeclared (first use in this function)
       globresult = glob(try, GLOB_BRACE|GLOB_NOMAGIC, NULL, &globbuf);

https://github.com/xelerance/Openswan/blob/master/lib/libipsecconf/parser.l#L200
https://github.com/xelerance/Openswan/blob/master/lib/libipsecconf/parser.l#L207
[...]
                                         ^
which musl does not support:
http://www.openwall.com/lists/musl/2013/09/16/1

Fixes
http://autobuild.buildroot.net/results/70d/70da34c1528b51e92e9e60788f83733d70b33353/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 17:55:00 +02:00
Paul Cercueil
53996bee43 libiio: Disable IIOD on Blackfin
IIOD uses accept4, which is not yet available on Blackfin.

Fixes:
 http://autobuild.buildroot.net/results/b75/b7552c9325ffcc7f1cb6e114b82648f3280fded6/

[Peter: hide other toolchain comment on bfin]
Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 17:54:07 +02:00
Fabrice Fontaine
07552de23b tinydtls: fix issue on u_intXX_t being undefined when building with musl
Fixes:
  http://autobuild.buildroot.net/results/928be69f90476e6b04be3a1afd3b74112bcac0a0

As mentioned in sha2/README, by default, tinydtls uses u_intXX_t data types
for 8 bit, 32 bit, and 64 bit unsigned integer type definitions.  To use
uintXX_t data types as defined by recent ANSI C standards and as included in
the inttypes.h header file, SHA2_USE_INTTYPES_H has to be define at compile
time.

[Peter: reword/simplify]
Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 17:23:41 +02:00
Gustavo Zacarias
f7d7db2469 linux-headers: bump 3.10.x series
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 17:09:35 +02:00
Paul Cercueil
53dd41dded libserialport: Fix detection of OS when compiling for ucLinux
When compiling with a toolchain targetted at ucLinux, libserialport's
configure.ac would fail at detecting the target operating system.
As a result, the Linux-specific files were not compiled in that
particular case.

While this commit does not fix any autobuider failure for this package,
it fixes autobuilder failures for other packages, for instance:

http://autobuild.buildroot.net/results/69e/69e43bc171e554cf10f2ad526cebf5e0e524538a/

Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 13:30:26 +02:00
Yann E. MORIN
9962fea889 package/neon: properly enable expat
Currently, we forcibly tell neon's configure where to look for libexpat.
This means that neon does not search for it, and consequently forgets to
add -lexpat as its Libs.Private in its .pc file. As thus, a static link
against neon forgets to pull in -lexpat (it works for a dynamic link
because libneon has a NEEDED on libexpat).

The reason for specifying the explicit path in this case is lost to
history; neon's configure can correctly find libexpat nowadays.

Fixes:
    http://autobuild.buildroot.org/results/884/884746351fc47f4ad19fb3fda7c5e0ee85fcff15/
    http://autobuild.buildroot.org/results/0c5/0c584522c26640e29980150a87a5b5d8c02e5f8b/

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 13:21:12 +02:00
Yann E. MORIN
70dbe298f4 package/libfreeimage: fix C++11 compliance with gcc-6
Like in cbe01f6, 38249d5, 97fe953, fix C++11 compliance regarding
narrowing types.

Fixes:
    http://autobuild.buildroot.org/results/081/0811531872f69f9febbdc482dfbdd7fb5c35d1c8/
    http://autobuild.buildroot.org/results/90c/90c9cb4ffe705b8c91f4fb602e33e2ba9bcdee77/
    and a few others...

[Peter: use signed char for src[], fix dos/unix new lines]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 12:25:35 +02:00
Yann E. MORIN
a845798aa8 package/sconeserver: needs shared libs
sconeserver wants to use dlopen(), unconditionally: it does not try to
detect it, and it can't work without it (the code is not conditional).

Fixes:
    http://autobuild.buildroot.org/results/e92/e929799366e6f574c7b08d8635b18623afd3e3e1/

[Peter: drop uClibc dependency, adjust commit message]
Reported-by: Matthew Weber <matt@thewebers.ws>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 09:43:36 +02:00
Yann E. MORIN
822247827c package/sconeserver: unconditionally needs host-pkgconf
sconeserver uses pkg-config macros and uses autoreconf, so it
unconditionally needs host-pkgconf.

[Peter: drop host-pkgconf from sub options, update description]
Reported-by: Matthew Weber <matt@thewebers.ws>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-29 00:04:03 +02:00
Yann E. MORIN
e782cd5b1b Revert "Added local directory as source of kernel code"
This reverts commit 73da2ff6f7.

The reason for adding support for a local location was to be able to do
development on the Linux kernel source tree on a local directory rather
than have to clone it for every build.

We already have a mechanism for that, it's called override-srcdir. It's
been available since September 2011, more than a year before this patch
was committed.

Otherwise, we're going to be adding support for local sources in other
packages. First was U-Boot as submitted by Adam. But what next? We can't
have such support for all packages, especially since override-srcdir
does the job.

Besides, using a local source tree makes the build non-reproducible, so
we don't really want to have this in a .config (or defconfig).

We only handle the boolean option in legacy, as there is nothing we can
do with the directory path.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Rafal Fabich <rafal.fabich@gmail.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Adam Duskett <aduskett@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-28 23:55:30 +02:00
Thomas Petazzoni
a2e178d6b4 android-tools: disable on some architecture with old kernel headers
The android-tools code is somewhat ugly, and defines its own u64 typedef
becore including kernel headers. Unfortunately, there are specific cases
where that doesn't work properly.

The android-tools code defines u64 as "unsigned long long", which is now
correct in the kernel. However, it used to be a time where u64 was
defined as "unsigned long" on a few 64 bits architecture (at least
PowerPC64 and MIPS64). The kernel headers have introduced a
__SANE_USERSPACE_TYPES__ macro that userspace can define in order to get
the "sane" definition, i.e "unsigned long long" for u64.

Unfortunately, this __SANE_USERSPACE_TYPES__ mechanism only appeared in
3.10 on PowerPC64, and in 3.16 on MIPS64.

Since android-tools is not using the autotools, and there's no easy way
to test types with the C pre-processor, we simply add some more
Config.in dependencies. They are a bit convoluted, but that's what the
dependency really is.

In our autobuilders, this issue was only showing up with an old MIPS64
toolchain that uses 3.9 kernel headers.

Also, since the problem is limited to the "fastboot" tool, the
dependency is only added for fastboot. Both adb and adbd build fine with
this toolchain.

Fixes:

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

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-08-28 23:38:35 +02:00
Thomas Petazzoni
471b1b0ef6 libamcodec: fix build with musl
This commit adds a patch to the libamcodec in order to fix the build
with musl, which was failing due to missing <stdint.h> includes.

Fixes:

  http://autobuild.buildroot.net/results/1f3b0d483603fb69765c15c7189ff975b72d09c3/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-28 15:52:14 +02:00
Thomas Petazzoni
83ca53ba30 libiio: do not install systemd service file, no longer available
Since the bump to libiio 0.7, the systemd service file that used to be
in debian/iiod.service no longer exists. The entire debian/ directory
has been removed from the upstream project:

  5d49f58982

Due to this, the installation of this service file fails, and causes
build failures. To address this, we simply remove the installation of
the systemd service file.

Fixes:

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

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-28 15:52:13 +02:00
André Hentschel
6fc7a76148 wine: Bump to version 1.8.4
Bumping to stable version 1.8.4

Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-28 15:50:57 +02:00
Gustavo Zacarias
d50477b52b webkitgtk: security bump to version 2.12.4
Fixes:
CVE-2016-4590 - mishandles about: URLs, which allows remote attackers to
bypass the Same Origin Policy via a crafted web site.

CVE-2016-4591 - mishandles the location variable, which allows remote
attackers to access the local filesystem via unspecified vectors.

CVE-2016-4622 - allows remote attackers to execute arbitrary code or
cause a denial of service (memory corruption) via a crafted web site, a
different vulnerability than CVE-2016-4589, CVE-2016-4623, and
CVE-2016-4624.

CVE-2016-4624 - allows remote attackers to execute arbitrary code or
cause a denial of service (memory corruption) via a crafted web site, a
different vulnerability than CVE-2016-4589, CVE-2016-4622, and
CVE-2016-4623.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-28 15:50:33 +02:00
Bernd Kuhls
aa9fde1c45 package/libxmlrpc: Fix build with gcc6
Fixes
http://autobuild.buildroot.net/results/c45/c45530f34bf2074bd204c485615124df928f246c/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-28 13:38:46 +02:00
Waldemar Brodkorb
e732bd1f22 bfin: change default to bf532, internal toolchain !bf6xx
The default Blackfin processor in Buildroot isn't supported by
gcc 6.1.0, so use bf532 as default. Disable any bf6xx processors
for internal toolchain users.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 23:07:11 +02:00
Yann E. MORIN
fba75c8f9e docs/manual: prepare-kconfig can be used as a dependency of documents
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 21:57:24 +02:00
Yann E. MORIN
3c695928f5 doc/asciidoc: add possibility to define document dependencies
Currently, a document can not have dependencies, except for the purely
internal ones (like checking asciidoc version, and presence of dblatex).

For our own manual, this will come in handy when we introduce a
generated kconfig snippet, so we can actually make the manual depend on
that snippet being generated first.

For external documents, it can be used to depend on host-packages if
need be (e.g. a custom host packages that generates specific media files
included in the manual).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 21:57:12 +02:00
Yann E. MORIN
4802db3dad core: introduce a generated kconfig snippet
Add the infrastructure for adding generated kconfig snippet in the
menuconfig.

For now, the kconfig snippet is generated empty, the recipe for filling
it in will be introduced in sub-sequent patches.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 21:44:57 +02:00
Yann E. MORIN
b1e079b68b core: move rule to create basic directories
Some of those directories will be needed even during configuration, like
BUILD_DIR, where we'll store the generated kconfig snippet.

So, move the rule to create them outside the BR2_HAVE_DOT_CONFIG block.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
[Thomas: fixup commit log, as noticed by Romain Naour.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 21:39:59 +02:00
Yann E. MORIN
9429e7b698 core: introduce an intermediate rule before the configurators
Currently, all configurators depend on generating the out-of-tree
Makefile wrapper.

In an upcoming patch, we'll need to also generate a kconfig fragment,
so it will have to kick in before we run the configurators.

Introduce a new intermediate "prepare-kconfig" rule, so we can
commonalise the dependencies of the configurators. Move the dependency
on the Makefile wrapper to that new intermediate rule.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
[Thomas: mark prepare-kconfig as a phony target.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 18:28:43 +02:00
Yann E. MORIN
666edc7aa0 core: commonalise the bundled and br2-external %_defconfig rules
The code for both cases is exactly the same, and only differs in the
location where defconfig files are looked for.

We use an intermediate macro to generate the corresponding rules,
because directly generating the rules is ugly and needs lots of escaping
and double-dollar-ing for the $(eval ...) and $(foreach ...) calls to
play nicely together.

Furthermore, that will be tremendously useful when we support multiple
br2-external trees.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
[Thomas: move comment outside of the make target, so that it isn't
displayed on stdout when loading a defconfig.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 16:08:52 +02:00
Yann E. MORIN
242e0087e5 core: move pkg-utils.mk to support/
pkg-utils.mk contains various definitions that are used in the package
infrastructures and packages themselves.

However, those definitions can be useful in other parts of Buildroot,
and are already used in a few places that are not related to the package
infrastructure. Also, $(sep) will be needed early in the Makefile when
we eventually support multiple br2-external trees.

Since this file only contains definitions, we can include it anytime.

So, consider that file to no longer be specific to the package infras:
  - move it to support and rename it,
  - move a few similar definitions from the main Makefile to that file.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 16:03:35 +02:00
Rahul Bedarkar
06ae84405d jack2: fix build issue with glibc
With glibc 2.16, we get following build error when building jack2:

  [193/247] cxx: tests/iodelay.cpp -> build/tests/iodelay.cpp.4.o
  ../tests/iodelay.cpp:171:43: error: 'UINT32_MAX' was not declared in this scope
  ../tests/iodelay.cpp:171:55: error: 'UINT32_MAX' was not declared in this scope
  ../tests/iodelay.cpp:172:44: error: 'UINT32_MAX' was not declared in this scope
  ../tests/iodelay.cpp:172:56: error: 'UINT32_MAX' was not declared in this scope

In glibc 2.17 or older version, Header <stdint.h> defines these macros
for C++ only if explicitly requested by defining __STDC_LIMIT_MACROS.

We can't use <cstdint> since it requires C++11 standard.

Fixes:

  http://autobuild.buildroot.net/results/369ce208ffea43dad75ba0a13469159b341e3bf5/

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 15:45:43 +02:00
Noé Rubinstein
37ad91db54 trousers: fix build with musl
The trousers code uses getpwent_r, which is not available in musl.
Detect the availability of getpwent_r in the trousers build system, and
use it conditionally.

This broke the build of tpm-tools because linking with libtspi.so
failed.

Fixes:

  http://autobuild.buildroot.net/results/830fc20c68a0653afa5567edffc2ededc4e45cc6

Runtime-tested by running tpm_version in a chroot and verifying that it
creates a "user.data" file with both the Buildroot-provided CodeSourcery
and Musl toolchains on x86_64.

Signed-off-by: Noé Rubinstein <nrubinstein@aldebaran.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 15:27:29 +02:00
Jörg Krause
a2825382a2 package/protobuf: uses fork(), not available on no-MMU platforms
This was not noticed until now because:

 1/ The older Blackfin toolchain doesn't have libatomic, so it didn't
    provide the atomic operations that protobuf needs, so protobuf was
    never built.

 2/ The ARM Cortex-M toolchain is static-only, and protobuf requires
    dynamic library support.

So it's only with the new Blackfin toolchain, which is based on gcc
6.x (and therefore provides libatomic) and is FDPIC-based (and therefore
has dynamic library support) that this problem appeared.

Since protobuf already has a BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS option,
we use it to add the BR2_USE_MMU dependency (which is architecture
related), which avoids the need to propagate the dependency.

Fixes:

  http://autobuild.buildroot.net/results/2c1/2c151e84d7854a810465dc16869023e0ada2d586/

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
[Thomas:
 - move the BR2_USE_MMU dependency under
   BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS and remove the propagation to
   reverse dependencies of protobuf, since they already depend on
   BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS.
 - improve commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 15:03:34 +02:00
Arnout Vandecappelle
b129553068 package/lshw: add patches for musl build
Fixing one issue exposed a second one.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 14:48:05 +02:00
Waldemar Brodkorb
d3af7772d0 vlc: fix compile error with uClibc-ng Linuxthreads
The fallback code path didn't work correctly, so fix it.

Fixes:
  http://autobuild.buildroot.net/results/3122287ddea1e316a64ccf0d0dc9415bfefebb49/

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 14:46:18 +02:00
Arnout Vandecappelle
40f5d4a176 package/kmsxx: add patch to fix LTO support
The LTO support in the kmsxx package uses the host gcc-ar and gcc-ranlib
instead of the ones from the cross-toolchain. Add a patch that tries to
find the right one based on CMAKE_C_COMPILER.

Fixes:
http://autobuild.buildroot.net/results/16a/16a38a4277dd1152a5955d62cb92f85447791ef3

Possibly also fixes:
http://autobuild.buildroot.net/results/f3c/f3c48da3a9706cd366c0e0a96c3cd0ff959f2a78
(it fails later, possibly because an incompatible host ar)

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 14:45:51 +02:00
Arnout Vandecappelle
97fe953bf6 package/libraw: fix gcc-6 build
Grab the patch from Debian.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 14:45:21 +02:00
Thomas Petazzoni
e74d4fc493 norm: add patch to fix musl build
Fixes:

  http://autobuild.buildroot.net/results/9c7130d5b5aad218c5c576761d495a3f403fdc5b/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-08-27 14:45:08 +02:00