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

📄 configure.in

📁 gdb-6.8 Linux下的调试程序 最新版本
💻 IN
字号:
dnl Process this file with autoconf to produce a configure script.AC_INIT(rlfe.c)AC_CONFIG_HEADER(config.h)VERSION=0.4AC_SUBST(VERSION)dnldnl Define some useful macrosdnlAC_DEFUN(AC_PROGRAM_SOURCE,[AC_REQUIRE([AC_PROG_CPP])AC_PROVIDE([$0])cat > conftest.c <<EOF#include "confdefs.h"[$1]_CUT_HERE_[$2]EOFeval "$ac_cpp conftest.c 2>&5 | sed -e '1,/_CUT_HERE_/d' -e 's/ //g' > conftest.out". ./conftest.outrm -f conftest*])dnldnldefine(AC_NOTE,[echo "$1" 1>&AC_FD_MSG])dnlold_CFLAGS="$CFLAGS"AC_PROG_CCAC_PROG_CPPAC_PROG_GCC_TRADITIONALAC_ISC_POSIXAC_TRY_RUN(main(){exit(0);},,[if test $CC != cc ; thenAC_NOTE(Your $CC failed - restarting with CC=cc)AC_NOTE()CC=ccexport CCexec $0 $configure_argsfi])AC_TRY_RUN(main(){exit(0);},,exec 5>&2eval $ac_linkAC_NOTE(CC=$CC; CFLAGS=$CFLAGS; LIBS=$LIBS;)AC_NOTE($ac_compile)AC_MSG_ERROR(Can't run the compiler - sorry))AC_TRY_RUN([main(){  int __something_strange_();  __something_strange_(0);}],AC_MSG_ERROR(Your compiler does not set the exit status - sorry))AC_PROG_AWKif test -f etc/toolcheck; thenAC_CHECKING(for buggy tools)sh etc/toolcheck 1>&AC_FD_MSGfidnldnl    ****  special unix variants  ****dnlAC_CHECKING(for System V)AC_TRY_COMPILE([#include <sys/types.h>#include <signal.h>#include <fcntl.h>], [int x = SIGCHLD | FNDELAY;], , AC_DEFINE(SYSV))AC_CHECKING(for Solaris 2.x)AC_EGREP_CPP(yes,[#if defined(SVR4) && defined(sun)  yes#endif], LIBS="$LIBS -lsocket -lnsl -lkstat")dnldnl    ****  select()  ****dnlAC_CHECKING(select)AC_TRY_LINK(,[select(0, 0, 0, 0, 0);],, LIBS="$LIBS -lnet -lnsl"AC_CHECKING(select with $LIBS)AC_TRY_LINK(,[select(0, 0, 0, 0, 0);],, AC_MSG_ERROR(!!! no select - no screen)))dnldnl    ****  check the select implementation ****dnlAC_CHECKING(select return value)AC_TRY_RUN([#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>char *nam = "/tmp/conftest$$";#ifdef NAMEDPIPE#ifndef O_NONBLOCK#define O_NONBLOCK O_NDELAY#endif#ifndef S_IFIFO#define S_IFIFO 0010000#endifmain(){#ifdef FD_SET  fd_set f;#else  int f;#endif#ifdef __FreeBSD__/* From Andrew A. Chernov (ache@astral.msk.su): * opening RDWR fifo fails in BSD 4.4, but select return values are * right. */  exit(0);#endif  (void)alarm(5);#ifdef POSIX  if (mkfifo(nam, 0777))#else  if (mknod(nam, S_IFIFO|0777, 0))#endif    exit(1);  close(0);  if (open(nam, O_RDWR | O_NONBLOCK))    exit(1);  if (write(0, "TEST", 4) == -1)    exit(1);#else#include <sys/types.h>#include <sys/socket.h>#include <sys/un.h>main(){  int s1, s2, l;  struct sockaddr_un a;#ifdef FD_SET  fd_set f;#else  int f;#endif  (void)alarm(5);  if ((s1 = socket(AF_UNIX, SOCK_STREAM, 0)) == -1)    exit(1);  a.sun_family = AF_UNIX;  strcpy(a.sun_path, nam);  (void) unlink(nam);  if (bind(s1, (struct sockaddr *) &a, strlen(nam)+2) == -1)    exit(1);  if (listen(s1, 2))    exit(1);  if (fork() == 0)    {      if ((s2 = socket(AF_UNIX, SOCK_STREAM, 0)) == -1)	kill(getppid(), 3);      (void)connect(s2, (struct sockaddr *)&a, strlen(nam) + 2);      if (write(s2, "HELLO", 5) == -1)	kill(getppid(), 3);      exit(0);    }  l = sizeof(a);  close(0);  if (accept(s1, (struct sockaddr *)&a, &l))    exit(1);#endif#ifdef FD_SET  FD_SET(0, &f);#else  f = 1;#endif  if (select(1, &f, 0, 0, 0) == -1)    exit(1);  if (select(1, &f, &f, 0, 0) != 2)    exit(1);  exit(0);}],AC_NOTE(- select is ok),AC_NOTE(- select can't count) AC_DEFINE(SELECT_BROKEN))dnldnl    ****  termcap or terminfo  ****dnlAC_CHECKING(for tgetent)AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,olibs="$LIBS"LIBS="-lcurses $olibs"AC_CHECKING(libcurses)AC_TRY_LINK(,[#ifdef __hpux__sorry_hpux_libcurses_is_totally_broken_in_10_10();#elsetgetent((char *)0, (char *)0);#endif],,LIBS="-ltermcap $olibs"AC_CHECKING(libtermcap)AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,LIBS="-ltermlib $olibs"AC_CHECKING(libtermlib)AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,LIBS="-lncurses $olibs"AC_CHECKING(libncurses)AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,AC_MSG_ERROR(!!! no tgetent - no screen))))))AC_TRY_RUN([main(){ exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1);}], AC_NOTE(- you use the termcap database),AC_NOTE(- you use the terminfo database) AC_DEFINE(TERMINFO))AC_CHECKING(ospeed)AC_TRY_LINK(extern short ospeed;,ospeed=5;,,AC_DEFINE(NEED_OSPEED))dnldnl    ****  PTY specific things  ****dnlAC_CHECKING(for /dev/ptc)if test -r /dev/ptc; thenAC_DEFINE(HAVE_DEV_PTC)fiAC_CHECKING(for SVR4 ptys)sysvr4ptys=if test -c /dev/ptmx ; thenAC_TRY_LINK([],[ptsname(0);grantpt(0);unlockpt(0);],[AC_DEFINE(HAVE_SVR4_PTYS)sysvr4ptys=1])fiAC_CHECK_FUNCS(getpt)dnl check for openpty()if test -z "$sysvr4ptys"; thenAC_CHECK_FUNCS(openpty,,[AC_CHECK_LIB(util,openpty, [AC_DEFINE(HAVE_OPENPTY)] [LIBS="$LIBS -lutil"])])fiAC_CHECKING(for ptyranges)if test -d /dev/ptym ; thenpdir='/dev/ptym'elsepdir='/dev'fidnl SCO uses ptyp%dAC_EGREP_CPP(yes,[#ifdef M_UNIX   yes;#endif], ptys=`echo /dev/ptyp??`, ptys=`echo $pdir/pty??`)dnl if test -c /dev/ptyp19; thendnl ptys=`echo /dev/ptyp??`dnl elsednl ptys=`echo $pdir/pty??`dnl fiif test "$ptys" != "$pdir/pty??" ; thenp0=`echo $ptys | tr ' ' '\012' | sed -e 's/^.*\(.\).$/\1/g' | sort -u | tr -d '\012'`p1=`echo $ptys | tr ' ' '\012' | sed -e 's/^.*\(.\)$/\1/g'  | sort -u | tr -d '\012'`AC_DEFINE_UNQUOTED(PTYRANGE0,"$p0")AC_DEFINE_UNQUOTED(PTYRANGE1,"$p1")fidnl    ****  pty mode/group handling ****dnldnl support provided by Luke Mewburn <lm@rmit.edu.au>, 931222AC_ARG_WITH(pty-mode, [  --with-pty-mode=mode    default mode for ptys], [ ptymode="${withval}" ])AC_ARG_WITH(pty-group, [  --with-pty-group=group  default group for ptys], [ ptygrp="${withval}" ])test -n "$ptymode" || ptymode=0620if test -n "$ptygrp" ; thenAC_DEFINE_UNQUOTED(PTYMODE, $ptymode)AC_DEFINE_UNQUOTED(PTYGROUP,$ptygrp)elseAC_CHECKING(default tty permissions/group)rm -f conftest_grpAC_TRY_RUN([#include <sys/types.h>#include <sys/stat.h>#include <stdio.h>main(){  struct stat sb;  char *x,*ttyname();  int om, m;  FILE *fp;  if (!(x = ttyname(0))) exit(1);  if (stat(x, &sb)) exit(1);  om = sb.st_mode;  if (om & 002) exit(0);  m = system("mesg y");  if (m == -1 || m == 127) exit(1);  if (stat(x, &sb)) exit(1);  m = sb.st_mode;  if (chmod(x, om)) exit(1);  if (m & 002) exit(0);  if (sb.st_gid == getgid()) exit(1);  if (!(fp=fopen("conftest_grp", "w")))    exit(1);  fprintf(fp, "%d\n", sb.st_gid);  fclose(fp);  exit(0);}],[    if test -f conftest_grp; then	ptygrp=`cat conftest_grp`	AC_NOTE([- pty mode: $ptymode, group: $ptygrp])	AC_DEFINE_UNQUOTED(PTYMODE, $ptymode)	AC_DEFINE_UNQUOTED(PTYGROUP,$ptygrp)    else	AC_NOTE(- ptys are world accessable)    fi],[    WRITEPATH=''    XTERMPATH=''    AC_PATH_PROG(WRITEPATH, write)    AC_PATH_PROG(XTERMPATH, xterm)    found=    if test -n "$WRITEPATH$XTERMPATH"; then      findfollow=      lsfollow=      found=`find $WRITEPATH $XTERMPATH -follow -print 2>/dev/null`      if test -n "$found"; then	findfollow=-follow	lsfollow=L      fi      if test -n "$XTERMPATH"; then	ptygrpn=`ls -l$lsfollow $XTERMPATH | sed -n -e 1p | $AWK '{print $4}'`	if test tty != "$ptygrpn"; then	  XTERMPATH=	fi      fi    fi    if test -n "$WRITEPATH$XTERMPATH"; then      found=`find $WRITEPATH $XTERMPATH $findfollow -perm -2000 -print`       if test -n "$found"; then	ptygrp=`ls -ln$lsfollow $found | sed -n -e 1p | $AWK '{print $4}'`	AC_NOTE([- pty mode: $ptymode, group: $ptygrp])	AC_DEFINE_UNQUOTED(PTYMODE, $ptymode)	AC_DEFINE_UNQUOTED(PTYGROUP,$ptygrp)      else	AC_NOTE(- ptys are world accessable)      fi    else      AC_NOTE(- can't determine - assume ptys are world accessable)    fi  ])rm -f conftest_grpfidnldnl    ****  signal handling  ****dnlif test -n "$posix" ; thendnl POSIX has reliable signals with void return type.AC_NOTE(assuming posix signal definition)AC_DEFINE(SIGVOID)elseAC_CHECKING(return type of signal handlers)AC_TRY_COMPILE([#include <sys/types.h>#include <signal.h>#ifdef signal#undef signal#endifextern void (*signal ()) ();], [int i;], AC_DEFINE(SIGVOID))AC_CHECKING(sigset)AC_TRY_LINK([#include <sys/types.h>#include <signal.h>],[#ifdef SIGVOIDsigset(0, (void (*)())0);#elsesigset(0, (int (*)())0);#endif], AC_DEFINE(USESIGSET))AC_CHECKING(signal implementation)AC_TRY_RUN([#include <sys/types.h>#include <signal.h>#ifndef SIGCLD#define SIGCLD SIGCHLD#endif#ifdef USESIGSET#define signal sigset#endifint got;#ifdef SIGVOIDvoid#endifhand(){  got++;}main(){  /* on hpux we use sigvec to get bsd signals */#ifdef __hpux  (void)signal(SIGCLD, hand);  kill(getpid(), SIGCLD);  kill(getpid(), SIGCLD);  if (got < 2)    exit(1);#endif  exit(0);}],,AC_DEFINE(SYSVSIGS))fiAC_OUTPUT(Makefile)

⌨️ 快捷键说明

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