Macro: mp_with_curses

Back to the Main Page. | Download the M4 Source.

# mp_with_curses

## Synopsis

`MP_WITH_CURSES`

## Version

1.1.1.1 (2001/07/26) Installed_Packages @ ac-archive-0.5.32

## Author

Mark Pulford <mark@kyne.com.au>

## Description

Detect SysV compatible curses, such as ncurses.

Defines HAVE_CURSES_H or HAVE_NCURSES_H if curses is found. CURSES_LIB is also set with the required libary, but is not appended to LIBS automatically. If no working curses libary is found CURSES_LIB will be left blank.

This macro adds the option "--with-ncurses" to configure which can force the use of ncurses or nothing at all.

## M4 Source Code

    AC_DEFUN([MP_WITH_CURSES],
      [AC_ARG_WITH(ncurses, [  --with-ncurses          Force the use of ncurses over curses],,)
       mp_save_LIBS="$LIBS"
       CURSES_LIB=""
       if test "$with_ncurses" != yes
       then
         AC_CACHE_CHECK([for working curses], mp_cv_curses,
           [LIBS="$LIBS -lcurses"
            AC_TRY_LINK(
              [#include <curses.h>],
              [chtype a; int b=A_STANDOUT, c=KEY_LEFT; initscr(); ],
              mp_cv_curses=yes, mp_cv_curses=no)])
         if test "$mp_cv_curses" = yes
         then
           AC_DEFINE(HAVE_CURSES_H)
           CURSES_LIB="-lcurses"
         fi
       fi
       if test ! "$CURSES_LIB"
       then
         AC_CACHE_CHECK([for working ncurses], mp_cv_ncurses,
           [LIBS="$mp_save_LIBS -lncurses"
            AC_TRY_LINK(
              [#include <ncurses.h>],
              [chtype a; int b=A_STANDOUT, c=KEY_LEFT; initscr(); ],
              mp_cv_ncurses=yes, mp_cv_ncurses=no)])
         if test "$mp_cv_ncurses" = yes
         then
           AC_DEFINE(HAVE_NCURSES_H)
           CURSESLIB="-lncurses"
         fi
       fi
       LIBS="$mp_save_LIBS"
    ])dnl