Don't search for libspeex on Windows and Mac.

Make sure to not try to dynamically link libspeex on Mac, since it's not a
standard library, and application bundles aren't statically linked anyway.
Remove looking up libspeex on Windows since it's not a standard library there
either. Don't search for libspeex multiple times but instead pass it to the
librbspeex Makefile.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27999 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Dominik Riebeling 2010-09-05 10:27:39 +00:00
parent dbde63bfec
commit d71d537b17
2 changed files with 18 additions and 9 deletions

View file

@ -51,9 +51,24 @@ message("Rockbox Base dir: "$$RBBASE_DIR)
mac {
RBLIBPOSTFIX = -universal
}
# check for system speex. Add a custom rule for pre-building librbspeex if not
# found. Newer versions of speex are split up into libspeex and libspeexdsp,
# and some distributions package them separately. Check for both and fall back
# to librbspeex if not found.
# NOTE: keep adding the linker option after -lrbspeex, otherwise linker errors
# occur if the linker defaults to --as-needed
# (see http://www.gentoo.org/proj/en/qa/asneeded.xml)
#
# Always use our own copy when building statically. Don't search for libspeex
# on Mac, since we don't deploy statically there.
!static:unix:!mac {
LIBSPEEX = $$system(pkg-config --silence-errors --libs speex speexdsp)
}
rbspeex.commands = @$(MAKE) \
TARGET_DIR=$$MYBUILDDIR -C $$RBBASE_DIR/tools/rbspeex \
librbspeex$$RBLIBPOSTFIX CC=\"$$QMAKE_CC\"
librbspeex$$RBLIBPOSTFIX CC=\"$$QMAKE_CC\" \
SYS_SPEEX=\"$$LIBSPEEX\"
libucl.commands = @$(MAKE) \
TARGET_DIR=$$MYBUILDDIR -C $$RBBASE_DIR/tools/ucl/src \
libucl$$RBLIBPOSTFIX CC=\"$$QMAKE_CC\"
@ -91,13 +106,7 @@ DEPENDPATH = $$INCLUDEPATH
LIBS += -L$$OUT_PWD -L$$MYBUILDDIR -lrbspeex -lmkamsboot -lmktccboot -lmkmpioboot -lucl
# check for system speex. Add a custom rule for pre-building librbspeex if not
# found. Newer versions of speex are split up into libspeex and libspeexdsp,
# and some distributions package them separately. Check for both and fall back
# to librbspeex if not found.
# NOTE: keep this after -lrbspeex, otherwise linker errors occur if the linker
# defaults to --as-needed (see http://www.gentoo.org/proj/en/qa/asneeded.xml)
LIBSPEEX = $$system(pkg-config --silence-errors --libs speex speexdsp)
# Add a (possibly found) libspeex now, don't do this before -lrbspeex!
!static:!isEmpty(LIBSPEEX) {
LIBS += $$LIBSPEEX
}

View file

@ -29,7 +29,7 @@ endif
# don't try to use the systems libspeex when building a static binary.
ifndef STATIC
SYS_SPEEX = $(shell pkg-config --silence-errors --libs speex speexdsp)
SYS_SPEEX ?= $(shell pkg-config --silence-errors --libs speex speexdsp)
endif
# fall back to our own librbspeex if no suitable found.