⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 curses.m4

📁 gnome/gtk+编程宝典的源代码.
💻 M4
字号:
dnl Curses detection: Munged from Midnight Commander's configure.indnldnl What it does:dnl =============dnldnl - Determine which version of curses is installed on your systemdnl   and set the -I/-L/-l compiler entries and add a few preprocessordnl   symbols dnl - Do an AC_SUBST on the CURSES_INCLUDEDIR and CURSES_LIBS so thatdnl   @CURSES_INCLUDEDIR@ and @CURSES_LIBS@ will be available indnl   Makefile.in'sdnl - Modify the following configure variables (these are the onlydnl   curses.m4 variables you can access from within configure.in)dnl   CURSES_INCLUDEDIR - contains -I's and possibly -DRENAMED_CURSES ifdnl                       an ncurses.h that's been renamed to curses.hdnl                       is found.dnl   CURSES_LIBS       - sets -L and -l's appropriatelydnl   CFLAGS            - if --with-sco, add -D_SVID3 dnl   has_curses        - exports result of tests to rest of configurednldnl Usage:dnl ======dnl 1) Add lines indicated below to acconfig.hdnl 2) call AC_CHECK_CURSES after AC_PROG_CC in your configure.indnl 3) Instead of #include <curses.h> you should use the following todnl    properly locate ncurses or curses header filednldnl    #if defined(USE_NCURSES) && !defined(RENAMED_NCURSES)dnl    #include <ncurses.h>dnl    #elsednl    #include <curses.h>dnl    #endifdnldnl 4) Make sure to add @CURSES_INCLUDEDIR@ to your preprocessor flagsdnl 5) Make sure to add @CURSES_LIBS@ to your linker flags or LIBSdnldnl Notes with automake:dnl - call AM_CONDITIONAL(HAS_CURSES, test "$has_curses" = true) fromdnl   configure.indnl - your Makefile.am can look something like thisdnl   -----------------------------------------------dnl   INCLUDES= blah blah blah $(CURSES_INCLUDEDIR) dnl   if HAS_CURSESdnl   CURSES_TARGETS=name_of_curses_progdnl   endifdnl   bin_PROGRAMS = other_programs $(CURSES_TARGETS)dnl   other_programs_SOURCES = blah blah blahdnl   name_of_curses_prog_SOURCES = blah blah blahdnl   other_programs_LDADD = blahdnl   name_of_curses_prog_LDADD = blah $(CURSES_LIBS)dnl   -----------------------------------------------dnldnldnl The following lines should be added to acconfig.h:dnl ==================================================dnldnl /*=== Curses version detection defines ===*/dnl /* Found some version of curses that we're going to use */dnl #undef HAS_CURSESdnl    dnl /* Use SunOS SysV curses? */dnl #undef USE_SUNOS_CURSESdnl dnl /* Use old BSD curses - not used right now */dnl #undef USE_BSD_CURSESdnl dnl /* Use SystemV curses? */dnl #undef USE_SYSV_CURSESdnl dnl /* Use Ncurses? */dnl #undef USE_NCURSESdnl dnl /* If you Curses does not have color define this one */dnl #undef NO_COLOR_CURSESdnl dnl /* Define if you want to turn on SCO-specific code */dnl #undef SCO_FLAVORdnl dnl /* Set to reflect version of ncurses *dnl  *   0 = version 1.*dnl  *   1 = version 1.9.9gdnl  *   2 = version 4.0/4.1 */dnl #undef NCURSES_970530dnldnl /*=== End new stuff for acconfig.h ===*/dnl AC_DEFUN(AC_CHECK_CURSES,[	search_ncurses=true	screen_manager=""	has_curses=false	CFLAGS=${CFLAGS--O}	AC_SUBST(CURSES_LIBS)	AC_SUBST(CURSES_INCLUDEDIR)	AC_ARG_WITH(sco,	  [  --with-sco              Use this to turn on SCO-specific code],[	  if test x$withval = xyes; then		AC_DEFINE(SCO_FLAVOR)		CFLAGS="$CFLAGS -D_SVID3"	  fi	])	AC_ARG_WITH(sunos-curses,	  [  --with-sunos-curses     Used to force SunOS 4.x curses],[	  if test x$withval = xyes; then		AC_USE_SUNOS_CURSES	  fi	])	AC_ARG_WITH(osf1-curses,	  [  --with-osf1-curses      Used to force OSF/1 curses],[	  if test x$withval = xyes; then		AC_USE_OSF1_CURSES	  fi	])	AC_ARG_WITH(vcurses,	  [  --with-vcurses[=incdir] Used to force SysV curses],	  if test x$withval != xyes; then		CURSES_INCLUDEDIR="-I$withval"	  fi	  AC_USE_SYSV_CURSES	)	AC_ARG_WITH(ncurses,	  [  --with-ncurses[=dir]  Compile with ncurses/locate base dir],	  if test x$withval = xno ; then		search_ncurses=false	  elif test x$withval != xyes ; then		CURSES_LIBS="$LIBS -L$withval/lib -lncurses"		CURSES_INCLUDEDIR="-I$withval/include"		search_ncurses=false		screen_manager="ncurses"		AC_DEFINE(USE_NCURSES)		AC_DEFINE(HAS_CURSES)		has_curses=true	  fi	)	if $search_ncurses	then		AC_SEARCH_NCURSES()	fi])AC_DEFUN(AC_USE_SUNOS_CURSES, [	search_ncurses=false	screen_manager="SunOS 4.x /usr/5include curses"	AC_MSG_RESULT(Using SunOS 4.x /usr/5include curses)	AC_DEFINE(USE_SUNOS_CURSES)	AC_DEFINE(HAS_CURSES)	has_curses=true	AC_DEFINE(NO_COLOR_CURSES)	AC_DEFINE(USE_SYSV_CURSES)	CURSES_INCLUDEDIR="-I/usr/5include"	CURSES_LIBS="/usr/5lib/libcurses.a /usr/5lib/libtermcap.a"	AC_MSG_RESULT(Please note that some screen refreshs may fail)])AC_DEFUN(AC_USE_OSF1_CURSES, [       AC_MSG_RESULT(Using OSF1 curses)       search_ncurses=false       screen_manager="OSF1 curses"       AC_DEFINE(HAS_CURSES)       has_curses=true       AC_DEFINE(NO_COLOR_CURSES)       AC_DEFINE(USE_SYSV_CURSES)       CURSES_LIBS="-lcurses"])AC_DEFUN(AC_USE_SYSV_CURSES, [	AC_MSG_RESULT(Using SysV curses)	AC_DEFINE(HAS_CURSES)	has_curses=true	AC_DEFINE(USE_SYSV_CURSES)	search_ncurses=false	screen_manager="SysV/curses"	CURSES_LIBS="-lcurses"])dnl AC_ARG_WITH(bsd-curses,dnl [--with-bsd-curses         Used to compile with bsd curses, not very fancy],dnl 	search_ncurses=falsednl	screen_manager="Ultrix/cursesX"dnl	if test $system = ULTRIXdnl	thendnl	    THIS_CURSES=cursesXdnl        elsednl	    THIS_CURSES=cursesdnl	fidnldnl	CURSES_LIBS="-l$THIS_CURSES -ltermcap"dnl	AC_DEFINE(HAS_CURSES)dnl	has_curses=truednl	AC_DEFINE(USE_BSD_CURSES)dnl	AC_MSG_RESULT(Please note that some screen refreshs may fail)dnl	AC_WARN(Use of the bsdcurses extension has some)dnl	AC_WARN(display/input problems.)dnl	AC_WARN(Reconsider using xcurses)dnl)	dnldnl Parameters: directory filename cureses_LIBS curses_INCLUDEDIR nicenamednlAC_DEFUN(AC_NCURSES, [    if $search_ncurses    then        if test -f $1/$2	then	    AC_MSG_RESULT(Found ncurses on $1/$2) 	    CURSES_LIBS="$3"	    CURSES_INCLUDEDIR="$4"	    search_ncurses=false	    screen_manager=$5            AC_DEFINE(HAS_CURSES)            has_curses=true	    AC_DEFINE(USE_NCURSES)	fi    fi])AC_DEFUN(AC_SEARCH_NCURSES, [    AC_CHECKING("location of ncurses.h file")    AC_NCURSES(/usr/include, ncurses.h, -lncurses,, "ncurses on /usr/include")    AC_NCURSES(/usr/include/ncurses, ncurses.h, -lncurses, -I/usr/include/ncurses, "ncurses on /usr/include/ncurses")    AC_NCURSES(/usr/local/include, ncurses.h, -L/usr/local/lib -lncurses, -I/usr/local/include, "ncurses on /usr/local")    AC_NCURSES(/usr/local/include/ncurses, ncurses.h, -L/usr/local/lib -L/usr/local/lib/ncurses -lncurses, -I/usr/local/include/ncurses, "ncurses on /usr/local/include/ncurses")    AC_NCURSES(/usr/local/include/ncurses, curses.h, -L/usr/local/lib -lncurses, -I/usr/local/include/ncurses -DRENAMED_NCURSES, "renamed ncurses on /usr/local/.../ncurses")    AC_NCURSES(/usr/include/ncurses, curses.h, -lncurses, -I/usr/include/ncurses -DRENAMED_NCURSES, "renamed ncurses on /usr/include/ncurses")    dnl    dnl We couldn't find ncurses, try SysV curses    dnl    if $search_ncurses     then        AC_EGREP_HEADER(init_color, /usr/include/curses.h,	    AC_USE_SYSV_CURSES)	AC_EGREP_CPP(USE_NCURSES,[#include <curses.h>#ifdef __NCURSES_H#undef USE_NCURSESUSE_NCURSES#endif],[	CURSES_INCLUDEDIR="$CURSES_INCLUDEDIR -DRENAMED_NCURSES"        AC_DEFINE(HAS_CURSES)	has_curses=true        AC_DEFINE(USE_NCURSES)        search_ncurses=false        screen_manager="ncurses installed as curses"])    fi    dnl    dnl Try SunOS 4.x /usr/5{lib,include} ncurses    dnl The flags USE_SUNOS_CURSES, USE_BSD_CURSES and BUGGY_CURSES    dnl should be replaced by a more fine grained selection routine    dnl    if $search_ncurses    then	if test -f /usr/5include/curses.h	then	    AC_USE_SUNOS_CURSES        fi    else        # check for ncurses version, to properly ifdef mouse-fix	AC_MSG_CHECKING(for ncurses version)	ncurses_version=unknowncat > conftest.$ac_ext <<EOF[#]line __oline__ "configure"#include "confdefs.h"#ifdef RENAMED_NCURSES#include <curses.h>#else#include <ncurses.h>#endif#undef VERSIONVERSION:NCURSES_VERSIONEOF        if (eval "$ac_cpp conftest.$ac_ext") 2>&AC_FD_CC |  egrep "VERSION:" >conftest.out 2>&1; thenchangequote(,)dnl            ncurses_version=`cat conftest.out|sed -e 's/^[^"]*"//' -e 's/".*//'`changequote([,])dnl	fi	rm -rf conftest*        AC_MSG_RESULT($ncurses_version)	case "$ncurses_version" inchangequote(,)dnl	4.[01])changequote([,])dnl            AC_DEFINE(NCURSES_970530,2)            ;;	1.9.9g)            AC_DEFINE(NCURSES_970530,1)            ;;	1*)            AC_DEFINE(NCURSES_970530,0)            ;;	esac    fi])

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -