build fix: revert e38994ae72
'xft-config' is deprecated (http://lists.freedesktop.org/archives/xorg-devel/2010-March/006750.html) and does not exist anymore on 'bleeding edge' versions (gentoo). 'pkg-config' is the new way of doing things. 'pkg-config --libs xft' does only report the libs needed and the linker finds out other dependencies on its own. currently, 'pkg-config' (version 0.25) reports only '-lXft'. if the user wants for example LDFLAGS="-fuse-ld=gold --no-add-needed" then all the needed libs must be produced, otherwise linkage fails. at the moment it seems that fluxbox calls 'XftMatrixRotate()' and 'XftPatternAddMatrix()' which both seems to trigger the need for 'fontconfig': undefined reference to 'FcMatrixRotate' undefined reference to 'FcPatternAddMatrix' is 'pkg-config --libs xft' reporting to few libs? in comparison to 'xft-config --libs' for sure. bug? feature? i am not sure. there are several ways to address this issue: * append the needed libs manually via LIBS or LDFLAGS env LIBS="-lfontconfig" ./configure * change build-system of fluxbox to do something like pkg-config --print-requires-private 'xft' 2> /dev/null || echo xft)` (pkg-config version < 0.2x does not have --print-requires-private, which then leads to not print out all libs needed, which would then require a fallback to xft-config since an older system anyways, evidence is old pkg-config) * changing build-system of fluxbox to use something like: pkg-config --static --libs xft (which reports really all libs, even more than actually needed, check out http://osdir.com/ml/debian-bugs-closed/2011-01/msg01112.html) * fix 'pkg-config' (or the related xft.pc) to report '-lXft -lfontconfig' (not our code, but preferable) * use 'pkg-config --libs xft fontconfig' since we know that calling the xft functions requires linking against 'fontconfig' as well: pkg-config --libs xft fontconfig which is what we use to get rid of the build-errors
This commit is contained in:
parent
dd6014102a
commit
83f8f59569
1 changed files with 11 additions and 11 deletions
22
acinclude.m4
22
acinclude.m4
|
@ -170,24 +170,24 @@ AC_DEFUN([AM_PATH_XFT2],
|
|||
[
|
||||
if test x$pkg_exec_prefix != x ; then
|
||||
xft_args="$xft_args --exec-prefix=$pkg_exec_prefix"
|
||||
if test x${XFT_CONFIG+set} != xset ; then
|
||||
XFT_CONFIG=$pkg_exec_prefix/bin/xft-config
|
||||
if test x${PKG_CONFIG+set} != xset ; then
|
||||
PKG_CONFIG=$pkg_exec_prefix/bin/pkg-config
|
||||
fi
|
||||
fi
|
||||
|
||||
if test x$xft_prefix != x ; then
|
||||
xft_args="$xft_args --prefix=$xft_prefix"
|
||||
if test x${XFT_CONFIG+set} != xset ; then
|
||||
XFT_CONFIG=$xft_prefix/bin/xft-config
|
||||
fi
|
||||
xft_args="$xft_args --prefix=$xft_prefix"
|
||||
if test x${PKG_CONFIG+set} != xset ; then
|
||||
PKG_CONFIG=$xft_prefix/bin/pkg-config
|
||||
fi
|
||||
fi
|
||||
|
||||
AC_PATH_PROG(XFT_CONFIG, xft-config, no)
|
||||
if test "x$XFT_CONFIG" = "xno" ; then
|
||||
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
|
||||
if test "x$PKG_CONFIG" = "xno" ; then
|
||||
ifelse([$2], , :, [$2])
|
||||
else
|
||||
XFT_CFLAGS=`$XFT_CONFIG $xftconf_args --cflags`
|
||||
XFT_LIBS=`$XFT_CONFIG $xftconf_args --libs`
|
||||
else
|
||||
XFT_CFLAGS=`$PKG_CONFIG $xftconf_args --cflags xft fontconfig`
|
||||
XFT_LIBS=`$PKG_CONFIG $xftconf_args --libs xft fontconfig`
|
||||
ifelse([$1], , :, [$1])
|
||||
fi
|
||||
])
|
||||
|
|
Loading…
Reference in a new issue