libmicrohttpd2

HTTP server C library (MHD 2.x, alpha)
Log | Files | Refs | README | LICENSE

mhd_pkg_conf_mod_ver.m4 (2483B)


      1 # SPDX-License-Identifier: FSFAP
      2 #
      3 # SYNOPSIS
      4 #
      5 #   MHD_PKG_CONF_MODULE_VERSION(VARIABLE-PREFIX, [MODULE],
      6 #                               [ACTION-IF-DETECTED],
      7 #                               [ACTION-IF-NOT-DETECTED])
      8 #
      9 # DESCRIPTION
     10 #
     11 #   Set the variable [VARIABLE-PREFIX]_MOD_VERSION to the version of
     12 #   MODULE reported by pkg-config.
     13 #   MODULE may contain a version specification, e.g. modname >= 1.2.
     14 #   MODULE defaults to VARIABLE-PREFIX converted to lower case letters.
     15 #   If pkg-config is not available, MODULE is not found or the MODULE
     16 #   version cannot be detected for any other reason, then the macro does
     17 #   not assign the variable [VARIABLE-PREFIX]_MOD_VERSION and runs
     18 #   ACTION-IF-NOT-DETECTED; otherwise ACTION-IF-DETECTED is run.
     19 #   The detection result is cached.
     20 #
     21 #   Example usage:
     22 #
     23 #     MHD_PKG_CONF_MODULE_VERSION([GNUTLS],[],[],[GNUTLS_MOD_VERSION='0'])
     24 #
     25 # LICENSE
     26 #
     27 #   Copyright (c) 2026 Karlson2k (Evgeny Grin) <k2k@drgrin.dev>
     28 #
     29 #   Copying and distribution of this file, with or without modification, are
     30 #   permitted in any medium without royalty provided the copyright notice
     31 #   and this notice are preserved. This file is offered as-is, without any
     32 #   warranty.
     33 
     34 #serial 1
     35 
     36 AC_DEFUN([MHD_PKG_CONF_MODULE_VERSION],[dnl
     37 m4_ifblank([$1], [m4_fatal([$0: First macro argument must not be empty])])dnl
     38 m4_bmatch(m4_normalize([$1]), [\s],dnl
     39 [m4_fatal([$0: First macro argument must not contain whitespaces])])dnl
     40 m4_bmatch([$1],[,],[m4_fatal([$0: First macro argument must not contain comma])])dnl
     41 AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
     42 m4_newline([@%:@[ Expansion of $0 macro starts here]])
     43 m4_pushdef([mhd_MODULEID],[m4_default_nblank([$2],[m4_tolower(m4_normalize([$1]))])])
     44 AS_VAR_PUSHDEF([mhd_out_VAR],m4_normalize([$1])[_MOD_VERSION])dnl
     45 AS_VAR_PUSHDEF([mhd_cv_VAR],[mhd_cv_]m4_normalize([$1])[_pkg_mod_ver])dnl
     46 AC_CACHE_CHECK([for "mhd_MODULEID" pkg-config module version],[mhd_cv_VAR],
     47 [
     48 AS_IF([test -n "${PKG_CONFIG}"],
     49 [mhd_cv_VAR=`$PKG_CONFIG --modversion "mhd_MODULEID" 2>&AS_MESSAGE_LOG_FD` || mhd_cv_VAR="unknown"])
     50 dnl AS_IF test -n "${PKG_CONFIG}
     51 test -n "${mhd_cv_VAR}" || mhd_cv_VAR="unknown"
     52 ])
     53 dnl AC_CACHE_CHECK
     54 AS_VAR_IF([mhd_cv_VAR],["unknown"],
     55 [$4],[mhd_out_VAR="$mhd_cv_VAR"
     56 m4_n([$3])dnl
     57 ])
     58 dnl AS_VAR_IF mhd_cv_VAR "unknown"
     59 AS_VAR_POPDEF([mhd_cv_VAR])dnl
     60 AS_VAR_POPDEF([mhd_out_VAR])dnl
     61 m4_popdef([mhd_MODULEID])dnl
     62 m4_newline([@%:@[ Expansion of $0 macro ends here]])
     63 ])dnl AC_DEFUN([MHD_PKG_CONF_MODULE_VERSION