--- /dev/null
+dnl Copyright © 2023 Nick Bowler
+dnl
+dnl License WTFPL2: Do What The Fuck You Want To Public License, version 2.
+dnl This is free software: you are free to do what the fuck you want to.
+dnl There is NO WARRANTY, to the extent permitted by law.
+
+dnl CHECK_XSLTPROC
+dnl
+dnl Check whether xsltproc can be run to compile the rarpd man page.
+dnl
+dnl If found, sets XSLTPROC and the cache variable dx_cv_xsltproc_works=yes
+AC_DEFUN([CHECK_XSLTPROC],
+[AC_CHECK_PROGS([XSLTPROC], [xsltproc], [not found])
+AS_IF([test x"$XSLTPROC" != x"not found"],
+ [AC_CACHE_CHECK([whether $XSLTPROC works], [dx_cv_xsltproc_works],
+[dx_cv_xsltproc_works=no
+cat >conftest.xsl <<'EOF'
+<?xml version='1.0' encoding='UTF-8' ?>
+<xsl:stylesheet version='1.0'
+ xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
+<xsl:import href="http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl"/>
+<xsl:output omit-xml-declaration='yes' />
+<xsl:template match='/'><xsl:text>hello</xsl:text></xsl:template>
+</xsl:stylesheet>
+EOF
+cat >conftest.xml <<'EOF'
+<?xml version='1.0' encoding='UTF-8' ?>
+<root />
+EOF
+$XSLTPROC --nonet conftest.xsl conftest.xml >conftest.out 2>&AS_MESSAGE_LOG_FD &&
+ { read var <conftest.out; test x"$var" = x"hello"; } &&
+ dx_cv_xsltproc_works=yes
+rm -f conftest.xsl conftest.xml conftest.out])])])