Index: configure.in
===================================================================
--- configure.in	(revision 29910)
+++ configure.in	(working copy)
@@ -186,6 +186,7 @@
 LOC_ARG_WITH(blas, BLAS, no)
 LOC_ARG_WITH(lapack, LAPACK, no)
 LOC_ARG_WITH(motif, Motif, no)
+LOC_ARG_WITH(cairo, Cairo, no)
 LOC_ARG_WITH(freetype, FreeType, no)
 LOC_ARG_WITH(glw, GLw, no)
 LOC_ARG_WITH(nls, NLS, no)
@@ -1000,6 +1001,7 @@
 
 LOC_CHECK_INCLUDES(avcodec.h,FFMPEG,$FFMPEGINCPATH)
 LOC_CHECK_INCLUDES(avformat.h,FFMPEG,$FFMPEGINCPATH)
+LOC_CHECK_INCLUDES(swscale.h,FFMPEG,$FFMPEGINCPATH)
 
 AC_DEFINE(HAVE_FFMPEG)
 
@@ -1419,6 +1421,40 @@
 
 # Done checking Motif
 
+# Enable Cairo display driver option
+
+LOC_CHECK_USE(cairo,Cairo,USE_CAIRO)
+
+CAIROINC=
+CAIROLIB=
+
+if test -n "$USE_CAIRO"; then
+
+# With Cairo includes directory
+
+CAIROINC=`pkg-config --cflags cairo`
+
+LOC_CHECK_INCLUDES(cairo.h,Cairo,$CAIROINC)
+
+# With Cairo library directory
+
+CAIROLIB=`pkg-config --libs cairo`
+
+ac_save_ldflags="$LDFLAGS"
+LDFLAGS="$LDFLAGS $CAIROLIB"
+AC_CHECK_FUNC(cairo_create,,[
+AC_MSG_ERROR([*** Unable to locate cairo_create() function.])
+])
+LDFLAGS=${ac_save_ldflags}
+
+fi # $USE_CAIRO
+
+AC_SUBST(CAIROINC)
+AC_SUBST(CAIROLIB)
+AC_SUBST(USE_CAIRO)
+
+# Done checking Cairo
+
 # Enable GLw option
 
 LOC_CHECK_USE(glw,GLw,USE_GLW)
@@ -1699,5 +1735,6 @@
 LOC_MSG_USE(Tcl/Tk support,USE_TCLTK)
 LOC_MSG_USE(TIFF support,USE_TIFF)
 LOC_MSG_USE(X11 support,USE_X11)
+LOC_MSG_USE(Cairo support,USE_CAIRO)
 LOC_MSG_USE(MacOSX application,MACOSX_APP)
 LOC_MSG()
Index: include/Make/Platform.make.in
===================================================================
--- include/Make/Platform.make.in	(revision 29910)
+++ include/Make/Platform.make.in	(working copy)
@@ -203,6 +203,11 @@
 OPENDWGLIB          = @OPENDWGLIB@
 USE_OPENDWG         = @USE_OPENDWG@
 
+#cairo
+CAIROINC            = @CAIROINC@
+CAIROLIB            = @CAIROLIB@
+USE_CAIRO           = @USE_CAIRO@
+
 #Python
 PYVERSION           = @PYVERSION@
 USE_PYTHON          = @USE_PYTHON@
Index: lib/cairodriver/Makefile
===================================================================
--- lib/cairodriver/Makefile	(revision 29910)
+++ lib/cairodriver/Makefile	(working copy)
@@ -5,12 +5,9 @@
 PACKAGE ="libcairodriver"
 DEFS=-DPACKAGE=\"$(PACKAGE)\"
 
-CAIRO_CFLAGS:=$(shell pkg-config --cflags cairo)
-EXTRA_CFLAGS=-I../driver $(CAIRO_CFLAGS) $(PICFLAGS) $(DEFS)
+EXTRA_CFLAGS=-I../driver $(CAIROINC) $(PICFLAGS) $(DEFS)
+EXTRA_LIBS=$(DRIVERLIB) $(GISLIB) $(CAIROLIB)
 
-CAIRO_LIBS:=$(shell pkg-config --libs cairo)
-EXTRA_LIBS=$(DRIVERLIB) $(GISLIB) $(CAIRO_LIBS)
-
 # added constant to /include/Make/Grass.make.in
 LIB_NAME = $(CAIRODRIVER_LIBNAME)
 
Index: display/drivers/cairo/Makefile
===================================================================
--- display/drivers/cairo/Makefile	(revision 29910)
+++ display/drivers/cairo/Makefile	(working copy)
@@ -6,8 +6,7 @@
 include $(MODULE_TOPDIR)/include/Make/Grass.make
 include $(MODULE_TOPDIR)/include/Make/Rules.make
 
-CAIRO_CFLAGS = $(shell pkg-config --cflags cairo)
-EXTRA_CFLAGS = -I../../../lib/driver -I../../../lib/cairodriver $(CAIRO_CFLAGS)
+EXTRA_CFLAGS = -I../../../lib/driver -I../../../lib/cairodriver $(CAIROINC)
 
 OBJS = main.o
 

