1# From GLib.
2#
3# Checks the location of the XML Catalog
4# Usage:
5#   JH_PATH_XML_CATALOG([ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
6# Defines XMLCATALOG and XML_CATALOG_FILE substitutions
7AC_DEFUN([JH_PATH_XML_CATALOG],
8[
9  # check for the presence of the XML catalog
10  AC_ARG_WITH([xml-catalog],
11              AC_HELP_STRING([--with-xml-catalog=CATALOG],
12                             [path to xml catalog to use]),,
13              [with_xml_catalog=/etc/xml/catalog])
14  jh_found_xmlcatalog=true
15  XML_CATALOG_FILE="$with_xml_catalog"
16  AC_SUBST([XML_CATALOG_FILE])
17  AC_MSG_CHECKING([for XML catalog ($XML_CATALOG_FILE)])
18  if test -f "$XML_CATALOG_FILE"; then
19    AC_MSG_RESULT([found])
20  else
21    jh_found_xmlcatalog=false
22    AC_MSG_RESULT([not found])
23  fi
24
25  # check for the xmlcatalog program
26  AC_PATH_PROG(XMLCATALOG, xmlcatalog, no)
27  if test "x$XMLCATALOG" = xno; then
28    jh_found_xmlcatalog=false
29  fi
30
31  if $jh_found_xmlcatalog; then
32    ifelse([$1],,[:],[$1])
33  else
34    ifelse([$2],,[AC_MSG_ERROR([could not find XML catalog])],[$2])
35  fi
36])
37
38# From GLib.
39#
40# Checks if a particular URI appears in the XML catalog
41# Usage:
42#   JH_CHECK_XML_CATALOG(URI, [FRIENDLY-NAME], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
43AC_DEFUN([JH_CHECK_XML_CATALOG],
44[
45  AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl
46  AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog])
47  if $jh_found_xmlcatalog && \
48     AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then
49    AC_MSG_RESULT([found])
50    ifelse([$3],,,[$3
51])dnl
52  else
53    AC_MSG_RESULT([not found])
54    ifelse([$4],,
55       [AC_MSG_ERROR([could not find ifelse([$2],,[$1],[$2]) in XML catalog])],
56       [$4])
57  fi
58])
59
60# ===========================================================================
61#  https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
62# ===========================================================================
63#
64# SYNOPSIS
65#
66#   AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
67#
68# DESCRIPTION
69#
70#   Check whether the given FLAG works with the current language's compiler
71#   or gives an error.  (Warnings, however, are ignored)
72#
73#   ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
74#   success/failure.
75#
76#   If EXTRA-FLAGS is defined, it is added to the current language's default
77#   flags (e.g. CFLAGS) when the check is done.  The check is thus made with
78#   the flags: "CFLAGS EXTRA-FLAGS FLAG".  This can for example be used to
79#   force the compiler to issue an error when a bad flag is given.
80#
81#   INPUT gives an alternative input source to AC_COMPILE_IFELSE.
82#
83#   NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
84#   macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
85#
86# LICENSE
87#
88#   Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
89#   Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
90#
91#   Copying and distribution of this file, with or without modification, are
92#   permitted in any medium without royalty provided the copyright notice
93#   and this notice are preserved.  This file is offered as-is, without any
94#   warranty.
95
96AC_DEFUN([AX_CHECK_COMPILE_FLAG],
97[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
98AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
99AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
100  ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
101  _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
102  AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
103    [AS_VAR_SET(CACHEVAR,[yes])],
104    [AS_VAR_SET(CACHEVAR,[no])])
105  _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
106AS_VAR_IF(CACHEVAR,yes,
107  [m4_default([$2], :)],
108  [m4_default([$3], :)])
109AS_VAR_POPDEF([CACHEVAR])dnl
110])dnl AX_CHECK_COMPILE_FLAGS
111