Annotation of libaitrpc/configure.in, revision 1.39

1.1       misho       1: #
                      2: # $Author: misho $
1.39    ! misho       3: # $Id: configure.in,v 1.38.2.2 2024/03/20 16:24:14 misho Exp $
1.1       misho       4: #
1.39    ! misho       5: AC_INIT(libaitrpc, 9.5, misho@elwix.org)
1.1       misho       6: AC_CONFIG_SRCDIR([src/aitrpc.c])
                      7: AC_CONFIG_HEADERS([inc/config.h])
                      8: 
1.18      misho       9: ac_cv_func_malloc_0_nonnull="yes"
                     10: ac_cv_func_realloc_0_nonnull="yes"
                     11: 
1.1       misho      12: # Checks for programs.
                     13: AC_PROG_CC
                     14: AC_PROG_INSTALL
1.37      misho      15: AC_PROG_RANLIB
1.1       misho      16: 
                     17: AC_CANONICAL_HOST
                     18: AC_CANONICAL_TARGET
                     19: 
1.37      misho      20: AC_CHECK_TOOL(MKDEP, mkdep, ../mkdep)
1.1       misho      21: AC_SUBST(MKDEP)
                     22: 
1.29      misho      23: CFLAGS="-Wall -O2 -fPIC ${CFLAGS}"
                     24: LDFLAGS="${LDFLAGS}"
1.1       misho      25: 
                     26: # Checks for libraries.
1.16      misho      27: AC_CHECK_LIB([pthread], [pthread_create])
                     28: AC_CHECK_LIB([elwix], [array_Init])
1.7       misho      29: AC_CHECK_LIB([aitsched], [schedInit])
1.1       misho      30: 
                     31: # Checks for header files.
                     32: AC_CHECK_HEADERS([arpa/inet.h netdb.h netinet/in.h stdlib.h string.h sys/param.h sys/socket.h unistd.h])
                     33: 
                     34: # Checks for typedefs, structures, and compiler characteristics.
                     35: AC_C_INLINE
                     36: AC_TYPE_INT16_T
                     37: AC_TYPE_INT32_T
                     38: AC_TYPE_INT64_T
                     39: AC_TYPE_INT8_T
                     40: AC_TYPE_UINT16_T
                     41: AC_TYPE_UINT32_T
                     42: AC_TYPE_UINT64_T
                     43: AC_TYPE_UINT8_T
                     44: 
                     45: # Checks for library functions.
                     46: AC_FUNC_FORK
                     47: AC_FUNC_MALLOC
                     48: AC_FUNC_REALLOC
                     49: AC_CHECK_FUNCS([memset select socket strdup strerror])
1.2       misho      50: AC_CHECK_FUNCS([srandomdev])
1.1       misho      51: AC_CHECK_FUNCS([crcFletcher16 hash_fnv1])
1.4       misho      52: AC_CHECK_FUNCS([pthread_yield])
1.16      misho      53: AC_CHECK_FUNCS([array_Init array_Destroy])
1.7       misho      54: AC_CHECK_FUNCS([schedInit schedEnd])
1.1       misho      55: 
                     56: DEBUG=no
                     57: AC_MSG_CHECKING(Debug Build)
                     58: AC_ARG_ENABLE(debug,
                     59:        [  --enable-debug          Build library with debug information and additional messages],
                     60:        [ DEBUG=$enableval
                     61:                case "$enableval" in
                     62:                        yes)
                     63:                                AC_DEFINE(__DEBUG,, [Build libraries with debug information and additional messages])
                     64:                                CFLAGS="-g ${CFLAGS}"
                     65:                                ;;
                     66:                        *)
                     67:                                AC_DEFINE(NDEBUG,, [Build w/o assert() support])
                     68:                                ;;
                     69:                esac ],)
                     70: AC_MSG_RESULT($DEBUG)
                     71: 
1.35      misho      72: ONLY_CLI=no
                     73: AC_MSG_CHECKING(Build only RPC client)
                     74: AC_ARG_ENABLE(server, 
                     75:        [  --disable-server        Disable RPC server ], 
                     76:        [ if [[ "$enableval" = "no" ]]; then 
                     77:                ONLY_CLI="yes"
                     78:                AC_DEFINE(ONLY_CLI, 1, [ Disable RPC server ])
                     79:          else
                     80:                AC_DEFINE(ONLY_CLI, 0, [ Disable RPC server ])
                     81:          fi ], AC_DEFINE(ONLY_CLI, 0, [ Disable RPC server ]))
                     82: AC_MSG_RESULT($ONLY_CLI)
                     83: AC_SUBST(ONLY_CLI)
                     84: 
1.13      misho      85: CLI_RES_ZC=no
                     86: AC_MSG_CHECKING(Client zero-copy return variables)
                     87: AC_ARG_ENABLE(cli-res-zcpy, 
                     88:        [  --enable-cli-res-zcpy   Build library with zero-copy return array from RPC client ], 
                     89:        [ CLI_RES_ZC=$enableval
                     90:                case "$enableval" in
                     91:                        yes)
                     92:                                AC_DEFINE(CLI_RES_ZCOPY,, 
                     93:                                          [Build library with zero-copy return array from RPC client])
                     94:                                ;;
                     95:                        *)
                     96:                                ;;
                     97:                esac ],)
                     98: AC_MSG_RESULT($CLI_RES_ZC)
                     99: 
1.25      misho     100: TCP_SESSION_TIMEOUT=no
                    101: AC_MSG_CHECKING(RPC server can to do expiring for TCP sessions)
                    102: AC_ARG_ENABLE(tcp_sess_exp, 
                    103:        [  --enable-tcp_sess_exp   Build library with TCP session expiration], 
                    104:        [ TCP_SESSION_TIMEOUT=$enableval
                    105:                case "$enableval" in
                    106:                        yes)
                    107:                                AC_DEFINE(TCP_SESSION_TIMEOUT,, 
                    108:                                          [Build library with TCP session expiration])
                    109:                                ;;
                    110:                        *)
                    111:                                ;;
                    112:                esac ],)
                    113: AC_MSG_RESULT($TCP_SESSION_TIMEOUT)
                    114: 
                    115: DEF_RPC_TIMEOUT=60
                    116: AC_MSG_CHECKING(RPC server timeout period)
                    117: AC_ARG_WITH(timeout_period, 
1.35      misho     118:        [  --with-timeout_period=s Build library with RPC timeout period ], 
1.25      misho     119:        [ DEF_RPC_TIMEOUT=$withval ],)
1.35      misho     120: AC_DEFINE_UNQUOTED(DEF_RPC_TIMEOUT, $DEF_RPC_TIMEOUT, [Build library with RPC timeout period])
1.25      misho     121: AC_MSG_RESULT($DEF_RPC_TIMEOUT)
                    122: 
1.35      misho     123: DEF_RPC_BLOB_TIMEOUT=60
                    124: AC_MSG_CHECKING(RPC BLOB server timeout period)
                    125: AC_ARG_WITH(blob_timeout, 
                    126:        [  --with-blob_timeout=sec Build library with BLOB timeout period ], 
                    127:        [ DEF_RPC_BLOB_TIMEOUT=$withval ],)
                    128: AC_DEFINE_UNQUOTED(DEF_RPC_BLOB_TIMEOUT, $DEF_RPC_BLOB_TIMEOUT, [Build library with BLOB timeout period])
                    129: AC_MSG_RESULT($DEF_RPC_BLOB_TIMEOUT)
                    130: 
1.26      misho     131: 
1.1       misho     132: AC_CONFIG_FILES([Makefile
                    133:                  inc/Makefile
                    134:                  lib/Makefile
1.39    ! misho     135:                 debian/Makefile
1.1       misho     136:                  src/Makefile])
                    137: AC_OUTPUT

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>