diff options
| author | Albrecht Schlosser <albrechts.fltk@online.de> | 2021-02-17 11:27:28 +0100 |
|---|---|---|
| committer | Albrecht Schlosser <albrechts.fltk@online.de> | 2021-02-17 11:28:31 +0100 |
| commit | ba0b8affe33ba386ec280b4e10b201679031e44b (patch) | |
| tree | 3fc01cc017a0720e3268503a0eb09569b6a13f2d /configure.ac | |
| parent | b3f0b853a50851c22824e7969463304abedb700f (diff) | |
Rewrite Pango checks for autoconf/configure
- disable "fallback mode" (don't use hardcoded flags and libs)
- use pkg-config for pango flags and libs but don't *require* it [1]
- enable CXXFLAGS and LDFLAGS usage for --enable-pango
[1] if pkg-config is not available (installed) you can still use
environment variables CFLAGS, CXXFLAGS, and LDFLAGS to enable Pango.
Diffstat (limited to 'configure.ac')
| -rw-r--r-- | configure.ac | 51 |
1 files changed, 20 insertions, 31 deletions
diff --git a/configure.ac b/configure.ac index 85a9686f8..af4e6bd66 100644 --- a/configure.ac +++ b/configure.ac @@ -61,6 +61,7 @@ CPPFLAGS="${CPPFLAGS:=}" CXXFLAGS="${CXXFLAGS:=}" DSOFLAGS="${DSOFLAGS:=}" LDFLAGS="${LDFLAGS:=}" +LIBS="${LDFLAGS:=}" dnl Find common commands... @@ -1093,42 +1094,30 @@ AS_CASE([$host_os_gui], [cygwin* | mingw*], [ pango_found=no AS_IF([test x$enable_pango = xyes], [ AS_IF([test x$PKGCONFIG != x], [ - CXXFLAGS="$($PKGCONFIG --cflags pangoxft) $CXXFLAGS" - LIBS="$($PKGCONFIG --libs pangoxft) $LIBS" - CXXFLAGS="$($PKGCONFIG --cflags pangocairo) $CXXFLAGS" - LIBS="$($PKGCONFIG --libs pangocairo) $LIBS" - - AS_CASE([$host_os], [darwin*], [ - dnl make sure LDFLAGS is appropriate for cairo (and Pango) - LDFLAGS="$($PKGCONFIG --libs cairo) $LDFLAGS" - ]) - - AS_CASE([$host_os], [linux*], [ - CXXFLAGS="-I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include $CXXFLAGS" - CXXFLAGS="-I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/lib/x86_64-linux-gnu/glib-2.0/include $CXXFLAGS" - ], [freebsd*], [ - CXXFLAGS="-I/usr/local/include/pango-1.0 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include $CXXFLAGS" - ], [netbsd*], [ - CXXFLAGS="-I/usr/pkg/include/pango-1.0 -I/usr/pkg/include/glib-2.0 -I/usr/pkg/lib/glib-2.0/include $CXXFLAGS" - CXXFLAGS="-I/usr/pkg/include/glib/glib-2.0 $CXXFLAGS" - PANGOLIBDIR="-L/usr/pkg/lib" - LDFLAGS="-Wl,-rpath,/usr/pkg/lib $LDFLAGS" - ]) - - LIBS="$PANGOLIBDIR -lpango-1.0 -lpangoxft-1.0 -lgobject-2.0 $LIBS" + dnl pkg-config is available, use it... + dnl AC_MSG_NOTICE([--enable-pango: using pkg-config ...]) + CXXFLAGS="$($PKGCONFIG --cflags pangoxft pangocairo) $CXXFLAGS" + LIBS="$($PKGCONFIG --libs pangoxft pangocairo) $LIBS" + ], [ + dnl pkg-config is not available, issue warning and continue... + AC_MSG_WARN([--enable-pango: please install pkg-config. Continuing anyway.]) + ]) - CPPFLAGS="$CXXFLAGS" - AC_CHECK_HEADERS([pango/pango.h pango/pangoxft.h], [ - AC_CHECK_LIB([pango-1.0], [pango_layout_new], [ - AC_CHECK_LIB([pangoxft-1.0], [pango_xft_render_layout], [ - AC_DEFINE([USE_PANGO]) - pango_found=yes - ]) + CPPFLAGS="$CXXFLAGS" + AC_CHECK_HEADERS([pango/pango.h pango/pangoxft.h], [ + AC_CHECK_LIB([pango-1.0], [pango_layout_new], [ + AC_CHECK_LIB([pangoxft-1.0], [pango_xft_render_layout], [ + AC_DEFINE([USE_PANGO]) + pango_found=yes ]) ]) ]) - CPPFLAGS="$CXXFLAGS" + dnl Early abort if --enable-pango was requested but Pango could not be found + AS_IF([test x$pango_found != xyes], [ + AC_MSG_NOTICE([--enable-pango: Pango libs and/or headers could not be found.]) + AC_MSG_ERROR([Aborting.]) + ]) ]) dnl Check for the Xdbe extension unless disabled... |
