configur

来自「GNU 系统开发优化 C 语言程序的应用程序」· 代码 · 共 548 行

TXT
548
字号
#!/bin/sh# Guess values for system-dependent variables and create Makefiles.# Generated automatically using autoconf.# Copyright (C) 1991, 1992, 1993 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., 675 Mass Ave, Cambridge, MA 02139, USA.# Usage: configure [--srcdir=DIR] [--host=HOST] [--gas] [--nfp] [--no-create]#        [--prefix=PREFIX] [--exec-prefix=PREFIX] [--with-PACKAGE] [TARGET]# Ignores all args except --srcdir, --prefix, --exec-prefix, --no-create, and# --with-PACKAGE unless this script has special code to handle it.for argdo  # Handle --exec-prefix with a space before the argument.  if test x$next_exec_prefix = xyes; then exec_prefix=$arg; next_exec_prefix=  # Handle --host with a space before the argument.  elif test x$next_host = xyes; then next_host=  # Handle --prefix with a space before the argument.  elif test x$next_prefix = xyes; then prefix=$arg; next_prefix=  # Handle --srcdir with a space before the argument.  elif test x$next_srcdir = xyes; then srcdir=$arg; next_srcdir=  else    case $arg in     # For backward compatibility, also recognize exact --exec_prefix.     -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* | --exec=* | --exe=* | --ex=* | --e=*)	exec_prefix=`echo $arg | sed 's/[-a-z_]*=//'` ;;     -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- | --exec | --exe | --ex | --e)	next_exec_prefix=yes ;;     -gas | --gas | --ga | --g) ;;     -host=* | --host=* | --hos=* | --ho=* | --h=*) ;;     -host | --host | --hos | --ho | --h)	next_host=yes ;;     -nfp | --nfp | --nf) ;;     -no-create | --no-create | --no-creat | --no-crea | --no-cre | --no-cr | --no-c | --no- | --no)        no_create=1 ;;     -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)	prefix=`echo $arg | sed 's/[-a-z_]*=//'` ;;     -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)	next_prefix=yes ;;     -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=* | --s=*)	srcdir=`echo $arg | sed 's/[-a-z_]*=//'` ;;     -srcdir | --srcdir | --srcdi | --srcd | --src | --sr | --s)	next_srcdir=yes ;;     -with-* | --with-*)       package=`echo $arg|sed 's/-*with-//'`       # Delete all the valid chars; see if any are left.       if test -n "`echo $package|sed 's/[-a-zA-Z0-9_]*//g'`"; then         echo "configure: $package: invalid package name" >&2; exit 1       fi       eval "with_`echo $package|sed s/-/_/g`=1" ;;     -v | -verbose | --verbose | --verbos | --verbo | --verb | --ver | --ve | --v)       verbose=yes ;;     *) ;;    esac  fidonetrap 'rm -f conftest* core; exit 1' 1 3 15# Needed for some versions of `tr' so that character classes in `[]' work.if test "${LANG+set}" = "set" ; then   LANG=Cfirm -f conftest*compile='${CC-cc} $CFLAGS $DEFS conftest.c -o conftest $LIBS >/dev/null 2>&1'# A filename unique to this package, relative to the directory that# configure is in, which we can look for to find out if srcdir is correct.unique_file=indent.c# Find the source files, if location was not specified.if test -z "$srcdir"; then  srcdirdefaulted=yes  # Try the directory containing this script, then `..'.  prog=$0  confdir=`echo $prog|sed 's%/[^/][^/]*$%%'`  test "X$confdir" = "X$prog" && confdir=.  srcdir=$confdir  if test ! -r $srcdir/$unique_file; then    srcdir=..  fifiif test ! -r $srcdir/$unique_file; then  if test x$srcdirdefaulted = xyes; then    echo "configure: Can not find sources in \`${confdir}' or \`..'." 1>&2  else    echo "configure: Can not find sources in \`${srcdir}'." 1>&2  fi  exit 1fi# Preserve a srcdir of `.' to avoid automounter screwups with pwd.# But we can't avoid them for `..', to make subdirectories work.case $srcdir in  .|/*|~*) ;;  *) srcdir=`cd $srcdir; pwd` ;; # Make relative path absolute.esac# Save the original args to write them into config.status later.configure_args="$*"if test -z "$CC"; then  # Extract the first word of `gcc', so it can be a program name with args.  set dummy gcc; word=$2  echo checking for $word  IFS="${IFS= 	}"; saveifs="$IFS"; IFS="${IFS}:"  for dir in $PATH; do    test -z "$dir" && dir=.    if test -f $dir/$word; then      CC="gcc"      break    fi  done  IFS="$saveifs"fitest -z "$CC" && CC="cc"test -n "$CC" -a -n "$verbose" && echo "	setting CC to $CC"# Find out if we are using GNU C, under whatever name.cat > conftest.c <<EOF#ifdef __GNUC__  yes#endifEOF${CC-cc} -E conftest.c > conftest.out 2>&1if egrep yes conftest.out >/dev/null 2>&1; then  GCC=1 # For later tests.firm -f conftest*echo checking how to run the C preprocessorif test -z "$CPP"; then  CPP='${CC-cc} -E'  cat > conftest.c <<EOF#include <stdio.h>EOFerr=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`if test -z "$err"; then  :else  CPP=/lib/cppfirm -f conftest*fi# Make sure to not get the incompatible SysV /etc/install and# /usr/sbin/install, which might be in PATH before a BSD-like install,# or the SunOS /usr/etc/install directory, or the AIX /bin/install,# or the AFS install, which mishandles nonexistent args, or# /usr/ucb/install on SVR4, which tries to use the nonexistent group# `staff'.  On most BSDish systems install is in /usr/bin, not /usr/ucb# anyway.  Sigh.if test "z${INSTALL}" = "z" ; then  echo checking for install  IFS="${IFS= 	}"; saveifs="$IFS"; IFS="${IFS}:"  for dir in $PATH; do    test -z "$dir" && dir=.    case $dir in    /etc|/usr/sbin|/usr/etc|/usr/afsws/bin|/usr/ucb) ;;    *)      if test -f $dir/installbsd; then	INSTALL="$dir/installbsd -c" # OSF1	INSTALL_PROGRAM='$(INSTALL)'	INSTALL_DATA='$(INSTALL) -m 644'	break      fi      if test -f $dir/install; then	if grep dspmsg $dir/install >/dev/null 2>&1; then	  : # AIX	else	  INSTALL="$dir/install -c"	  INSTALL_PROGRAM='$(INSTALL)'	  INSTALL_DATA='$(INSTALL) -m 644'	  break	fi      fi      ;;    esac  done  IFS="$saveifs"fiINSTALL=${INSTALL-cp}INSTALL_PROGRAM=${INSTALL_PROGRAM-'$(INSTALL)'}INSTALL_DATA=${INSTALL_DATA-'$(INSTALL)'}echo checking for AIXcat > conftest.c <<EOF#ifdef _AIX  yes#endifEOFeval "$CPP \$DEFS conftest.c > conftest.out 2>&1"if egrep "yes" conftest.out >/dev/null 2>&1; then  {test -n "$verbose" && \echo '	defining' _ALL_SOURCEDEFS="$DEFS -D_ALL_SOURCE=1"}firm -f conftest*echo checking for minix/config.hcat > conftest.c <<EOF#include <minix/config.h>EOFerr=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`if test -z "$err"; then  MINIX=1firm -f conftest*# The Minix shell can't assign to the same variable on the same line!if test -n "$MINIX"; then  {test -n "$verbose" && \echo '	defining' _POSIX_SOURCEDEFS="$DEFS -D_POSIX_SOURCE=1"}  {test -n "$verbose" && \echo '	defining' _POSIX_1_SOURCE to be '2'DEFS="$DEFS -D_POSIX_1_SOURCE=2"}  {test -n "$verbose" && \echo '	defining' _MINIXDEFS="$DEFS -D_MINIX=1"}fiecho checking for POSIXized ISCif test -d /etc/conf/kconfig.d &&  grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1then  ISC=1 # If later tests want to check for ISC.  {test -n "$verbose" && \echo '	defining' _POSIX_SOURCEDEFS="$DEFS -D_POSIX_SOURCE=1"}  if test -n "$GCC"; then    CC="$CC -posix"  else    CC="$CC -Xp"  fifiecho checking for BSD string and memory functionscat > conftest.c <<EOF#include <strings.h>int main() { exit(0); }int t() { rindex(0, 0); bzero(0, 0); }EOFif eval $compile; then  :else  {test -n "$verbose" && \echo '	defining' USGDEFS="$DEFS -DUSG=1"}firm -f conftest*for func in memcpydoecho checking for ${func}cat > conftest.c <<EOFint main() { exit(0); }int t() { /* 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_${func}) || defined (__stub___${func})choke me#else/* Override any gcc2 internal prototype to avoid an error.  */extern char ${func}(); ${func}();#endif }EOFif eval $compile; then  :else  LIBOBJS="$LIBOBJS ${func}.o"test -n "$verbose" && echo "	using ${func}.o instead"firm -f conftest*doneecho checking for unistd.hcat > conftest.c <<EOF#include <unistd.h>EOFerr=`eval "($CPP \$DEFS conftest.c >/dev/null) 2>&1"`if test -z "$err"; then  {test -n "$verbose" && \echo '	defining' HAVE_UNISTD_HDEFS="$DEFS -DHAVE_UNISTD_H=1"}firm -f conftest*echo checking for directory library headerdirheader=if test -z "$dirheader"; then  echo checking for dirent.hcat > conftest.c <<EOF#include <sys/types.h>#include <dirent.h>int main() { exit(0); }int t() { DIR *dirp = opendir ("/"); }EOFif eval $compile; then  {test -n "$verbose" && \echo '	defining' DIRENTDEFS="$DEFS -DDIRENT=1"} dirheader=dirent.hfirm -f conftest*fiif test -z "$dirheader"; then  echo checking for sys/ndir.hcat > conftest.c <<EOF#include <sys/types.h>#include <sys/ndir.h>int main() { exit(0); }int t() { DIR *dirp = opendir ("/"); }EOFif eval $compile; then  {test -n "$verbose" && \echo '	defining' SYSNDIRDEFS="$DEFS -DSYSNDIR=1"} dirheader=sys/ndir.hfirm -f conftest*fiif test -z "$dirheader"; then  echo checking for sys/dir.hcat > conftest.c <<EOF#include <sys/types.h>#include <sys/dir.h>int main() { exit(0); }int t() { DIR *dirp = opendir ("/"); }EOFif eval $compile; then  {test -n "$verbose" && \echo '	defining' SYSDIRDEFS="$DEFS -DSYSDIR=1"} dirheader=sys/dir.hfirm -f conftest*fiif test -z "$dirheader"; then  echo checking for ndir.hcat > conftest.c <<EOF#include <sys/types.h>#include <ndir.h>int main() { exit(0); }int t() { DIR *dirp = opendir ("/"); }EOFif eval $compile; then  {test -n "$verbose" && \echo '	defining' NDIRDEFS="$DEFS -DNDIR=1"} dirheader=ndir.hfirm -f conftest*fiecho checking for closedir return valuecat > conftest.c <<EOF#include <sys/types.h>#include <$dirheader>int closedir(); main() { exit(closedir(opendir(".")) != 0); }EOFeval $compileif test -s conftest && (./conftest; exit) 2>/dev/null; then  :else  {test -n "$verbose" && \echo '	defining' VOID_CLOSEDIRDEFS="$DEFS -DVOID_CLOSEDIR=1"}firm -f conftest*if test -z "$dirheader"; then  {test -n "$verbose" && \echo '	defining' NODIRDEFS="$DEFS -DNODIR=1"}fiecho checking for Xenixcat > conftest.c <<EOF#if defined(M_XENIX) && !defined(M_UNIX)  yes#endifEOFeval "$CPP \$DEFS conftest.c > conftest.out 2>&1"if egrep "yes" conftest.out >/dev/null 2>&1; then  XENIX=1firm -f conftest*if test -n "$XENIX"; then  LIBS="$LIBS -lx"  case "$DEFS" in  *SYSNDIR*) ;;  *) LIBS="-ldir $LIBS" ;; # Make sure -ldir precedes any -lx.  esacfiif test -n "$prefix"; then  test -z "$exec_prefix" && exec_prefix='${prefix}'  prsub="s%^prefix\\([ 	]*\\)=\\([ 	]*\\).*$%prefix\\1=\\2$prefix%"fiif test -n "$exec_prefix"; then  prsub="$prsubs%^exec_prefix\\([ 	]*\\)=\\([ 	]*\\).*$%exec_prefix\\1=\\2$exec_prefix%"ficat >conftest.def <<EOF$DEFSEOFescape_ampersand_and_backslash='s%[&\\]%\\&%g'DEFS=`sed "$escape_ampersand_and_backslash" <conftest.def`rm -f conftest.deftrap 'rm -f config.status; exit 1' 1 3 15echo creating config.statusrm -f config.statuscat > config.status <<EOF#!/bin/sh# Generated automatically by configure.# Run this file to recreate the current configuration.# This directory was configured as follows,# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:## $0 $configure_argsfor argdo  case "\$arg" in    -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)    exec /bin/sh $0 $configure_args ;;    *) echo "Usage: config.status --recheck" 2>&1; exit 1 ;;  esacdonetrap 'rm -f makefile; exit 1' 1 3 15CC='$CC'CPP='$CPP'INSTALL='$INSTALL'INSTALL_PROGRAM='$INSTALL_PROGRAM'INSTALL_DATA='$INSTALL_DATA'LIBOBJS='$LIBOBJS'LIBS='$LIBS'srcdir='$srcdir'DEFS='$DEFS'prefix='$prefix'exec_prefix='$exec_prefix'prsub='$prsub'EOFcat >> config.status <<\EOFtop_srcdir=$srcdir# Allow make-time overrides of the generated file list.test -n "$gen_files" || gen_files="makefile"for file in .. $gen_files; do if [ "x$file" != "x.." ]; then  srcdir=$top_srcdir  # Remove last slash and all that follows it.  Not all systems have dirname.  dir=`echo $file|sed 's%/[^/][^/]*$%%'`  if test "$dir" != "$file"; then    test "$top_srcdir" != . && srcdir=$top_srcdir/$dir    test ! -d $dir && mkdir $dir  fi  echo creating $file  rm -f $file  echo "# Generated automatically from `echo $file|sed 's|.*/||'`.in by configure." > $file  sed -e "$prsubs%@CC@%$CC%gs%@CPP@%$CPP%gs%@INSTALL@%$INSTALL%gs%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%gs%@INSTALL_DATA@%$INSTALL_DATA%gs%@LIBOBJS@%$LIBOBJS%gs%@LIBS@%$LIBS%gs%@srcdir@%$srcdir%gs%@DEFS@%$DEFS%" $top_srcdir/${file}.in >> $filefi; doneexit 0EOFchmod +x config.statustest -n "$no_create" || ./config.status

⌨️ 快捷键说明

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