More configure foo fixes for .pc files.

This commit is contained in:
Behdad Esfahbod 2006-06-26 12:21:18 +02:00
parent 5ba974ea0b
commit 73a0e792b4
3 changed files with 18 additions and 9 deletions

View file

@ -154,9 +154,11 @@ AC_DEFUN([CAIRO_BACKEND_ENABLE],
AC_MSG_NOTICE([creating $outfile])
mkdir -p src
AS_IF([sed \
-e "s/@backend_name@/$1/g" \
-e "s/@Backend_Name@/$2/g" \
-e "s/@BACKEND_REQUIRES@/$$1_REQUIRES/g" \
-e "s,@backend_name@,$1,g" \
-e "s,@Backend_Name@,$2,g" \
-e "s,@BACKEND_REQUIRES@,$$1_REQUIRES,g" \
-e "s,@BACKEND_LIBS@,$$1_LIBS,g" \
-e "s,@BACKEND_CFLAGS@,$$1_CFLAGS,g" \
-e "s,@prefix@,$prefix,g" \
-e "s,@exec_prefix@,$exec_prefix,g" \
-e "s,@libdir@,$libdir,g" \
@ -179,12 +181,11 @@ CAIRO_LIBS=""
dnl ===========================================================================
CAIRO_BACKEND_ENABLE(xlib, Xlib, xlib, XLIB_SURFACE, auto, [
dnl Check for Xrender header files if the Xrender package is not installed:
AC_PATH_XTRA
if test "x$X_LIBS" = x; then
if test "x$X_CFLAGS$X_PRE_LIBS$X_LIBS$X_EXTRA_LIBS" = x; then
use_xlib="no (requires Xlib)"
else
xlib_LIBS="$X_PRE_LIBS $X_LIBS $X_EXTRA_LIBS"
xlib_LIBS="$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS"
xlib_CFLAGS=$X_CFLAGS
_CHECK_FUNCS_WITH_FLAGS(XrmFinalize, $xlib_CFLAGS, $xlib_LIBS)
fi
@ -193,6 +194,7 @@ CAIRO_BACKEND_ENABLE(xlib, Xlib, xlib, XLIB_SURFACE, auto, [
CAIRO_BACKEND_ENABLE(xlib_xrender, Xlib Xrender, xlib-xrender, XLIB_XRENDER_SURFACE, auto, [
use_xlib_xrender=$use_xlib
if test "x$use_xlib_xrender" = xyes; then
dnl Check for Xrender header files if the Xrender package is not installed:
xlib_xrender_REQUIRES="xrender >= 0.6"
PKG_CHECK_MODULES(xlib_xrender, $xlib_xrender_REQUIRES, ,
[xlib_xrender_REQUIRES=""

View file

@ -45,6 +45,11 @@ libcairo_xlib_sources = cairo-xlib-surface.c cairo-xlib-screen.c cairo-xlib-priv
backend_pkgconfigs += cairo-xlib.pc
endif
if CAIRO_HAS_XLIB_XRENDER_SURFACE
libcairo_xlib_xrender_headers = cairo-xlib-xrender.h
backend_pkgconfigs += cairo-xlib-xrender.pc
endif
if CAIRO_HAS_QUARTZ_SURFACE
libcairo_quartz_headers = cairo-quartz.h
libcairo_quartz_sources = cairo-quartz-surface.c cairo-quartz-private.h
@ -147,6 +152,7 @@ cairoinclude_HEADERS = \
$(libcairo_beos_headers) \
$(libcairo_xcb_headers) \
$(libcairo_xlib_headers) \
$(libcairo_xlib_xrender_headers) \
$(libcairo_directfb_headers)
lib_LTLIBRARIES = libcairo.la
@ -237,7 +243,8 @@ pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = cairo.pc $(backend_pkgconfigs)
DISTCLEANFILES = $(backend_pkgconfigs)
EXTRA_DIST = cairo-backend.pc.in
$(backend_pkgconfigs): $(top_srcdir)/configure
$(top_builddir)/config.status --recheck
$(top_builddir)/config.h: $(top_srcdir)/config.h.in
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) config.h

View file

@ -8,5 +8,5 @@ Description: @Backend_Name@ backend for cairo graphics library
Version: @VERSION@
Requires: cairo @BACKEND_REQUIRES@
Libs:
Cflags: -I${includedir}/cairo
Libs: @BACKEND_LIBS@
Cflags: -I${includedir}/cairo @BACKEND_CFLAGS@