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

📄 aclocal.m4

📁 ncurses 库 可能有用酒用 没用就算了 我觉得还可以用
💻 M4
📖 第 1 页 / 共 3 页
字号:
dnl $Id: aclocal.m4,v 1.8 2005/02/27 00:02:01 tom Exp $dnl ---------------------------------------------------------------------------dnl ---------------------------------------------------------------------------dnl CF_ADD_CFLAGS version: 7 updated: 2004/04/25 17:48:30dnl -------------dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGSdnl The second parameter if given makes this macro verbose.dnldnl Put any preprocessor definitions that use quoted strings in $EXTRA_CPPFLAGS,dnl to simplify use of $CPPFLAGS in compiler checks, etc., that are easilydnl confused by the quotes (which require backslashes to keep them usable).AC_DEFUN([CF_ADD_CFLAGS],[cf_fix_cppflags=nocf_new_cflags=cf_new_cppflags=cf_new_extra_cppflags=for cf_add_cflags in $1docase $cf_fix_cppflags inno)	case $cf_add_cflags in #(vi	-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi		case $cf_add_cflags in		-D*)			cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`			test "${cf_add_cflags}" != "${cf_tst_cflags}" \			&& test -z "${cf_tst_cflags}" \			&& cf_fix_cppflags=yes			if test $cf_fix_cppflags = yes ; then				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"				continue			elif test "${cf_tst_cflags}" = "\"'" ; then				cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"				continue			fi			;;		esac		case "$CPPFLAGS" in		*$cf_add_cflags) #(vi			;;		*) #(vi			cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"			;;		esac		;;	*)		cf_new_cflags="$cf_new_cflags $cf_add_cflags"		;;	esac	;;yes)	cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"	cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`	test "${cf_add_cflags}" != "${cf_tst_cflags}" \	&& test -z "${cf_tst_cflags}" \	&& cf_fix_cppflags=no	;;esacdoneif test -n "$cf_new_cflags" ; then	ifelse($2,,,[CF_VERBOSE(add to \$CFLAGS $cf_new_cflags)])	CFLAGS="$CFLAGS $cf_new_cflags"fiif test -n "$cf_new_cppflags" ; then	ifelse($2,,,[CF_VERBOSE(add to \$CPPFLAGS $cf_new_cppflags)])	CPPFLAGS="$cf_new_cppflags $CPPFLAGS"fiif test -n "$cf_new_extra_cppflags" ; then	ifelse($2,,,[CF_VERBOSE(add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags)])	EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"fiAC_SUBST(EXTRA_CPPFLAGS)])dnldnl ---------------------------------------------------------------------------dnl CF_ADD_INCDIR version: 4 updated: 2002/12/21 14:25:52dnl -------------dnl Add an include-directory to $CPPFLAGS.  Don't add /usr/include, since it'sdnl redundant.  We don't normally need to add -I/usr/local/include for gcc,dnl but old versions (and some misinstalled ones) need that.  To make thingsdnl worse, gcc 3.x gives error messages if -I/usr/local/include is added todnl the include-path).AC_DEFUN([CF_ADD_INCDIR],[for cf_add_incdir in $1do	while true	do		case $cf_add_incdir in		/usr/include) # (vi			;;		/usr/local/include) # (vi			if test "$GCC" = yes			then				cf_save_CPPFLAGS="$CPPFLAGS"				CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"				AC_TRY_COMPILE([#include <stdio.h>],						[printf("Hello")],						[],						[CPPFLAGS="$cf_save_CPPFLAGS"])			fi			;;		*) # (vi			CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"			;;		esac		cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`		test "$cf_top_incdir" = "$cf_add_incdir" && break		cf_add_incdir="$cf_top_incdir"	donedone])dnldnl ---------------------------------------------------------------------------dnl CF_ANSI_CC_CHECK version: 9 updated: 2001/12/30 17:53:34dnl ----------------dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES'dnl in the sharutils 4.2 distribution.AC_DEFUN([CF_ANSI_CC_CHECK],[AC_CACHE_CHECK(for ${CC-cc} option to accept ANSI C, cf_cv_ansi_cc,[cf_cv_ansi_cc=nocf_save_CFLAGS="$CFLAGS"cf_save_CPPFLAGS="$CPPFLAGS"# Don't try gcc -ansi; that turns off useful extensions and# breaks some systems' header files.# AIX			-qlanglvl=ansi# Ultrix and OSF/1	-std1# HP-UX			-Aa -D_HPUX_SOURCE# SVR4			-Xc# UnixWare 1.2		(cannot use -Xc, since ANSI/POSIX clashes)for cf_arg in "-DCC_HAS_PROTOS" \	"" \	-qlanglvl=ansi \	-std1 \	-Ae \	"-Aa -D_HPUX_SOURCE" \	-Xcdo	CF_ADD_CFLAGS($cf_arg)	AC_TRY_COMPILE([#ifndef CC_HAS_PROTOS#if !defined(__STDC__) || (__STDC__ != 1)choke me#endif#endif],[	int test (int i, double x);	struct s1 {int (*f) (int a);};	struct s2 {int (*f) (double a);};],	[cf_cv_ansi_cc="$cf_arg"; break])doneCFLAGS="$cf_save_CFLAGS"CPPFLAGS="$cf_save_CPPFLAGS"])if test "$cf_cv_ansi_cc" != "no"; thenif test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then	CF_ADD_CFLAGS($cf_cv_ansi_cc)else	AC_DEFINE(CC_HAS_PROTOS)fifi])dnldnl ---------------------------------------------------------------------------dnl CF_ANSI_CC_REQD version: 3 updated: 1997/09/06 13:40:44dnl ---------------dnl For programs that must use an ANSI compiler, obtain compiler options thatdnl will make it recognize prototypes.  We'll do preprocessor checks in otherdnl macros, since tools such as unproto can fake prototypes, but only part ofdnl the preprocessor.AC_DEFUN([CF_ANSI_CC_REQD],[AC_REQUIRE([CF_ANSI_CC_CHECK])if test "$cf_cv_ansi_cc" = "no"; then	AC_ERROR([Your compiler does not appear to recognize prototypes.You have the following choices:	a. adjust your compiler options	b. get an up-to-date compiler	c. use a wrapper such as unproto])fi])dnldnl ---------------------------------------------------------------------------dnl CF_CHECK_CACHE version: 10 updated: 2004/05/23 13:03:31dnl --------------dnl Check if we're accidentally using a cache from a different machine.dnl Derive the system name, as a check for reusing the autoconf cache.dnldnl If we've packaged config.guess and config.sub, run that (since it does adnl better job than uname).  Normally we'll use AC_CANONICAL_HOST, but allowdnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEMdnl which is useful in cross-compiles.dnldnl Note: we would use $ac_config_sub, but that is one of the places wherednl autoconf 2.5x broke compatibility with autoconf 2.13AC_DEFUN([CF_CHECK_CACHE],[if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then	ifelse([$1],,[AC_CANONICAL_HOST],[$1])	system_name="$host_os"else	system_name="`(uname -s -r) 2>/dev/null`"	if test -z "$system_name" ; then		system_name="`(hostname) 2>/dev/null`"	fifitest -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name")AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"])test -z "$system_name" && system_name="$cf_cv_system_name"test -n "$cf_cv_system_name" && AC_MSG_RESULT(Configuring for $cf_cv_system_name)if test ".$system_name" != ".$cf_cv_system_name" ; then	AC_MSG_RESULT(Cached system name ($system_name) does not agree with actual ($cf_cv_system_name))	AC_ERROR("Please remove config.cache and try again.")fi])dnldnl ---------------------------------------------------------------------------dnl CF_CURSES_ACS_MAP version: 3 updated: 2003/05/17 22:19:02dnl -----------------dnl Check for likely values of acs_map[]:AC_DEFUN([CF_CURSES_ACS_MAP],[AC_CACHE_CHECK(for alternate character set array, cf_cv_curses_acs_map,[cf_cv_curses_acs_map=unknownfor name in acs_map _acs_map __acs_map _nc_acs_mapdoAC_TRY_LINK([#include <${cf_cv_ncurses_header-curses.h}>],[$name['k'] = ACS_PLUS],[cf_cv_curses_acs_map=$name; break])done])test "$cf_cv_curses_acs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_ACS_ARRAY,$cf_cv_curses_acs_map)])dnl ---------------------------------------------------------------------------dnl CF_CURSES_CHECK_TYPE version: 2 updated: 2003/03/01 23:40:33dnl --------------------dnl Check if curses.h defines the given typeAC_DEFUN([CF_CURSES_CHECK_TYPE],[AC_MSG_CHECKING(for type $1 in ${cf_cv_ncurses_header-curses.h})AC_TRY_COMPILE([#ifndef _XOPEN_SOURCE_EXTENDED#define _XOPEN_SOURCE_EXTENDED#endif#include <${cf_cv_ncurses_header-curses.h}>],[$1 foo],cf_result=yes,cf_result=no)AC_MSG_RESULT($cf_result)if test $cf_result = yes ; then	CF_UPPER(cf_result,have_type_$1)	AC_DEFINE_UNQUOTED($cf_result)else	AC_DEFINE_UNQUOTED($1,$2)fi])dnldnl ---------------------------------------------------------------------------dnl CF_CURSES_CPPFLAGS version: 7 updated: 2003/06/06 00:48:41dnl ------------------dnl Look for the curses headers.AC_DEFUN([CF_CURSES_CPPFLAGS],[AC_CACHE_CHECK(for extra include directories,cf_cv_curses_incdir,[cf_cv_curses_incdir=nocase $host_os in #(vihpux10.*|hpux11.*) #(vi	test -d /usr/include/curses_colr && \	cf_cv_curses_incdir="-I/usr/include/curses_colr"	;;sunos3*|sunos4*)	test -d /usr/5lib && \	test -d /usr/5include && \	cf_cv_curses_incdir="-I/usr/5include"	;;esac])test "$cf_cv_curses_incdir" != no && CPPFLAGS="$cf_cv_curses_incdir $CPPFLAGS"AC_CACHE_CHECK(if we have identified curses headers,cf_cv_ncurses_header,[cf_cv_ncurses_header=nonefor cf_header in \	curses.h \	ncurses.h \	ncurses/curses.h \	ncurses/ncurses.hdoAC_TRY_COMPILE([#include <${cf_header}>],	[initscr(); tgoto("?", 0,0)],	[cf_cv_ncurses_header=$cf_header; break],[])done])if test "$cf_cv_ncurses_header" = none ; then	AC_MSG_ERROR(No curses header-files found)fi# cheat, to get the right #define's for HAVE_NCURSES_H, etc.AC_CHECK_HEADERS($cf_cv_ncurses_header)])dnldnl ---------------------------------------------------------------------------dnl CF_CURSES_LIBS version: 23 updated: 2003/11/06 19:59:57dnl --------------dnl Look for the curses libraries.  Older curses implementations may requirednl termcap/termlib to be linked as well.  Call CF_CURSES_CPPFLAGS first.AC_DEFUN([CF_CURSES_LIBS],[AC_REQUIRE([CF_CURSES_CPPFLAGS])dnlAC_MSG_CHECKING(if we have identified curses libraries)AC_TRY_LINK([#include <${cf_cv_ncurses_header-curses.h}>],	[initscr(); tgoto("?", 0,0)],	cf_result=yes,	cf_result=no)AC_MSG_RESULT($cf_result)if test "$cf_result" = no ; thencase $host_os in #(vifreebsd*) #(vi	AC_CHECK_LIB(mytinfo,tgoto,[LIBS="-lmytinfo $LIBS"])	;;hpux10.*|hpux11.*) #(vi	AC_CHECK_LIB(cur_colr,initscr,[		LIBS="-lcur_colr $LIBS"		ac_cv_func_initscr=yes		],[	AC_CHECK_LIB(Hcurses,initscr,[		# HP's header uses __HP_CURSES, but user claims _HP_CURSES.		LIBS="-lHcurses $LIBS"		CPPFLAGS="-D__HP_CURSES -D_HP_CURSES $CPPFLAGS"		ac_cv_func_initscr=yes		])])	;;linux*) # Suse Linux does not follow /usr/lib convention	LIBS="$LIBS -L/lib"	;;sunos3*|sunos4*)	test -d /usr/5lib && \	LIBS="$LIBS -L/usr/5lib -lcurses -ltermcap"	ac_cv_func_initscr=yes	;;esacif test ".$ac_cv_func_initscr" != .yes ; then	cf_save_LIBS="$LIBS"	cf_term_lib=""	cf_curs_lib=""	if test ".${cf_cv_ncurses_version-no}" != .no	then		cf_check_list="ncurses curses cursesX"	else		cf_check_list="cursesX curses ncurses"	fi	# Check for library containing tgoto.  Do this before curses library	# because it may be needed to link the test-case for initscr.	AC_CHECK_FUNC(tgoto,[cf_term_lib=predefined],[		for cf_term_lib in $cf_check_list termcap termlib unknown		do			AC_CHECK_LIB($cf_term_lib,tgoto,[break])		done	])	# Check for library containing initscr	test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"	for cf_curs_lib in $cf_check_list xcurses jcurses unknown	do		AC_CHECK_LIB($cf_curs_lib,initscr,[break])	done	test $cf_curs_lib = unknown && AC_ERROR(no curses library found)	LIBS="-l$cf_curs_lib $cf_save_LIBS"	if test "$cf_term_lib" = unknown ; then		AC_MSG_CHECKING(if we can link with $cf_curs_lib library)		AC_TRY_LINK([#include <${cf_cv_ncurses_header-curses.h}>],			[initscr()],			[cf_result=yes],			[cf_result=no])		AC_MSG_RESULT($cf_result)		test $cf_result = no && AC_ERROR(Cannot link curses library)	elif test "$cf_curs_lib" = "$cf_term_lib" ; then		:	elif test "$cf_term_lib" != predefined ; then		AC_MSG_CHECKING(if we need both $cf_curs_lib and $cf_term_lib libraries)

⌨️ 快捷键说明

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