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