Annotation of embedaddon/ntp/m4/ntp_lineeditlibs.m4, revision 1.1

1.1     ! misho       1: AC_DEFUN([NTP_LINEEDITLIBS], [
        !             2:     NTP_ORIG_LIBS="$LIBS"
        !             3:     AC_ARG_WITH(
        !             4:        [lineeditlibs],
        !             5:        [AS_HELP_STRING(
        !             6:            [--with-lineeditlibs],
        !             7:            [edit,editline (readline may be specified if desired)]
        !             8:        )],
        !             9:        [use_lineeditlibs="$withval"],
        !            10:        [use_lineeditlibs="edit,editline"]
        !            11:     )
        !            12:     AC_MSG_CHECKING([line editing libraries])
        !            13:     AC_MSG_RESULT([$use_lineeditlibs])
        !            14:     case "$use_lineeditlibs" in
        !            15:      no) 
        !            16:        ntp_lib_lineedit=no
        !            17:        ;;
        !            18:      *)
        !            19:        for lineedit_lib in `echo $use_lineeditlibs | sed -e 's/,/ /'`; do
        !            20:            for term_lib in "" termcap curses ncurses; do
        !            21:                case "$term_lib" in
        !            22:                 '') 
        !            23:                    TRY_LIB="-l$lineedit_lib"
        !            24:                    ;;
        !            25:                 *)
        !            26:                    TRY_LIB="-l$lineedit_lib -l$term_lib"
        !            27:                    ;;
        !            28:                esac
        !            29:                LIBS="$NTP_ORIG_LIBS $TRY_LIB"
        !            30:                AC_MSG_CHECKING([for readline() with $TRY_LIB])
        !            31:                AC_TRY_LINK_FUNC([readline], [ntp_lib_lineedit="$TRY_LIB"])
        !            32:                case "$ntp_lib_lineedit" in
        !            33:                 '')
        !            34:                    AC_MSG_RESULT([no])
        !            35:                    ;;
        !            36:                 *) 
        !            37:                    # Use readline()
        !            38:                    AC_MSG_RESULT([yes])
        !            39:                    break
        !            40:                esac
        !            41:                case "$term_lib" in
        !            42:                 '')
        !            43:                    # do not try el_gets without a terminal library
        !            44:                    ;;
        !            45:                 *)
        !            46:                    AC_MSG_CHECKING([for el_gets() with $TRY_LIB])
        !            47:                    AC_TRY_LINK_FUNC([el_gets], [ntp_lib_lineedit="$TRY_LIB"])
        !            48:                    case "$ntp_lib_lineedit" in
        !            49:                     '')
        !            50:                        AC_MSG_RESULT([no])
        !            51:                        ;;
        !            52:                     *) # Use el_gets()
        !            53:                        AC_MSG_RESULT([yes])
        !            54:                        break
        !            55:                        ;;
        !            56:                    esac        # $ntp_lib_lineedit
        !            57:                esac            # $term_lib
        !            58:            done
        !            59:            case "$ntp_lib_lineedit" in
        !            60:             '')
        !            61:                ;;
        !            62:             *)
        !            63:                break
        !            64:                ;;
        !            65:            esac
        !            66:        done
        !            67:        LIBS="$NTP_ORIG_LIBS"
        !            68:        ;;
        !            69:     esac       # $use_lineeditlibs
        !            70: 
        !            71:     case "$ntp_lib_lineedit" in
        !            72:      '')
        !            73:        ntp_lib_lineedit="no"
        !            74:        ;;
        !            75:      no)
        !            76:        ;;
        !            77:      *)
        !            78:        EDITLINE_LIBS="$ntp_lib_lineedit"
        !            79:        AC_SUBST([EDITLINE_LIBS])
        !            80:        ;;
        !            81:     esac       # $ntp_lib_lineedit
        !            82: 
        !            83:     case "$ntp_lib_lineedit" in
        !            84:      no)
        !            85:        ;;
        !            86:      *)
        !            87:        AC_CHECK_HEADERS([readline.h readline/readline.h histedit.h])
        !            88:        AC_CHECK_HEADERS([history.h readline/history.h])
        !            89: 
        !            90:        case "$ac_cv_header_histedit_h" in
        !            91:         yes)
        !            92:            AC_CACHE_CHECK(
        !            93:                [number of arguments to el_init()],
        !            94:                [ntp_cv_el_init_args],
        !            95:                [AC_COMPILE_IFELSE(
        !            96:                    [AC_LANG_PROGRAM(
        !            97:                        [[
        !            98:                            #include <stdio.h>
        !            99:                            #include <histedit.h>
        !           100:                        ]],
        !           101:                        [[
        !           102:                            el_init("conftest", stdin, stdout, stderr);
        !           103:                        ]]
        !           104:                    )],
        !           105:                    [ntp_cv_el_init_args=4],
        !           106:                    [ntp_cv_el_init_args=3]
        !           107:                )]
        !           108:            )
        !           109:            AC_DEFINE_UNQUOTED(
        !           110:                [EL_INIT_ARGS], 
        !           111:                [$ntp_cv_el_init_args],
        !           112:                [number of args to el_init()]
        !           113:                )
        !           114:        esac
        !           115:        
        !           116:        AC_MSG_CHECKING([whether readline supports history])
        !           117:        
        !           118:        ntp_lib_lineedit_history="no"
        !           119:        ORIG_LIBS="$LIBS"
        !           120:        LIBS="$ORIG_LIBS $ntp_lib_lineedit"
        !           121:        AC_TRY_LINK_FUNC([add_history], [ntp_lib_lineedit_history="yes"])
        !           122:        LIBS="$ORIG_LIBS"
        !           123: 
        !           124:        AC_MSG_RESULT([$ntp_lib_lineedit_history])
        !           125: 
        !           126:        case "$ntp_lib_lineedit_history" in
        !           127:         yes)
        !           128:            AC_DEFINE([HAVE_READLINE_HISTORY], [1],
        !           129:                [Define if your readline library has \`add_history'])
        !           130:        esac
        !           131:     esac       # $ntp_lib_lineedit
        !           132:     AS_UNSET([NTP_ORIG_LIBS])
        !           133:     AS_UNSET([ORIG_LIBS])
        !           134:     AS_UNSET([TRY_LIB])
        !           135:     AS_UNSET([use_lineeditlibs])
        !           136: ])dnl

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