Commit Graph

32338 Commits

Author SHA1 Message Date
Bernd Kuhls
f33fcdf225 package/erlang: add optional dependency to unixodbc
Quote from erlang configure without unixodbc:

checking for odbc in standard locations... no
configure: WARNING: No odbc library found skipping odbc
configure: WARNING: "ODBC library - header check failed"
configure: WARNING: "ODBC library - link check failed"

Quote from erlang configure with unixodbc:

checking for odbc in standard locations... -L/home/buildroot/br3_couchdb/output/host/usr/i586-buildroot-linux-uclibc/sysroot/usr/lib
checking for SQLAllocHandle in -lodbc... yes

To check for unixodbc support used by erlang use readelf:

$ output/host/usr/bin/i586-buildroot-linux-uclibc-readelf -a output/target/usr/lib/erlang/lib/odbc-2.11.1/priv/bin/odbcserver | grep NEEDED
 0x00000001 (NEEDED)                     Shared library: [libodbc.so.2]
 0x00000001 (NEEDED)                     Shared library: [libc.so.0]

Tested using this minimal defconfig:

BR2_PACKAGE_ERLANG=y
BR2_PACKAGE_ERLANG_SMP=y
BR2_PACKAGE_UNIXODBC=y

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Tested-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 22:57:16 +02:00
Yann E. MORIN
56cf561293 pkg-infra: allow dumping reverse dependencies of a package
Finding the packages that select another one in a specific configuration
is not very trivial:

  - when optional, the dependency is not expressed in Kconfig

  - looking at the .mk files is not very nice.

Introduce a way to dump reverse dependencies of packages, i.e. the list
of packages that directly depend on that package. Like for direct
dependencies, we limit the list to the first-order reverse dependencies.

Document it in the main help; use the opportunity to also document
foo-show-depends.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 22:51:54 +02:00
Thomas Petazzoni
0292ec5f34 DEVELOPERS: add Bernd for the vdr-plugin-vnsiserver package
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 22:49:09 +02:00
Bernd Kuhls
700b729dcc package/vdr-plugin-vnsiserver: new package
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 22:40:05 +02:00
Thomas Petazzoni
120de6a2a4 DEVELOPERS: add Bernd for the vdr package
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 22:36:03 +02:00
Bernd Kuhls
815e4f1a33 package/vdr: new package
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: minor tweaks.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 22:35:32 +02:00
Jörg Krause
26d2b410c0 libglob: new package
libglob is the OpenBSD implementation of glob(3).

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
[Thomas: slightly rework how the make targets are calculated.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 21:52:00 +02:00
Jordan Yelloz
02549bd918 swupdate: improved help text for Lua support
It now explains limitations of building against Lua < 5.2 interpreters
and how to link to LuaJIT library.

Signed-off-by: Jordan Yelloz <jordan@yelloz.me>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 21:41:51 +02:00
Jordan Yelloz
7d55462df8 swupdate: update lua check for libconfig
Most probably this was missed in commit
65b2ae49fe which removed pinning to Lua
5.2.

Signed-off-by: Jordan Yelloz <jordan@yelloz.me>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 21:35:55 +02:00
Frank Hunleth
fcbdfd7416 DEVELOPERS: add entry for rabbitmq-server
Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-25 21:15:11 +02:00
Frank Hunleth
bfde3b3d47 rabbitmq-server: new package
[Peter: simplify init script, use relative symlinks]
Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-25 21:13:42 +02:00
Rahul Bedarkar
15a6c8290a zyre: disable docs
Fixes:
  http://autobuild.buildroot.net/results/c30/c307cfae46b800603b76f623840bd0fd950f0e3f/

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-25 19:59:18 +02:00
Fabio Estevam
dc7eed4740 configs/imx28evk: Update U-Boot and kernel versions
Update U-Boot to 2016.09.01 and kernel to 4.8.4 version.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-25 19:58:49 +02:00
Fabio Estevam
23e0f3350f imx28evk: Fix the first partition location
When the SD card is connected to the host PC it can be mounted as
/dev/mmcblk0 or /dev/sdX, depending on how the SD controller is connected to
/the PC.

In this case the first partition is /dev/mmcblk0p1, not /dev/mmcblk01.

So use the ${PART1} variable to correctly assign this location.

[Peter: extend commit meesage]
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-25 19:57:20 +02:00
Fabrice Fontaine
c490f3b08f motion: bump to version 4.0.1
[Peter: adjust autoreconf comment]
Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-25 19:57:08 +02:00
Rahul Bedarkar
cea81b6925 rsyslog: not available on musl
With musl C library, we get following error when building rsyslog:

  imfile.c: In function 'in_setupFileWatchStatic':
  imfile.c:1614:28: error: 'GLOB_BRACE' undeclared (first use in this function)
        GLOB_MARK|GLOB_NOSORT|GLOB_BRACE, NULL, &files);
                              ^
flag GLOB_BRACE is not available on musl. Since package uses it
unconditionally, we mark it not available for musl.

Fixes:
  http://autobuild.buildroot.net/results/6d4/6d480bb1e1466809d8ff119f6b35bb91df00785c/

Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-25 19:52:24 +02:00
Jordan Yelloz
515ced2008 swupdate: allow luajit to enable HAVE_LUA
Until now, HAVE_LUA=y was only passed when BR2_PACKAGE_LUA=y. However,
swupdate can also use LuaJIT instead of the classic Lua. Therefore,
this commit updates the package to use BR2_PACKAGE_HAS_LUAINTERPRETER
and the luainterpreter virtual package.

Note that the swupdate configuration needs to be updated separately
(via swupdate-menuconfig) to enable Lua support, and to specify the
Lua version (which should be jit-5.1 to link against LuaJIT).

Signed-off-by: Jordan Yelloz <jordan@yelloz.me>
[Thomas: use the luainterpreter virtual package, expand commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 13:46:52 +02:00
Rahul Bedarkar
1b0df8f23c scripts/get-developers: correct type of patches argument
Current type for 'patches' argument is str. It supposed to only
contain names of files.

If we specify FileType as type, then we don't need to open file ourself
and it allows script to read patch from standard input as well.

e.g.
$ git show -1 | ./support/scripts/get-developers -

Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 12:43:27 +02:00
Fabio Estevam
8513ffee43 configs/warp7: Use common script for generating boot image
Use the common board/freescale/common/post-image.sh script instead of
a custom one.

As the final image binary is called "sdcard.img" update the documentation
accordingly.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 12:36:08 +02:00
Thomas Petazzoni
2d1ceeba02 php: fix selection of interfaces depending on BR2_USE_MMU
Commit c457213fbc reworked the selection
of PHP interfaces, moving from a choice..endchoice to a three
independent sub-options.

Thanks to how choices are handled by kconfig, an option suitable for
noMMU platforms was automatically chosen by default. When the
choice...endchoice got removed in
c457213fbc, we introduced a "select" for
one of the interfaces, to make sure at least one interface is
selected.

Unfortunately, the selected interface does not build on noMMU
platforms. In order to preserve the previous behavior (CGI interface
is selected by default on MMU capable platforms), this commit makes
the select logic a bit more complicated:

 - CGI is selected on MMU-capable platforms if neither CLI or FPM are
   selected

 - CLI is selected on MMU-less platforms, since this is anyway the
   only available interface.

Fixes:

  http://autobuild.buildroot.net/results/85ea09188f1e996cb14b4b83a17736c096c569a8/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-25 12:35:20 +02:00
Thomas Petazzoni
63ed0574e5 Revert "firejail: new package"
This reverts commit 8a5224415c. It was
kept applied by mistake.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 23:43:18 +02:00
Thomas Petazzoni
cebf8219f3 rp-pppoe: pass the appropriate path for various tools
The rp-pppoe configure script uses AC_PATH_PROG() to find the path of
a number of tools on the build machine. But in fact, those paths are
not used to call the tools on the build machine, but rather to replace
variables in scripts that are executed in the target.

Due to this, if those tools on the build machine are not located at
the same place as their equivalent in the target, the scripts will
fail to run. To address this, we pass the necessary cache variables to
override the autoconf checks.

The path from pppd has been taken from the build result of the pppd
package. The path for setsid, id and echo have been taken from the
build result of Busybox, assuming that full-blown variants of those
tools would be installed at the same location.

Fixes bug #8811.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 23:42:09 +02:00
Chris Frederick
8a5224415c firejail: new package
Firejail Security Sandbox
https://firejail.wordpress.com/

Lightweight application sandboxing system using seccomp and kernel
namespaces.

Signed-off-by: Chris Frederick <cdf123@cdf123.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 23:35:51 +02:00
Jerzy Grzegorek
1cbef932b9 package/ts4900-fpga: remove the default value of the _INSTALL_{IMAGES, TARGET} variables
Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 23:34:53 +02:00
Jérôme Pouiller
8087b02bdf toolchain/wrapper: fix 'reinstall'
toolchain-wrapper was not reinstalled. So rules toolchain-external-reinstall,
gcc-initial-reinstall, gcc-final-reinstall didn't work as expected.

In add, normalize variable name: s/TOOLCHAIN_BUILD_WRAPPER/TOOLCHAIN_WRAPPER_BUILD/

Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 23:02:33 +02:00
Carlos Santos
b976195d99 util-linux: select ncurses when "pg" is selected
Fixes:
http://autobuild.buildroot.net/results/63374203f32d2e9407531b53cd5d8f2665944fbe
http://autobuild.buildroot.net/results/6279cd6f45f54ed5857a2fc08a21d9e257b6bc4b
http://autobuild.buildroot.net/results/5604c56c0c92483d28e51eb4e70a9741c3c4effe

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 22:42:34 +02:00
Yann E. MORIN
c087cbe5c0 legacy: add missing select
When adding a boolean option to legacy, it should slect BR2_LEGACY, to
trigger the legacy warning.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 22:42:07 +02:00
Fabrice Fontaine
c77f7c689f openzwave: fix compilation of MinOZW
LIBDIR was used in cpp/examples/MinOZW/Makefile to add dynamic
libraries. However, as it was unset by default, the cross-compilation
could fail if the host had a library such as libnss3.so in /.
To fix this issue, this patch sets LIBDIR to top_buildir if it is unset

Fixes:
  http://autobuild.buildroot.net/results/68719fdf1320a69310bada6d3c47654dacdb5898

Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 17:51:02 +02:00
Chris Frederick
548b0d541c postgresql: enable ldap support for pg_service.conf
Just needed to add --with-ldap to POSTGRESQL_CONF_OPTS and add openldap
to POSTGRESQL_DEPENDENCIES when BR2_PACKAGE_OPENLDAP is on

Signed-off-by: Chris Frederick <cdf123@cdf123.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 17:44:54 +02:00
Waldemar Brodkorb
90e38737a6 uclibc: fix pthread.h
Fixes:
 bfin: http://autobuild.buildroot.net/results/fbf/fbf63bbe0974b490b875a95fb930ba601364b85a/
 m68k: http://autobuild.buildroot.net/results/cc9/cc9b87c4c695f97a056cc53f19e7662750dffeff/
 microblazeel: http://autobuild.buildroot.net/results/941/941c06e29f6542e258f20799dc6f3f94b2f8af88/

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 14:50:00 +02:00
Fabrice Fontaine
c457213fbc php: rework selection of interfaces
Following suggestion of Yann Morin, rework selection of php
interfaces: use booleans instead of choice to be able to select
multiple interfaces as they are not exclusive. We make sure at least
one of the options is selected.

It should be noted that previously CGI and FPM could not be selected
at the same time. This is now possible. Bug that prevented compilation
of CGI and FPM binaries at the same time has been fixed since PHP 5.4
(https://github.com/php-build/php-build/issues/101).

Legacy handling is added for the two options that are removed, and the
appropriate new options are selected.

Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-24 14:46:43 +02:00
Arnout Vandecappelle
8740f321fc pkg-download: fix fetching URLs with ? from PRIMARY/BACKUP
Some packages download files (especially patches) with a ? in the
URL. The ? marks the query part of the URL. However, the downloaded
file still contains the ? but from then on it doesn't designate a
query part anymore. Therefore, when fetching from PRIMARY or
BACKUP site over http, the server will report a 404 Not Found.

To fix, we need to replace the ? with %3F. Obviously, this should
be done only when fetching from PRIMARY or BACKUP. For fetching
from the real upstream, the ? really does designate the query part.

Fixes #9371.

Reported-by: Johan Derycke <johanderycke@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Thomas: replace 'SECONDARY' by 'BACKUP'.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-23 14:51:16 +02:00
Bernd Kuhls
873d4019f7 package/gcc: disable libmpx for gcc6-based musl builds
Building this minimal defconfig

BR2_TOOLCHAIN_BUILDROOT_MUSL=y
BR2_GCC_VERSION_6_X=y

fails:

In file included from ../../../../libmpx/mpxrt/mpxrt.c:54:0:
../../../../libmpx/mpxrt/mpxrt.c: In function 'read_mpx_status_sig':
../../../../libmpx/mpxrt/mpxrt.h:52:42: error: invalid application of
'sizeof' to incomplete type 'struct _libc_fpstate'
 #define XSAVE_OFFSET_IN_FPMEM    sizeof (struct _libc_fpstate)

To fix disable libmpx for musl builds, other projects did the same:

3ec2211548
http://git.alpinelinux.org/cgit/aports/commit/main/gcc/APKBUILD?id=1830e485126ea9a95d763317fb0c508c1ff297d2

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-23 14:47:07 +02:00
Francois Perrad
d250914f3c lua-messagepack: bump to version 0.3.5
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-23 14:39:53 +02:00
Francois Perrad
4419eb9042 lua-csnappy: bump to version 0.1.4
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-23 14:39:48 +02:00
Bernd Kuhls
5dc5f08a09 package/ffmpeg: bump version to 3.1.5
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-23 14:39:22 +02:00
Bernd Kuhls
91f8f41dab package/ffmpeg: renumber patch 0013 -> 0001
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-23 14:39:18 +02:00
Waldemar Brodkorb
446debc47e uclibc: update to 1.0.19
All patches are upstream.

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-23 14:25:17 +02:00
Gustavo Zacarias
1f84b980d9 linux: bump default to version 4.8.4
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-23 14:25:01 +02:00
Gustavo Zacarias
5858973eaf linux-headers: bump 3.{2, 10, 12}.x and 4.{4, 7, 8}.x series
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-10-23 14:24:54 +02:00
Thomas Petazzoni
da90437be7 cryptopp: bump to 5.6.5
This commit bumps cryptopp from 5.6.3 to 5.6.5 in order to fix bug

The commit f707b9ef1688d4429ca6239cf2dc236440974681, which Buildroot
was downloading as a patch to fix build with older gcc versions, has
been merged upstream as of 5.6.4, is therefore no longer necessary,
and dropped in this commit.

In addition, Andrey Volkov in the bug report #9321, proposed to add a
number of patches to cryptopp to solve issues when using
tegrarcm. Those patches are the following ones:

 - patch 0: moving to autotools as the build system. This is not
   strictly a bug fix, and is not necessary.

 - patch 1: merged upstream in
   "3941be18891a6a87626b7c70f715ca91c61c08c3 Fixed hang on ARM
   platforms in Integer::DivideThreeWordsByTwo", which is part of
   5.6.5.

 - patch 2: merged upstream in
   "9fca0c28023a177106cf58a3de6da610f185a6e4 Work around issue on
   ARMEL in MultiplyTop and GCC. ARMHF is OK", which is part of 5.6.5.

 - patch 3: merged upstream in
   "dce2317195a7d9aa77b159fd1beddaf8358f6243 Increase range for GCC
   workaround on ARMEL. After speaking with AP from GCC, he states
   some issues are still likely present in Master, which is GCC 6.0",
   which is part of 5.6.5

 - patch 4: merged upstream in
   "605744d8260c6ada033805c13ae0b2646acf18d6 Fixed SecBlock append
   when "this == t", fixed assert, added validation test (Issue 92)",
   which is part of 5.6.5

 - patch 5: merged upstream in
   "9f335d719ebc27f58251559240de0077ec42c583 Fix the Rijndael timing
   attack counter measure", which is part of 5.6.5

 - patch 6: merged upstream in
   "d8b02cfaafd7350ed0f876cd5da405cff330d537 Fixed m68k detection
   (Issue 153)", which is part of 5.6.5

 - patch 7: merged upstream in
   "c82fd655ed7465db8d21a0e0559c304a7a86d298 Cleared assert in debug
   builds (Issue 138)", which is part of 5.6.5

Bottom line: none of the patches proposed by Andrey Volkov are
necessary if we bump to 5.6.5.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-22 22:26:32 +02:00
Gustavo Zacarias
731b3c51aa libtasn1: clarify licensing info
The library is LGPLv2.1+, the tests and tools are GPLv3+ so clarify to
avoid confusion.

Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Reviewed-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-22 16:45:06 +02:00
Thomas Petazzoni
7d2407b3e7 toolchainfile.cmake: fix description of CMAKE_Fortran_FLAGS_{DEBUG,RELEASE}
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-22 16:44:06 +02:00
Samuel Martin
10a6756fa1 toochainfile.cmake: rework the way Buildroot sets flags
From the build configuration, Buildroot defines and set some compiler
and linker flags that should be passed to any packages build-system.

For package using the cmake-package infrastructure, this is achieved
via the toolchainfile.cmake.

This change simplifies the way the toolchainfile.cmake file handles
these flags: it now just sets them, without any attempt to extend them
with those Buildroot defined.

This change still allows overriding these flags from the configure
command line.

So, now, when a CMake-based package needs to extend them, they should
be fully set from the package *.mk file. This behavior is consistent
with what is done for others package infrastructures.

This change should not pull any regression WRT the bug #7280 [1].

However, now, when someone uses the toolchainfile.cmake file outside of
Buildroot, he/she must overload all compiler/linker flags (including the
ones Buildroot sets since they no longer get automatically added).

[1] https://bugs.busybox.net/show_bug.cgi?id=7280

Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-22 16:23:44 +02:00
Samuel Martin
8e84b9003d package/rpi-userland: include TARGET_CFLAGS to the overloaded CFLAGS
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-22 16:22:15 +02:00
Max Filippov
eb26296666 package/opencv3: fix CMAKE_CXX_FLAGS
The commit 4904c4c "package/opencv3: use BR2_TOOLCHAIN_HAS_LIBATOMIC"
overrides CMAKE_CXX_FLAGS with the single -latomic, losing all ABI
CFLAGS that are passed there by default. This breaks build on xtensa
where ABI CFLAGS contain important code generation options.

Append $(TARGET_CXXFLAGS) to CMAKE_CXX_FLAGS along with -latomic.

Fixes:
  http://autobuild.buildroot.net/results/7f1c96abd8fbb5b358a07100ab623316e9bb9dcd
  http://autobuild.buildroot.net/results/e0c93d0f6d1da0d62d4dbba211a275bfe75e9645
  http://autobuild.buildroot.net/results/53e7e4b4b6a7b48b8012799d7507f7594dbf01b2

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-22 16:22:10 +02:00
Samuel Martin
d1a312d209 package/libcec: include TARGET_{C, CXX}FLAGS to the overloaded {C, CXX}FLAGS
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-22 16:22:02 +02:00
Samuel Martin
1255d0080c package/gnuradio: include TARGET_CFLAGS to the overloaded CFLAGS
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-22 16:21:14 +02:00
Samuel Martin
b353ce1315 package/gflags: include TARGET_CXXFLAGS to the overloaded CXXFLAGS
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-22 16:21:04 +02:00
Samuel Martin
12494ef48f toolchainfile.cmake: set per-config appended {C, CXX}FLAGS
When a build type is set, CMake does append some flags that can override
those set by Buildroot due to the gcc option parser (in which the last
argument controling an option wins).

Hereafter is a summary of the optimization and debug flags set by
Buildroot and appended by CMake.

* Flags set by Buildroot depending on the configuration:

  BR2_ENABLE_DEBUG | Optim. level        | Buildroot {C,CXX}FLAGS
  =================+=====================+=======================
          y        | BR2_OPTIMIZE_S      | -Os -gx
          y        | BR2_OPTIMIZE_G      | -Og -gx
          y        | BR2_OPTIMIZE_{0..3} | -On -gx
          n        | BR2_OPTIMIZE_S      | -Os
          n        | BR2_OPTIMIZE_G      | -Og
          n        | BR2_OPTIMIZE_{0..3} | -On

* Default flags appended by CMake depending on the build type:

  Build type     | Flags           | Effects on {C,CXX}FLAGS
  ===============+=================+===========================================
  Debug          | -g              | Force -g, compatible with BR2_ENABLE_DEBUG
  MinSizeRel     | -Os -DNDEBUG    | Set -Os, compatible with BR2_OPTIMIZE_S
  Release        | -O3 -DNDEBUG    | Set -O3, closest to the others cases,
                 |                 | though the optimization level is forced.
  RelWithDebInfo | -O2 -g -DNDEBUG | Force -g and set -O2, not friendly with BR

To avoid the CMake flags take precedence over the Buildroot ones, this
change sets in toolchainfile.cmake the per-config compiler flags CMake
can append depending on the build type Buildroot defined.
So, CMake does not mess up with the compilation flags Buildroot sets.

It is still possible to override these per-config flags on the cmake
command line.

Note:
  If a CMake-based project forces the compiler and/or linker flag
  definitions (the default ones or the per-config ones - e.g.
  CMAKE_C_FLAGS/CMAKE_C_FLAGS_{DEBUG,RELEASE}), there is not much
  Buildroot can do about it.
  So, the flags will be overwritten anyway in these cases.

Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Thomas:
 - adjust comment in toolchainfile.cmake.in, as suggested by Arnout.
 - also handle CMAKE_Fortran_FLAGS_*, as suggested by Arnout.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-22 16:20:17 +02:00