31 lines
892 B
Diff
31 lines
892 B
Diff
|
diff --git a/acinclude.m4 b/acinclude.m4
|
||
|
index dd01f165..e23160ee 100644
|
||
|
--- a/acinclude.m4
|
||
|
+++ b/acinclude.m4
|
||
|
@@ -46,9 +46,21 @@ AC_DEFUN([JH_CHECK_XML_CATALOG],
|
||
|
ifelse([$3],,,[$3
|
||
|
])dnl
|
||
|
else
|
||
|
- AC_MSG_RESULT([not found])
|
||
|
- ifelse([$4],,
|
||
|
- [AC_MSG_ERROR([could not find ifelse([$2],,[$1],[$2]) in XML catalog])],
|
||
|
- [$4])
|
||
|
+ jh_check_xml_catalog_saved_ifs="$IFS"
|
||
|
+ IFS=' '
|
||
|
+ for f in $XML_CATALOG_FILES; do
|
||
|
+ if [[ -f "$f" ]] && \
|
||
|
+ AC_RUN_LOG([$XMLCATALOG --noout "$f" "$1" >&2]); then
|
||
|
+ jh_found_xmlcatalog=true
|
||
|
+ AC_MSG_RESULT([found])
|
||
|
+ ifelse([$3],,,[$3])
|
||
|
+ break
|
||
|
+ fi
|
||
|
+ done
|
||
|
+ IFS="$jh_check_xml_catalog_saved_ifs"
|
||
|
+ if ! $jh_found_xmlcatalog; then
|
||
|
+ AC_MSG_RESULT([not found])
|
||
|
+ ifelse([$4],,[AC_MSG_ERROR([could not find ifelse([$2],,[$1],[$2]) in XML catalog])],[$4])
|
||
|
+ fi
|
||
|
fi
|
||
|
])
|