The tvheadend configure script fails to correctly handle spaces in any of
the options passed to it. If ccache is used the configure script fails to
handle the space in the --cc option and errors. Also the --cflags option
fails to handle multiple entries and only uses the first one. This patch
simple removes setting the --cc and --cflags options as the configure
script will correctly use the CC and CFLAGS variables already passed in
TARGET_CONFIGURE_OPTS.
Signed-off-by: Martin Bark <martin@barkynet.com>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
AVR32 is using uClibc 0.9.31, which lacks some CAN related definitions
that prevent the gpsd nmea2000 driver from building.
The rest of gpsd, with all options and drivers enabled, builds fine on
AVR32.
Fixes:
http://autobuild.buildroot.org/results/ee2/ee2ec848e893f08fa80caf99a67e68b73b6400e8/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
coreutils was not building in the static link case with uClibc, due to
binaries being linked with librt (for timer functions), but not with
libpthread. However, librt uses functions from libpthread, so both
must be specified. This lack of linking against libpthread was caused
by a deficiency in one of the gnulib m4 macro, for which we add a patch.
Fixes:
http://autobuild.buildroot.org/results/bd4/bd4cc779b46e3837e3d6c43c97eaf42fdfc3a288/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
pv configure script is somewhat stupid: if it cannot find the host
gettext tool msgfmt, it concludes that gettext is not available, and
provides its own minimal version. Unfortunately, this minimal version
conflicts with the available target gettext. We fix this by ensuring
that host-gettext is built if gettext support is enabled, by adding it
to the dependencies.
Fixes:
http://autobuild.buildroot.org/results/d30/d30db79190f2cf8953751d55a5d34644f60daec4/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
AArch64 does not implement the SYS_open system call, but only the
SYS_openat system call, as should be done for all modern architectures
merged into the Linux kernel. This causes problems when building
libv4l 0.8.9, which are fixed by integrating an upstream patch,
available in a more recent version of libv4l. Backporting the patch is
preferred over bumping libv4l, as libv4l has a fairly large number of
reverse dependencies, and we don't want to break anything that close
to the release.
Note that this commit also renames the existing libv4l-largefile.patch
to libv4l-01-largefile.patch in order to comply with the Buildroot
patch naming scheme, and guarantee the order in which patches are
applied.
Fixes:
http://autobuild.buildroot.org/results/ed6/ed66792e332ee0256a17f98cbe21dfcfe6e8743b/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
In commit 52eeb04c76 ('libsepol: fix
static-only library build') I forgot to git add the changes made to
the libsepol.mk file itself. Those changes are needed to actually pass
STATIC=<something> when building static libraries only.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
icu does not recognize 'uclinux' as a supported platform. While making
it recognize uclinux is easy, there is another problem down the road:
icu does very weird things to generate an ELF library containing
static data (libicudata.a), and the generated library being ELF, it is
not compatible with the FLAT binary format expected by uclinux
platforms such as Blackfin in FLAT format.
Therefore, we simply disallow the selection of icu on FLAT
platforms.
Note that adding a dependency on BR2_BINFMT_ELF doesn't work, because
BR2_BINFMT_FDPIC is considered to be separate (even if technically
FDPIC is a derivative of ELF). That's why the dependency we're adding
is "depends on !BR2_BINFMT_FLAT" and not "depends on BR2_BINFMT_ELF".
Fixes:
http://autobuild.buildroot.org/results/b41/b415fed7fae4012bad7d8b53a481bd71bdab716f/build-end.log
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
webkit needs the ARM blx instruction, which is only available on >=
ARMv5t, so we have to make sure the webkit package cannot be enabled
on < ARMv5t. In order to achieve this, this commit introduces the
BR2_PACKAGE_WEBKIT_ARCH_SUPPORTS hidden Config.in knob, which avoids
duplicating all over the place the complex architecture dependencies
of webkit.
Fixes:
http://autobuild.buildroot.org/results/fdf/fdf8bc7660ac251792d0542d2729ea22753d3789/build-end.log
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes a number of issues. From the changelog:
- Avoid getting stuck in a loop writing huge key files, reported by Bruno
Thomsen
- Avoid crash on exit due to cleaned up keys before last packets are sent,
debugged by Ronald Wahl
- Fix a race condition in rekeying where Dropbear would exit if it received a
still-in-flight packet after initiating rekeying. Reported by Oliver Metz.
This is a longstanding bug but is triggered more easily since 2013.57
- Ensure that generated RSA keys are always exactly the length
requested. Previously Dropbear always generated N+16 or N+15 bit keys.
Thanks to Unit 193
- Fix DROPBEAR_CLI_IMMEDIATE_AUTH mode which saves a network round trip if the
first public key succeeds. Still not enabled by default, needs more
compatibility testing with other implementations.
- Fix signal handlers so that errno is saved, thanks to Erik Ahlén for a patch
and Mark Wickham for independently spotting the same problem.
And at the same time get rid of the TIMEVAL_TO_TIMESPEC as dropbear provides a
fallback implementation if not available (and has done so since 2006).
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
3.3.8 support is removed since 334dca61 (kernel-headers: remove deprecated
versions 3.1, 3.3, 3.5), so let's get rid of the patch as well.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Remove a leftover of the commit commit e543f5a104
(arch: remove sh2, sh3 and sh3eb support).
Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The host python always had --disable-unicodedata, regardless of the
corresponding configuration option BR2_PACKAGE_PYTHON_UNICODEDATA.
Since the host python is used to byte-compile python modules, this meant
that such modules could not contain unicode strings. For example, following
statement in a python module:
print u"\N{SOLIDUS}"
would cause the byte-compilation to fail with message:
SyntaxError: ("(unicode error) \\N escapes not supported (can't load
unicodedata module)",
Instead, conditionally disable unicodedata based on
BR2_PACKAGE_PYTHON_UNICODEDATA, also for the host python.
This fixes bug #6542 (https://bugs.busybox.net/show_bug.cgi?id=6542)
Reported-by: Gernot Vormayr <gvormayr@gmail.com>
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Transmission would incorrectly determine the C++ compiler when ccache is
enabled, causing a build with uTP to fail at the configure step.
This patch adds a patch against transmission, fixing the problem.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
If BR2_PACKAGE_QT_STATIC is set, qtuio will not build a .so file, but .a.
However, the custom INSTALL_TARGET_CMDS and INSTALL_STAGING_CMDS
unconditionally attempted to copy the .so file.
This commit checks the requested Qt library type and copies the right
library for each case, taking into account that the static .a file does not
need to be copied to the target directory.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
If Lua support is requested in VLC, its configure script tries to find the
luac byte compiler, which fails if host-lua is not yet built.
This can be easily reproduced by setting a minimal config with vlc and Lua
enabled, and running: 'make clean toolchain vlc'. Final output is:
checking for LUA... no
configure: WARNING: Package lua5.2 was not found in the pkg-config search path.
Perhaps you should add the directory containing `lua5.2.pc'
to the PKG_CONFIG_PATH environment variable
No package 'lua5.2' found, trying lua 5.1 instead
checking for LUA... no
configure: WARNING: Package lua5.1 was not found in the pkg-config search path.
Perhaps you should add the directory containing `lua5.1.pc'
to the PKG_CONFIG_PATH environment variable
No package 'lua5.1' found, trying lua >= 5.1 instead
checking for LUA... yes
checking for luac... no
configure: error: Could not find the LUA byte compiler.
make: *** [<buildroot>/output/build/vlc-2.1.2/.stamp_configured] Error 1
Fix this problem by setting host-lua as a dependency to vlc.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
It does not make much sense enabling opencv without its core module.
This configuration leads to build nothing (since all modules depend on
the core one), but install the configuration files (*.pc and *.cmake)
anyway.
This absurd situation may break the build-system of other packages
that would correctly find the *.pc (but does not check for the modules
they actually use), but would not build because of missing headers and
libraries.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
jimtcl tries to use 'ccache' (a non-buildroot host version) which may not
exist on the host system. If ccache is enabled in buildroot, the compiler
used by jimtcl is:
ccache <buildroot>/.../ccache <buildroot>/.../<tuple>-gcc
If ccache is not present on the host, this results in the build error:
ccache <buildroot>/.../ccache <buildroot>/.../<tuple>-gcc
-D_GNU_SOURCE -Wall -I. -fpic -pipe -Os -c -o jim-subcmd.o jim-subcmd.c
make[1]: ccache: Command not found
This patch passes 'CCACHE=none' to the 'configure' script, disabling the
internal handling of ccache, so that ccache can be transparently passed
through CC.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The three typical packages that use .config files in buildroot copy the
config file at different times in the build process:
busybox copies its .config from the post-extract hook.
linux copies its .config in the configure_cmds.
uclibc copies its .config from the post-patch hook.
Copying the .config file from the configure step is the only way to properly
support an OVERRIDE_SRCDIR that does not yet have the .config file, because
the extract and patch steps are skipped in that case.
In a previous patch, the situation was already fixed for busybox. This patch
applies the same fix to uclibc: copy the config file from the configure
step, as linux is doing.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The three typical packages that use .config files in buildroot copy the
config file at different times in the build process:
busybox copies its .config from the post-extract hook.
linux copies its .config in the configure_cmds.
uclibc copies its .config from the post-patch hook.
Copying the .config file from the configure step is the only way to properly
support an OVERRIDE_SRCDIR that does not yet have the .config file, because
the extract and patch steps are skipped in that case.
For example, when setting a BUSYBOX_OVERRIDE_SRCDIR to a cleanly extracted
busybox tarball:
$ make busybox-dirclean busybox
rm -Rf [..]/output/build/busybox-custom
>>> busybox custom Syncing from source dir
>>> /home/tdescham/repo/contrib/busybox-1.21.1
rsync -au --exclude .svn --exclude .git --exclude .hg --exclude .bzr
--exclude CVS /home/tdescham/repo/contrib/busybox-1.21.1/
[..]/output/build/busybox-custom
>>> busybox custom Configuring
/bin/sed -i -e "/\\<CONFIG_NOMMU\\>/d"
[..]/output/build/busybox-custom/.config
/bin/sed: can't read [..]/output/build/busybox-custom/.config:
No such file or directory
make: *** [[..]/output/build/busybox-custom/.stamp_configured] Error 2
This patch modifies busybox.mk to copy the config file from the configure
step instead, as linux is doing, and fixing the described scenario.
This fixes bug #5030: https://bugs.busybox.net/show_bug.cgi?id=5030
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
[Peter: add to existing _CONF_OPT line as suggested by Yann]
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, the build of systemd is broken with the internal toolchain
backend, because we have uClibc patches that add support for
execvpe(), but we also have a patch for systemd that adds execvpe(),
which was added when the internal uClibc didn't support execvpe().
However, simply dropping the patch is not a solution, as it would
break the build of systemd with any other uClibc than the ones built
with Buildroot. For example, a Crosstool-NG uClibc toolchain would
fail.
Beyond this execvpe() problem, there are also other problems that
prevented systemd from being built with unpatched uClibc.
This patch does the following:
* Add sequence numbers of systemd patches.
* Regenerate them to avoid fuzz.
* Improve the uClibc compatibility patch so that it:
- Detects whether execvpe() is available or not, and if not
available provide an implementation.
- Detects if dup3() is available or not, and if not available
provide an implementation.
- Detects if MSG_CMSG_CLOEXEC is defined or not, and if not, define
it to the appropriate value.
This has been tested with uClibc internal toolchain, uClibc external
toolchain built with Buildroot, uClibc external toolchain built with
Crosstool-NG, and glibc external toolchain.
Fixes bug #6776.
Fixes:
http://autobuild.buildroot.org/results/591/591c6055430da334bd1e46e7d01497add45da837/build-end.loghttp://autobuild.buildroot.org/results/e58/e5851939d2837d4e35a4c1d9ca6df3c93ed5a34b/build-end.loghttp://autobuild.buildroot.org/results/92e/92e4c40c69a3feb4046b2fe5a0d8c69d5a44a157/build-end.log
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
As the e-mail address buildroot@buildroot.org is now enabled, update the
e-mail addresses in the source tree from @uclibc.org and @busybox.net to our
own proper domain.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Disable elfutils for avr32, because:
- elfutils uses canonicalize_file_name, which came after uClibc-0.9.31.
- avr32 uses a toolchain with uClibc-0.9.31
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The patch that commit a728e2fe35 (coreutils: fix build against uclibc
snapshot) adds mentions the wrong coreutils version in its description.
Also fix the sign-of tag while at it.
Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The xtensa port uses __xtensa_libgcc_window_spill in libgcc to implement
__builtin_frame_address. This symbol is local/hidden in libgcc. This is not a
problem when linking against static libgcc. But g++ defaults to
-shared-libgcc, thus breaking link against C++ shared libraries that are using
__builtin_frame_address as follows:
ld: test: hidden symbol `__xtensa_libgcc_window_spill' in .../libgcc.a(lib2funcs.o) is referenced by DSO
Add upstream patches that make libgcc_s.so a linker script that links in
unresolved symbols from the static libgcc, similar to the ARM and PowerPC
ports.
Fixes:
http://autobuild.buildroot.net/results/e2d/e2d1a763fa86b8575e2e48e6d73c018175f43e7c/
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
uClibc development version adds support for POSIX spawn routines. However,
unlike glibc these routines are in librt. This breaks gnulib autoconf
detection. Teach gnulib autoconf to look for POSIX spawn in librt.
Fixes:
http://autobuild.buildroot.net/results/246/246b3778a1a646afd1c8b9c17b4579fb5a27120e/
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>