Clean up Makefile by utilizing toolchain logic
Make package pkg-config friendly
Add patch to prevent crashes due to overflow
Source: a50eecf65b
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
PulseAudio in some cases does not detect the ARM CPU's capabilities
correctly and enables NEON ASM while it is not supported. For example
when compiling for arm_arm1176jzf-s_vfp the assembler rejects this and
the compile fails:
{standard input}: Assembler messages:
{standard input}:27: Error: selected processor does not support `vld1.16 {d0},[r1]!' in ARM mode
{standard input}:28: Error: selected processor does not support `vmovl.s16 q0,d0' in ARM mode
{standard input}:29: Error: selected FPU does not support instruction -- `vcvt.f32.s32 q0,q0,#15'
{standard input}:31: Error: selected processor does not support `vst1.32 {q0},[r2]!' in ARM mode
{standard input}:70: Error: selected processor does not support `vld1.32 {q0},[r1]!' in ARM mode
{standard input}:71: Error: selected FPU does not support instruction -- `vcvt.s32.f32 q0,q0,#31'
{standard input}:72: Error: selected processor does not support `vqrshrn.s32 d0,q0,#16' in ARM mode
{standard input}:74: Error: selected processor does not support `vst1.16 {d0},[r2]!' in ARM mode
Makefile:8668: recipe for target 'pulsecore/libpulsecore_sconv_neon_la-sconv_neon.lo' failed
To fix this tell PulseAudio explicitly when to use the NEON ASM and when
not to.
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
Build depends refer to source package names, not binary package names.
In many cases, PKG_BUILD_DEPENDS simply duplicated runtime dependencies of
a source package's binary packages; as the corresponding source packages
are implicitly added as bulid dependencies, PKG_BUILD_DEPENDS can simply be
dropped in these cases. In the other cases, *_BUILD_DEPENDS is fixed to
refer to the correct source package name.
Dependency of mysql-server is adjusted from libncursesw to libncurses
(as libncursesw is a virtual package provided by libncurses), so the build
dependency on ncurses is emitted unconditionally.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
-O3 already includes -fomit-frame-pointer -fschedule-insns2
Thanks Philip Prindeville for pointing this out and sorry for the noise.
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* Update LAME to 3.100
* Switch to shared library instead of static binary as it adds very little
overhead if you only need LAME binary but saves space if you need both
library and binary.
Static / Shared:
LAME binary: ~252kbyte / ~72kbyte - IPK: ~138kbyte / ~34kbyte
LAME library: ~216kbyte / ~216kbyte - IPK: ~117kbyte / ~117kbyte
* Drop patch, not needed
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
fix Makefile chmod (644)
replace MD5SUM with HASH
add PKG_MIRROR_HASH when PKG_SOURCE_PROTO:=git
(PKG_SOURCE_PROTO:=svn tarballs are not reproducible for now)
Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
This adds a patch which is a backport of 1b8adc11ed
This should prevent the gperf build errors on some platforms.
Signed-off-by: Espen Jürgensen <espenjurgensen+openwrt@gmail.com>
configure finds libpulse and then tries to include the header, but fails,
because pulseaudio isn't a dependency in the Makefile. This change disables
pulseaudio support so configure won't do this.
It wasn't the intention with version update 25.0 of forked-daapd to extend
with pulseaudio support, but maybe do that later.
Signed-off-by: Espen Jürgensen <espenjurgensen+openwrt@gmail.com>
Need to put the build dependency to gperf back, because there is a
bug in forked-daapd 25.0's configure.ac when building without gperf
Signed-off-by: Espen Jürgensen <espenjurgensen+openwrt@gmail.com>
Rearrange dependencies
General cleanup of Makefile
Fix compilation and linking problems
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Ted Hess <thess@kitschensync.net>
The release .tar.xz includes the gperf and antlr generated files, so the patch
is no longer required. The build error was from the patch being outdated.
Signed-off-by: Espen Jürgensen <espenjurgensen+openwrt@gmail.com>
In case a toolchain happens to be built with OpenMP, sox's configure
script would be picking that, but we would not be depending on libgomp
and would fail creating the package.
Since internal OpenWrt/LEDE toolchains don't enable OpenMP by default,
let's just do that here as well.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Reduce dependencies and remove not used functionality linked in using external libs.
libsndfile: Unusual file formats
libpng: Only used to generate spectrograms
Clean up configure arguments
libid3tag doesn't fall into the BUILD_PATENTED category as far as I can tell.
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Ted Hess <thess@kitschensync.net>
Update mpg123 to 1.25.2
Change download URL to Sourceforge
Change deprecated checksum variable (PKG_MD5SUM) to PKG_HASH
Add libout123
Add generic optimizations depending on platform have fpu or not
Add NEON-specific optimization
Remove BUILD_PATENTED, reference:
https://github.com/openwrt/packages/pull/4587
Small cleanup of Makefile
Thanks to Ted Hess for reviewing and suggesting compilation fix
NOTE:
mpg123 uses the most recent approach just like ffmpeg that's
mentioned here: https://github.com/openwrt/packages/pull/4555
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Shairport is unmaintained and superseded by shairport-sync which
is in tree so there's no point in keeping this obsolete package.
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
General cleanup of this port
Don't add libraries as dependencies and disable them later on in configure
arguments (curl and (lib)samplerate). Enabled from now on.
Fix dependencies and functionality provided by external libraries. If we link
(lib)ffmpeg we don't need to have external libraries for handling formats
that ffmpeg already handles.
Update PKG_MD5SUM (deprecated) to PKG_HASH
Sources:
https://github.com/mir-ror/moc/blob/master/decoder_plugins/ffmpeg/ffmpeg.c#L213
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
We were not correctly passing down TARGET_CPPFLAGS which made external
toolchains not automatically searching for headers in $(STAGING_DIR) to
fail the build. We are also just packaging the library and headers, so
we do not need to build the tests and selftests.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>