📄 configure
字号:
#endifextern void wow(char *,...) GCC_SCANFLIKE(1,2);extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;extern void foo(void) GCC_NORETURN;int main(int argc GCC_UNUSED, char *argv[] GCC_UNUSED) { return 0; }EOF for cf_attribute in scanf printf unused noreturn do CF_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` cf_directive="__attribute__(($cf_attribute))" echo "checking for $CC $cf_directive" 1>&5 case $cf_attribute in scanf|printf) cat >conftest.h <<EOF#define GCC_$CF_ATTRIBUTE 1EOF ;; *) cat >conftest.h <<EOF#define GCC_$CF_ATTRIBUTE $cf_directiveEOF ;; esac if { (eval echo configure:1883: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then test -n "$verbose" && echo "$ac_t""... $cf_attribute" 1>&6 cat conftest.h >>confdefs.h fi doneelse fgrep define conftest.i >>confdefs.hfirm -rf conftest*fi if test "$GCC" = yesthen cat > conftest.$ac_ext <<EOF#line 1899 "configure"int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }EOF echo "checking for $CC warning options" 1>&6echo "configure:1903: checking for $CC warning options" >&5 cf_save_CFLAGS="$CFLAGS" EXTRA_CFLAGS="-W -Wall" cf_warn_CONST="" test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings" for cf_opt in \ Wbad-function-cast \ Wcast-align \ Wcast-qual \ Winline \ Wmissing-declarations \ Wmissing-prototypes \ Wnested-externs \ Wpointer-arith \ Wshadow \ Wstrict-prototypes \ Wundef $cf_warn_CONST do CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" if { (eval echo configure:1922: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then test -n "$verbose" && echo "$ac_t""... -$cf_opt" 1>&6 case $cf_opt in #(vi Wcast-qual) #(vi CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES" ;; Winline) #(vi case $GCC_VERSION in 3.3*) test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6 continue;; esac ;; esac EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt" fi done rm -f conftest* CFLAGS="$cf_save_CFLAGS"fifiecho $ac_n "checking for ANSI C header files""... $ac_c" 1>&6echo "configure:1950: checking for ANSI C header files" >&5if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6else cat > conftest.$ac_ext <<EOF#line 1955 "configure"#include "confdefs.h"#include <stdlib.h>#include <stdarg.h>#include <string.h>#include <float.h>EOFac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"{ (eval echo configure:1963: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`if test -z "$ac_err"; then rm -rf conftest* ac_cv_header_stdc=yeselse echo "$ac_err" >&5 echo "configure: failed program was:" >&5 cat conftest.$ac_ext >&5 rm -rf conftest* ac_cv_header_stdc=nofirm -f conftest*if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI.cat > conftest.$ac_ext <<EOF#line 1980 "configure"#include "confdefs.h"#include <string.h>EOFif (eval "$ac_cpp conftest.$ac_ext") 2>&5 | egrep "memchr" >/dev/null 2>&1; then :else rm -rf conftest* ac_cv_header_stdc=nofirm -f conftest*fiif test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.cat > conftest.$ac_ext <<EOF#line 1998 "configure"#include "confdefs.h"#include <stdlib.h>EOFif (eval "$ac_cpp conftest.$ac_ext") 2>&5 | egrep "free" >/dev/null 2>&1; then :else rm -rf conftest* ac_cv_header_stdc=nofirm -f conftest*fiif test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.if test "$cross_compiling" = yes; then :else cat > conftest.$ac_ext <<EOF#line 2019 "configure"#include "confdefs.h"#include <ctype.h>#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))int main () { int i; for (i = 0; i < 256; i++)if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);exit (0); }EOFif { (eval echo configure:2030: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/nullthen :else echo "configure: failed program was:" >&5 cat conftest.$ac_ext >&5 rm -fr conftest* ac_cv_header_stdc=nofirm -fr conftest*fififiecho "$ac_t""$ac_cv_header_stdc" 1>&6if test $ac_cv_header_stdc = yes; then cat >> confdefs.h <<\EOF#define STDC_HEADERS 1EOFfiecho $ac_n "checking for inline""... $ac_c" 1>&6echo "configure:2054: checking for inline" >&5if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6else ac_cv_c_inline=nofor ac_kw in inline __inline__ __inline; do cat > conftest.$ac_ext <<EOF#line 2061 "configure"#include "confdefs.h"int main() {} $ac_kw foo() {; return 0; }EOFif { (eval echo configure:2068: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_inline=$ac_kw; breakelse echo "configure: failed program was:" >&5 cat conftest.$ac_ext >&5firm -f conftest*donefiecho "$ac_t""$ac_cv_c_inline" 1>&6case "$ac_cv_c_inline" in inline | yes) ;; no) cat >> confdefs.h <<\EOF#define inline EOF ;; *) cat >> confdefs.h <<EOF#define inline $ac_cv_c_inlineEOF ;;esacecho $ac_n "checking for off_t""... $ac_c" 1>&6echo "configure:2094: checking for off_t" >&5if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6else cat > conftest.$ac_ext <<EOF#line 2099 "configure"#include "confdefs.h"#include <sys/types.h>#if STDC_HEADERS#include <stdlib.h>#include <stddef.h>#endifEOFif (eval "$ac_cpp conftest.$ac_ext") 2>&5 | egrep "(^|[^a-zA-Z_0-9])off_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then rm -rf conftest* ac_cv_type_off_t=yeselse rm -rf conftest* ac_cv_type_off_t=nofirm -f conftest*fiecho "$ac_t""$ac_cv_type_off_t" 1>&6if test $ac_cv_type_off_t = no; then cat >> confdefs.h <<\EOF#define off_t longEOFfiecho $ac_n "checking for size_t""... $ac_c" 1>&6echo "configure:2127: checking for size_t" >&5if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6else cat > conftest.$ac_ext <<EOF#line 2132 "configure"#include "confdefs.h"#include <sys/types.h>#if STDC_HEADERS#include <stdlib.h>#include <stddef.h>#endifEOFif (eval "$ac_cpp conftest.$ac_ext") 2>&5 | egrep "(^|[^a-zA-Z_0-9])size_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then rm -rf conftest* ac_cv_type_size_t=yeselse rm -rf conftest* ac_cv_type_size_t=nofirm -f conftest*fiecho "$ac_t""$ac_cv_type_size_t" 1>&6if test $ac_cv_type_size_t = no; then cat >> confdefs.h <<\EOF#define size_t unsignedEOFfi# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works# for constant arguments. Useless!echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6echo "configure:2162: checking for working alloca.h" >&5if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6else cat > conftest.$ac_ext <<EOF#line 2167 "configure"#include "confdefs.h"#include <alloca.h>int main() {char *p = alloca(2 * sizeof(int));; return 0; }EOFif { (eval echo configure:2174: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_header_alloca_h=yeselse echo "configure: failed program was:" >&5 cat conftest.$ac_ext >&5 rm -rf conftest* ac_cv_header_alloca_h=nofirm -f conftest*fiecho "$ac_t""$ac_cv_header_alloca_h" 1>&6if test $ac_cv_header_alloca_h = yes; then cat >> confdefs.h <<\EOF#define HAVE_ALLOCA_H 1EOFfiecho $ac_n "checking for alloca""... $ac_c" 1>&6echo "configure:2195: checking for alloca" >&5if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6else cat > conftest.$ac_ext <<EOF#line 2200 "configure"#include "confdefs.h"#ifdef __GNUC__# define alloca __builtin_alloca#else# ifdef _MSC_VER# include <malloc.h># define alloca _alloca# else# if HAVE_ALLOCA_H# include <alloca.h># else# ifdef _AIX #pragma alloca# else# ifndef alloca /* predefined by HP cc +Olibcalls */char *alloca ();# endif# endif# endif# endif#endifint main() {char *p = (char *) alloca(1);; return 0; }EOFif { (eval echo configure:2228: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_func_alloca_works=yeselse echo "configure: failed program was:" >&5 cat conftest.$ac_ext >&5 rm -rf conftest* ac_cv_func_alloca_works=nofirm -f conftest*fiecho "$ac_t""$ac_cv_func_alloca_works" 1>&6if test $ac_cv_func_alloca_works = yes; then cat >> confdefs.h <<\EOF#define HAVE_ALLOCA 1EOFfiif test $ac_cv_func_alloca_works = no; then # The SVR3 libPW and SVR4 libucb both contain incompatible functions # that cause trouble. Some versions do not even contain alloca or # contain a buggy version. If you still want to use their alloca, # use ar to extract alloca.o from them instead of compiling alloca.c. ALLOCA=alloca.${ac_objext} cat >> confdefs.h <<\EOF#define C_ALLOCA 1EOFecho $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6echo "configure:2260: checking whether alloca needs Cray hooks" >&5if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6else cat > conftest.$ac_ext <<EOF#line 2265 "configure"#include "confdefs.h"#if defined(CRAY) && ! defined(CRAY2)webecray#elsewenotbecray#endifEOFif (eval "$ac_cpp conftest.$ac_ext") 2>&5 | egrep "webecray" >/dev/null 2>&1; then rm -rf conftest* ac_cv_os_cray=yeselse rm -rf conftest* ac_cv_os_cray=nofirm -f conftest*fiecho "$ac_t""$ac_cv_os_cray" 1>&6if test $ac_cv_os_cray = yes; thenfor ac_func in _getb67 GETB67 getb67; do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6echo "configure:2290: checking for $ac_func" >&5if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6else cat > conftest.$ac_ext <<EOF#line 2295 "configure"#include "confdefs.h"/* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */#include <assert.h>/* Override any gcc2 internal prototype to avoid an error. *//* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */char $ac_func();int main() {/* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */#if defined (__stub_$ac_func) || defined (__stub___$ac_func)choke me#else$ac_func();#endif; return 0; }EOFif { (eval echo configure:2318: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -