Libraries that are used internally by libFLAC(++) but are not part of
their API should be listed in pkg-config "private" clauses. Otherwise
executables that are linked dynamically against libFLAC(++) will have
unneeded direct dependencies (overlinking).
Based on a patch by Brad Smith from
https://sourceforge.net/p/flac/bugs/397/
that I updated to only include ogg if libFLAC is actually built with
ogg support.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
AM_CONDITIONAL(FLaC__HAS_OGG, [test "x$have_ogg" = xyes])
if test "x$have_ogg" = xyes ; then
AC_DEFINE_UNQUOTED([FLAC__HAS_OGG],1,[define if you have the ogg library])
+ OGG_PACKAGE="ogg"
else
AC_DEFINE_UNQUOTED([FLAC__HAS_OGG],0)
fi
+AC_SUBST(OGG_PACKAGE)
dnl check for i18n(internationalization); these are from libiconv/gettext
AM_ICONV
Name: FLAC++
Description: Free Lossless Audio Codec Library (C++ API)
Version: @VERSION@
-Requires: flac
-Libs: -L${libdir} -lFLAC++ @OGG_LIBS@ -lm
+Requires.private: flac
+Libs: -L${libdir} -lFLAC++
Cflags: -I${includedir}
Name: FLAC
Description: Free Lossless Audio Codec Library
Version: @VERSION@
-Libs: -L${libdir} -lFLAC @OGG_LIBS@ -lm
+Requires.private: @OGG_PACKAGE@
+Libs: -L${libdir} -lFLAC
+Libs.private: -lm
Cflags: -I${includedir}