# =========================================================================== # https://www.gnu.org/software/autoconf-archive/ax_open62541_check_lib.html # =========================================================================== # # SYNOPSIS # # AX_OPEN62541_CHECK_LIB([STATIC-FIRST = `no'], [ACTION-IF-FOUND], # [ACTION-IF-NOT-FOUND]) # # DESCRIPTION # # Searches for the library file of the open62541 library [1]. # # The open62541 library is a cmake-based project, that supplies both a # shared and a static library (with different names). The # AX_OPEN62541_CHECK_LIB macro can search for both and adds the first one # found to the LIBS Makefile variable. The search can be in either order # (shared first or static first), which is selectable on macro invocation # with the STATIC-FIRST parameter. The user can change this default by # invoking configure with either the --with-open62541-shared or # --with-open62541-static option (the named one is checked first). # # Either shared or static library can be excluded from checking completely # with the options --without-open62541-shared and # --without-open62541-static. # # If the with_open62541 shell variable is set to "no" (e.g. from running # the AX_OPEN62541_PATH macro and the user giving configure the option # "--without-open62541"), then expands ACTION-IF-NOT-FOUND without any # checks. The same is true if both --without-open62541-shared and # --without-open62541-static are given. # # [1]: # # LICENSE # # Copyright (c) 2016 Olaf Mandel # # Copying and distribution of this file, with or without modification, are # permitted in any medium without royalty provided the copyright notice # and this notice are preserved. This file is offered as-is, without any # warranty. #serial 2 # _AX_OPEN62541_CHECK_LIB_arg(THIS, OTHER) # ---------------------------------------- # Define the option --with-open62541-THIS, including checking that no # unknown argument is given or that both --with-open62541-THIS and # --with-open62541-OTHER are called. m4_define([_AX_OPEN62541_CHECK_LIB_arg], [AC_ARG_WITH([open62541-$1], [AS_HELP_STRING([--with-open62541-$1], [search for the $1 open62541 library first])], [], [])dnl AS_IF([test x${with_open62541_$1:+set} == xset]dnl [ -a "x$with_open62541_$1" != xno -a "x$with_open62541_$1" != xyes], [AC_MSG_FAILURE([--with-open62541-$1 does not take an argument])], [test x${with_open62541_$1:+set} == xset]dnl [ -a "x$with_open62541_$1" == xyes -a x${with_open62541_$2:+set} == xset]dnl [ -a "x$with_open62541_$2" == xyes], [AC_MSG_FAILURE([--with-open62541-$1 and --with-open62541-$2 are]dnl [ mutually exclusive])]) ])# _AX_OPEN62541_CHECK_LIB_arg # _AX_OPEN62541_CHECK_LIB_1(SHARED-STATIC, ACTION-IF-FOUND, # ACTION-IF-NOT-FOUND) # --------------------------------------------------------- # Checks for the desired library if not forbidden by # with_open62541_(shared|static) shell variables. m4_define([_AX_OPEN62541_CHECK_LIB_1], [m4_pushdef([lib], m4_if([$1], [shared], [open62541], [$1], [static], [open62541-static]))dnl AS_IF([test "x$with_open62541_$1" != xno], [AC_CHECK_LIB(m4_defn([lib]), [UA_Server_new], [$2], [$3])], [$3]) m4_popdef([lib])dnl ])# _AX_OPEN62541_CHECK_LIB_1 # AX_OPEN62541_CHECK_LIB([STATIC-FIRST], [ACTION-IF-FOUND], # [ACTION-IF-NOT-FOUND]) # --------------------------------------------------------- AC_DEFUN([AX_OPEN62541_CHECK_LIB], [m4_pushdef([staticfirst], m4_normalize([$1]))dnl m4_bmatch(m4_defn([staticfirst]), [^\([Nn][Oo]?\|0\)$], [m4_define([staticfirst], [])])dnl m4_pushdef([first], m4_ifblank(m4_defn([staticfirst]), [shared], [static]))dnl m4_pushdef([secnd], m4_ifblank(m4_defn([staticfirst]), [static], [shared]))dnl dnl _AX_OPEN62541_CHECK_LIB_arg([shared], [static])dnl _AX_OPEN62541_CHECK_LIB_arg([static], [shared])dnl AS_IF([test x${with_open62541:+set} == xset -a "x$with_open62541" == xno], [$3], [test "x$with_open62541_]m4_defn([secnd])[" != xyes], [_AX_OPEN62541_CHECK_LIB_1(m4_defn([first]), [$2], [_AX_OPEN62541_CHECK_LIB_1(m4_defn([secnd]), [$2], [$3])])], [_AX_OPEN62541_CHECK_LIB_1(m4_defn([secnd]), [$2], [_AX_OPEN62541_CHECK_LIB_1(m4_defn([first]), [$2], [$3])])])dnl m4_popdef([staticfirst], [first], [secnd])dnl ])# AX_OPEN62541_CHECK_LIB