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

📄 c.at

📁 autoconf是一个产生可以自动配置源代码包
💻 AT
字号:
#							-*- Autotest -*-AT_BANNER([C low level compiling/preprocessing macros.])# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software# Foundation, Inc.## This program is free software; you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation; either version 2, or (at your option)# any later version.## This program is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the# GNU General Public License for more details.## You should have received a copy of the GNU General Public License# along with this program; if not, write to the Free Software# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA# 02110-1301, USA.# Since the macros which compile are required by most tests, check# them first.  But remember that looking for a compiler is even more# primitive, so check those first.## ------------ #### Extensions.  #### ------------ ### As far as we know only `foo', `foo.exe' are possible executable,# and `foo.o', `foo.obj' are possible object files.  Autoconf must not# know that, but it is OK for the test suite to take this into account.AT_CHECK_MACRO([Extensions],[[AC_PROG_CCcase $ac_exeext in  '' | '.exe' ) ;;  * ) AC_MSG_ERROR([suspicious executable suffix: $ac_exeext]);;esaccase $ac_objext in  'o' | 'obj' ) ;;  * ) AC_MSG_ERROR([suspicious object suffix: $ac_objext]);;esac]])## -------------------------- #### Broken/missing compilers.  #### -------------------------- ### Check that Autoconf correctly diagnoses broken compilers, and in# particular, if it does not exit 77, the test suite is in trouble...# FIXME: Once a precise message decided, check stderr of configure.AT_SETUP([Broken/missing compilers])AT_DATA([configure.ac],[[AC_INITCC=no-such-compilerAC_PROG_CC]])AT_CHECK_AUTOCONFAT_CHECK_CONFIGURE([], 77, ignore, ignore)AT_CLEANUP## ------------ #### C keywords.  #### ------------ ### GCC supports `const', `typeof', and `volatile'.AT_CHECK_MACRO([C keywords],[[AC_PROG_CCAC_C_CONSTAC_C_TYPEOFAC_C_VOLATILEcase $GCC,$ac_cv_c_const,$ac_cv_c_typeof,$ac_cv_c_volatile in yes,*no*)   AC_MSG_ERROR([failed to detect `const', `typeof', or `volatile' support]);;esac]])## --------------------------------- #### AC_PROG_CPP requires AC_PROG_CC.  #### --------------------------------- ### Must invoke AC_PROG_CC.AT_CHECK_MACRO([AC_PROG_CPP requires AC_PROG_CC],[[AC_PROG_CPPtest -z "$CC" &&   AC_MSG_ERROR([looked for a C preprocessor without looking for a compiler])]])## --------------------------- #### AC_PROG_CPP with warnings.  #### --------------------------- ### It's Ok for strict preprocessors to produce warnings.AT_SETUP([AC_PROG_CPP with warnings])AT_DATA([mycpp],[[#! /bin/shecho noise >&2exec "$@"]])chmod +x mycpp_AT_CHECK_AC_MACRO([[AC_PROG_CPP# If the preprocessor is not strict, just ignoretest "x$ac_c_preproc_warn_flag" = xyes &&  AC_MSG_ERROR([preprocessor has no warning option], 77)CPP="./mycpp $CPP"AC_CHECK_HEADERS(stdio.h autoconf_io.h)]])AT_CHECK_DEFINES([/* #undef HAVE_AUTOCONF_IO_H */#define HAVE_STDIO_H 1])AT_CLEANUP## ------------------------------ #### AC_PROG_CPP without warnings.  #### ------------------------------ ##AT_SETUP([AC_PROG_CPP without warnings])# Ignore if /lib/cpp doesn't workAT_CHECK([echo '#include <stdio.h>' | /lib/cpp || exit 77],  [], [ignore], [ignore])# A cpp which exit status is meaningless.AT_DATA([mycpp],[[#! /bin/sh/lib/cpp "$@"exit 0]])chmod +x mycpp_AT_CHECK_AC_MACRO([[CPP=./mycppAC_PROG_CPPtest "x$ac_c_preproc_warn_flag" != xyes &&  AC_MSG_ERROR([failed to detect preprocessor warning option])AC_CHECK_HEADERS(stdio.h autoconf_io.h)]])AT_CHECK_DEFINES([/* #undef HAVE_AUTOCONF_IO_H */#define HAVE_STDIO_H 1])AT_CLEANUP## -------------------- #### AC_PROG_CPP via CC.  #### -------------------- ### It's Ok for strict preprocessors to produce warnings.AT_SETUP([AC_PROG_CPP via CC])# Ignore if /lib/cpp doesn't workAT_CHECK([echo '#include <stdio.h>' | /lib/cpp || exit 77],  [], [ignore], [ignore])AT_DATA([mycc],[[#! /bin/shecho "Annoying copyright message" >&2exec "$@"]])chmod +x mycc# We go through the following contortions, in order to have the# configure script go down the same codepaths as it would during a# normal CPP selection check.  If we explicitly set CPP, it goes down# a different codepath._AT_CHECK_AC_MACRO([[AC_PROG_CCCC="./mycc $CC"AC_PROG_CPP# The test $CC compiler should have been selected.test "$CPP" != "$CC -E" &&  AC_MSG_ERROR([error messages on stderr cause the preprocessor selection to fail])# Exercise CPP.AC_CHECK_HEADERS(stdio.h autoconf_io.h)]])AT_CHECK_DEFINES([/* #undef HAVE_AUTOCONF_IO_H */#define HAVE_STDIO_H 1])AT_CLEANUP

⌨️ 快捷键说明

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