diff --git a/Makefile.am b/Makefile.am
index 43b741a8..0fccf863 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -65,6 +65,7 @@ if ENABLE_SCANNER
wayland_scanner = $(top_builddir)/wayland-scanner
bin_PROGRAMS = wayland-scanner
wayland_scanner_SOURCES = src/scanner.c
+wayland_scanner_CFLAGS = $(EXPAT_CFLAGS) $(AM_CFLAGS)
wayland_scanner_LDADD = $(EXPAT_LIBS) libwayland-util.la
$(BUILT_SOURCES) : wayland-scanner
pkgconfig_DATA += src/wayland-scanner.pc
diff --git a/configure.ac b/configure.ac
index b0a959ae..6c3d611f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -84,17 +84,8 @@ AC_ARG_WITH(icondir, [ --with-icondir=
Look for cursor icons here],
[ ICONDIR=${datadir}/icons])
AC_SUBST([ICONDIR])
-EXPAT_LIB=""
-AC_ARG_WITH(expat, [ --with-expat= Use expat from here],
- [ expat=$withval
- CPPFLAGS="$CPPFLAGS -I$withval/include"
- LDFLAGS="$LDFLAGS -L$withval/lib" ] )
if test "x$enable_scanner" = "xyes"; then
- AC_CHECK_HEADERS(expat.h, [AC_DEFINE(HAVE_EXPAT_H)],
- [AC_MSG_ERROR([Can't find expat.h. Please install expat.])])
- AC_CHECK_LIB(expat, XML_ParserCreate, [EXPAT_LIBS="-lexpat"],
- [AC_MSG_ERROR([Can't find expat library. Please install expat.])])
- AC_SUBST(EXPAT_LIBS)
+ PKG_CHECK_MODULES(EXPAT, [expat])
fi
AC_PATH_PROG(XSLTPROC, xsltproc)