Version 0.20.x does not depend on libglib2 anymore. Note, that the
dependency on MMU and Thread remain, as MPD uses fork() and thread
functionality.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Although tremor (the library is named vorbisidec) provides a pkg-config
file, mpd does not use it to find tremor. Since version 0.20 does throw
an error instead of a warning, that's why the issue was left unnoticed
by the autobuilders.
Help mpd to find tremor by providing the path to the library and passing
LIBS through the environment. We use the host pkg-config tool to get the
correct values from the vorbisidec.pc file.
Fixes:
http://autobuild.buildroot.net/results/6b9/6b97403e70caa12c32494b1c82ce61d3e4e456f6/
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Drop patch #0002 which was already fixed upstream long time ago in
commit 276a0d9500b8efc879e4f0c23e9d0e361849e295 using a slightly
different approach.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
It fixes runtime issues with ffmpeg 3.1.x
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Following the removal of eglibc support, this commit replaces all
occurences of "(e)glibc" by just "glibc". Most of the occurences are in
package Config.in comments.
In addition, when the form "an (e)glibc ..." was used, it is replaced by
"a glibc ...".
[Peter: add new efi* packages, s/uclibc/uClibc as suggested by Romain,
systemd / liquid-dsp tweaks as suggested by Yann]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Remove fetching upstream patch to fix build with GCC 6 - it's included in the
update.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fetch a patch from upstream to fix a build issue with GCC 6:
'''
In file included from /home/joerg/Development/git/buildroot/output/host/usr/arm-buildroot-linux-gnueabi/include/c++/6.1.0/bits/stl_algo.h:59:0,
from /home/joerg/Development/git/buildroot/output/host/usr/arm-buildroot-linux-gnueabi/include/c++/6.1.0/algorithm:62,
from ./src/queue/IdTable.hxx:25,
from ./src/queue/Queue.hxx:24,
from src/queue/Playlist.hxx:23,
from src/Partition.hxx:23,
from src/Instance.cxx:22:
/home/joerg/Development/git/buildroot/output/host/usr/arm-buildroot-linux-gnueabi/include/c++/6.1.0/cstdlib:75:25: fatal error: stdlib.h: No such file or directory
#include_next <stdlib.h>
'''
Bug report: https://bugs.musicpd.org/view.php?id=4524
Fetch from: aa5d05eaa4d482aa8f8df954335d0aba151eeff9
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The BR2_PACKAGE_BOOST_ARCH_SUPPORTS option was originally added in
commit feeab03fa6 to be able to disable
Boost on broken NIOSII CodeSourcery toolchains.
However, since then, the CodeSourcery toolchain has been updated, and
once the fenv problem is fixed, this NIOSII toolchain is capable of
building Boost.
Thanks to this we can completely get rid of the
BR2_PACKAGE_BOOST_ARCH_SUPPORTS symbol, from boost itself and from all
its reverse dependencies.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Drop patches applied upstream:
- 0001: notify: Don't use constexpr on Haiku
- 0002: notify: use "constexpr" only with glibc
Renumber remaining patches.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
0003-thread-Posix-Mutex-Cond-use-constexpr-only-with-glib.patch is
upstream so remove it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
mpd uses __atomic_*() built-ins, but forgets to link with -latomic
when needed, so this commit adds a patch that ensures it will link
with libatomic, and adds a dependency on BR2_TOOLCHAIN_HAS_ATOMIC.
Fixes:
http://autobuild.buildroot.net/results/e2207280f3a177e12dba502b1c01f5aeb431d04c/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit replaces 0002-musl-gcc5-fixes.patch by a backport of 3
upstream commits. It also renames
0001-thread-Name-include-stdio.h-for-prctl-as-well.patch to have the
sequence number 0004, so that it applies after the backported upstream
patches (since this patch is not upstream yet).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
samba4 uses the __sync_fetch_and_add_4() atomic built-in, so it should
depend on BR2_TOOLCHAIN_HAS_SYNC_4 in order to avoid build failures on
architectures not providing this atomic built-in.
Fixes:
http://autobuild.buildroot.org/results/0d0fd9d2a132a40a840bea5df59c35d8573ebf45/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Move away from BR2_ARCH_HAS_ATOMICS and use BR2_TOOLCHAIN_HAS_SYNC_4
instead for the jack2 package and its reverse dependency.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
pulseaudio is able to either use the atomic __sync builtins from the
compiler, or to rely on libatomic_ops for atomic operations. However,
since it anyway selects json-c which requires the __sync built-ins, it
means using libatomic_ops is useless: even if you use libatomic_ops
for pulseaudio, you'd still get a link error in pulseaudio due to the
missing __sync built-in for the json-c library.
Also, since pulseaudio now inherits the BR2_TOOLCHAIN_HAS_SYNC_4 from
json-c, which matches the __sync built-in from pulseaudio, this
commit:
- Drops the BR2_ARCH_HAS_ATOMICS dependency
- Forces pulseaudio to not detect libatomic_ops
- Propagates the removal of BR2_ARCH_HAS_ATOMICS dependency to
pulseaudio's reverse dependencies.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
While json-c itself builds fine on platforms that don't provide the
__sync atomic built-ins, it does use them. json-c doesn't fail to
build because only a library is built, so such function calls are left
unresolved. But as soon as it gets used in another package linked in a
program, linking will fail due to the missing
__sync_val_compare_and_swap_4() function.
To fix this, we make json-c depend on BR2_TOOLCHAIN_HAS_SYNC_4, and
propagate to the reverse dependencies:
- json-c
- fastd
- pulseaudio
- efl
- espeak
- gst-plugins-good
- gst1-plugins-good
- mpd
- rsyslog
- ubus
Note that pulseaudio already had a BR2_ARCH_HAS_ATOMICS dependency,
which we are keeping for the moment, and will clean-up in a subsequent
commit.
This commit will also fix packages that could optionally use json-c,
and therefore fixes build failures like:
http://autobuild.buildroot.org/results/4fe/4feaa9089ee9a183c5086b791bea35c0156945af/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
This commit fixes the following kconfig warning:
warning: (BR2_PACKAGE_KODI_LIBSMBCLIENT && BR2_PACKAGE_MPD_LIBSMBCLIENT) selects BR2_PACKAGE_SAMBA4 which has unmet direct dependencies (!BR2_PACKAGE_SAMBA && BR2_USE_MMU && BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_NATIVE_RPC && BR2_TOOLCHAIN_HAS_THREADS && !BR2_STATIC_LIBS && !BR2_nios2)
by updating the kodi and mpd Config.in files to properly take into
account the dependencies of the BR2_PACKAGE_SAMBA4 option that they
select.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
ffmpeg was already marked as not available for the NIOS2 Sourcery
toolchains, but it could still be built with the internal toolchain
backend or a custom external toolchain.
However, an inspection of the latest glibc source code indicates that
FE_INVALID, FE_OVERFLOW and FE_UNDERFLOW and indeed not available in
the nios2 variant of <fenv.h>.
Consequently, this patch makes ffmpeg not available on nios2, which
allows to simplify a bit the dependencies.
It propagates this dependency to:
- minidlna (and at the same time makes sure the minidlna comment is
not displayed on nios2, which wasn't properly taken into account
until now)
- mpd
- opencv
- opencv3
- squeezelite
- tovid
Even if it selects ffmpeg, Kodi does not need an update since Kodi is
only available on a limited number of architectures (which don't
include nios2, obviously). Other packages only make use of ffmpeg when
available.
Fixes:
http://autobuild.buildroot.org/results/921/9212f5a6432c5e695ac0630695405cea05e28610/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes an ape tag parsing buffer overflow.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
'echo -n' is not a POSIX construct (no flag support), we shoud use
'printf', especially in init script.
This patch was generated by the following command line:
git grep -l 'echo -n' -- `git ls-files | grep -v 'patch'` | xargs sed -i 's/echo -n/printf/'
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Add a patch from the Alpine Linux project [1] to fix a musl build issue with
gcc 5:
```
error: temporary of non-literal type ‘pthread_mutex_t’ in a constant expression
constexpr PosixMutex():mutex(PTHREAD_MUTEX_INITIALIZER) {}
```
Problem has been reported by the Alpine team upstream and was closed by the MPD
maintainer with WONTFIX:
http://bugs.musicpd.org/view.php?id=4387http://bugs.musicpd.org/view.php?id=4110
However...
POSIX does not permit using PTHREAD_COND_INITIALIZER except for static
initialization, and certainly does not permit using it as a value.
Also POSIX does not specify the type of the object (it's opaque) so if
there are any types for which their code would be invalid C++, then their
code is invalid.
Also, volatile in the type is necessary. without that, LTO can break the code.
[1]
http://git.alpinelinux.org/cgit/aports/log/main/mpd/musl-gcc5-fixes.patch
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
mpd requires at least gcc 4.6, so use the newly introduced gcc version
dependency mechanism instead of open-coded toolchain dependencies.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
The current NIOS 2 toolchains are not capable of building Boost, so
let's disable it and its reverse dependencies. Even though it's not
strictly an architecture dependency, we use the <pkg>_ARCH_SUPPORTS
paradigm for this dependency, since it simplifies a lot handling all
boost reverse dependencies, and is anyway quite similar to an
architecture dependency since we don't display a comment about this
dependency.
Fixes:
http://autobuild.buildroot.net/results/e119b1ef55c546e0d0598b85c46ceefa5c43d5a6/
[Peter: also update mpd comment]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Now that IPv6 is mandatory remove package dependencies and conditionals
for it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that largefile is mandatory removes package dependencies and
conditionals.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
mpd is using snprintf without including stdio.h when pthread_setname_np
isn't available leading to failure, hence patch it. Fixes:
http://autobuild.buildroot.net/results/14c/14cf165e63fd7bb076d7c8f5aab92d24aa4622c4/
Patch status: sent upstream.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>