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

📄 configure.ac

📁 OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现。它用安全、加密的网络连接工具代替了 telnet、ftp、 rlogin、rsh 和 rcp 工具。OpenSSH 支持
💻 AC
📖 第 1 页 / 共 5 页
字号:
# $Id: configure.ac,v 1.250 2005/03/07 09:21:37 tim Exp $## Copyright (c) 1999-2004 Damien Miller## Permission to use, copy, modify, and distribute this software for any# purpose with or without fee is hereby granted, provided that the above# copyright notice and this permission notice appear in all copies.## THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.AC_INIT(OpenSSH, Portable)AC_CONFIG_SRCDIR([ssh.c])AC_CONFIG_HEADER(config.h)AC_PROG_CCAC_CANONICAL_HOSTAC_C_BIGENDIAN# Checks for programs.AC_PROG_AWKAC_PROG_CPPAC_PROG_RANLIBAC_PROG_INSTALLAC_PATH_PROG(AR, ar)AC_PATH_PROG(CAT, cat)AC_PATH_PROG(KILL, kill)AC_PATH_PROGS(PERL, perl5 perl)AC_PATH_PROG(SED, sed)AC_SUBST(PERL)AC_PATH_PROG(ENT, ent)AC_SUBST(ENT)AC_PATH_PROG(TEST_MINUS_S_SH, bash)AC_PATH_PROG(TEST_MINUS_S_SH, ksh)AC_PATH_PROG(TEST_MINUS_S_SH, sh)AC_PATH_PROG(SH, sh)AC_SUBST(TEST_SHELL,sh)dnl for buildpkg.shAC_PATH_PROG(PATH_GROUPADD_PROG, groupadd, groupadd,	[/usr/sbin${PATH_SEPARATOR}/etc])AC_PATH_PROG(PATH_USERADD_PROG, useradd, useradd,	[/usr/sbin${PATH_SEPARATOR}/etc])AC_CHECK_PROG(MAKE_PACKAGE_SUPPORTED, pkgmk, yes, no)# System featuresAC_SYS_LARGEFILEif test -z "$AR" ; then	AC_MSG_ERROR([*** 'ar' missing, please install or fix your \$PATH ***])fi# Use LOGIN_PROGRAM from environment if possibleif test ! -z "$LOGIN_PROGRAM" ; then	AC_DEFINE_UNQUOTED(LOGIN_PROGRAM_FALLBACK, "$LOGIN_PROGRAM")else	# Search for login	AC_PATH_PROG(LOGIN_PROGRAM_FALLBACK, login)	if test ! -z "$LOGIN_PROGRAM_FALLBACK" ; then		AC_DEFINE_UNQUOTED(LOGIN_PROGRAM_FALLBACK, "$LOGIN_PROGRAM_FALLBACK")	fifiAC_PATH_PROG(PATH_PASSWD_PROG, passwd)if test ! -z "$PATH_PASSWD_PROG" ; then	AC_DEFINE_UNQUOTED(_PATH_PASSWD_PROG, "$PATH_PASSWD_PROG")fiif test -z "$LD" ; then	LD=$CCfiAC_SUBST(LD)	AC_C_INLINEif test "$GCC" = "yes" || test "$GCC" = "egcs"; then	CFLAGS="$CFLAGS -Wall -Wpointer-arith -Wno-uninitialized"fiAC_ARG_WITH(rpath,	[  --without-rpath         Disable auto-added -R linker paths],	[		if test "x$withval" = "xno" ; then				need_dash_r=""		fi		if test "x$withval" = "xyes" ; then			need_dash_r=1		fi	])# Check for some target-specific stuffcase "$host" in*-*-aix*)	AC_MSG_CHECKING([how to specify blibpath for linker ($LD)])	if (test -z "$blibpath"); then		blibpath="/usr/lib:/lib"	fi	saved_LDFLAGS="$LDFLAGS"	for tryflags in -blibpath: -Wl,-blibpath: -Wl,-rpath, ;do		if (test -z "$blibflags"); then			LDFLAGS="$saved_LDFLAGS $tryflags$blibpath"			AC_TRY_LINK([], [], [blibflags=$tryflags])		fi	done	if (test -z "$blibflags"); then		AC_MSG_RESULT(not found)		AC_MSG_ERROR([*** must be able to specify blibpath on AIX - check config.log])	else		AC_MSG_RESULT($blibflags)	fi	LDFLAGS="$saved_LDFLAGS"	dnl Check for authenticate.  Might be in libs.a on older AIXes	AC_CHECK_FUNC(authenticate, [AC_DEFINE(WITH_AIXAUTHENTICATE)],		[AC_CHECK_LIB(s,authenticate,			[ AC_DEFINE(WITH_AIXAUTHENTICATE)				LIBS="$LIBS -ls"			])		])	dnl Check for various auth function declarations in headers.	AC_CHECK_DECLS([authenticate, loginrestrictions, loginsuccess,	    passwdexpired], , , [#include <usersec.h>])	dnl Check if loginfailed is declared and takes 4 arguments (AIX >= 5.2)	AC_CHECK_DECLS(loginfailed,		 [AC_MSG_CHECKING(if loginfailed takes 4 arguments)		  AC_TRY_COMPILE(			[#include <usersec.h>],			[(void)loginfailed("user","host","tty",0);],			[AC_MSG_RESULT(yes)			 AC_DEFINE(AIX_LOGINFAILED_4ARG)],			[AC_MSG_RESULT(no)]		)],		[],		[#include <usersec.h>]	)	AC_CHECK_FUNCS(setauthdb)	check_for_aix_broken_getaddrinfo=1	AC_DEFINE(BROKEN_REALPATH)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	dnl AIX handles lastlog as part of its login message	AC_DEFINE(DISABLE_LASTLOG)	AC_DEFINE(LOGIN_NEEDS_UTMPX)	AC_DEFINE(SPT_TYPE,SPT_REUSEARGV)	;;*-*-cygwin*)	check_for_libcrypt_later=1	LIBS="$LIBS /usr/lib/textmode.o"	AC_DEFINE(HAVE_CYGWIN)	AC_DEFINE(USE_PIPES)	AC_DEFINE(DISABLE_SHADOW)	AC_DEFINE(IP_TOS_IS_BROKEN)	AC_DEFINE(NO_X11_UNIX_SOCKETS)	AC_DEFINE(NO_IPPORT_RESERVED_CONCEPT)	AC_DEFINE(DISABLE_FD_PASSING)	;;*-*-dgux*)	AC_DEFINE(IP_TOS_IS_BROKEN)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	;;*-*-darwin*)	AC_MSG_CHECKING(if we have working getaddrinfo)	AC_TRY_RUN([#include <mach-o/dyld.h>main() { if (NSVersionOfRunTimeLibrary("System") >= (60 << 16))		exit(0);	else		exit(1);}], [AC_MSG_RESULT(working)],	[AC_MSG_RESULT(buggy)	AC_DEFINE(BROKEN_GETADDRINFO)],	[AC_MSG_RESULT(assume it is working)])	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	AC_DEFINE_UNQUOTED(BIND_8_COMPAT, 1)	;;*-*-hpux10.26)	if test -z "$GCC"; then		CFLAGS="$CFLAGS -Ae"	fi	CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1"	IPADDR_IN_DISPLAY=yes	AC_DEFINE(HAVE_SECUREWARE)	AC_DEFINE(USE_PIPES)	AC_DEFINE(LOGIN_NO_ENDOPT)	AC_DEFINE(LOGIN_NEEDS_UTMPX)	AC_DEFINE(LOCKED_PASSWD_STRING, "*")	AC_DEFINE(SPT_TYPE,SPT_PSTAT)	LIBS="$LIBS -lsec -lsecpw"	AC_CHECK_LIB(xnet, t_error, ,AC_MSG_ERROR([*** -lxnet needed on HP-UX - check config.log ***]))	disable_ptmx_check=yes	;;*-*-hpux10*)	if test -z "$GCC"; then		CFLAGS="$CFLAGS -Ae"	fi	CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1"	IPADDR_IN_DISPLAY=yes	AC_DEFINE(USE_PIPES)	AC_DEFINE(LOGIN_NO_ENDOPT)	AC_DEFINE(LOGIN_NEEDS_UTMPX)	AC_DEFINE(LOCKED_PASSWD_STRING, "*")	AC_DEFINE(SPT_TYPE,SPT_PSTAT)	LIBS="$LIBS -lsec"	AC_CHECK_LIB(xnet, t_error, ,AC_MSG_ERROR([*** -lxnet needed on HP-UX - check config.log ***]))	;;*-*-hpux11*)	CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1"	IPADDR_IN_DISPLAY=yes	AC_DEFINE(PAM_SUN_CODEBASE)	AC_DEFINE(USE_PIPES)	AC_DEFINE(LOGIN_NO_ENDOPT)	AC_DEFINE(LOGIN_NEEDS_UTMPX)	AC_DEFINE(DISABLE_UTMP)	AC_DEFINE(LOCKED_PASSWD_STRING, "*")	AC_DEFINE(SPT_TYPE,SPT_PSTAT)	AC_DEFINE(USE_BTMP, 1, [Use btmp to log bad logins])	check_for_hpux_broken_getaddrinfo=1	check_for_conflicting_getspnam=1	LIBS="$LIBS -lsec"	AC_CHECK_LIB(xnet, t_error, ,AC_MSG_ERROR([*** -lxnet needed on HP-UX - check config.log ***]))	;;*-*-irix5*)	PATH="$PATH:/usr/etc"	AC_DEFINE(BROKEN_INET_NTOA)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	AC_DEFINE(WITH_ABBREV_NO_TTY)	AC_DEFINE(LOCKED_PASSWD_STRING, "*LK*")	;;*-*-irix6*)	PATH="$PATH:/usr/etc"	AC_DEFINE(WITH_IRIX_ARRAY)	AC_DEFINE(WITH_IRIX_PROJECT)	AC_DEFINE(WITH_IRIX_AUDIT)	AC_CHECK_FUNC(jlimit_startjob, [AC_DEFINE(WITH_IRIX_JOBS)])	AC_DEFINE(BROKEN_INET_NTOA)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	AC_DEFINE(BROKEN_UPDWTMPX)	AC_DEFINE(WITH_ABBREV_NO_TTY)	AC_DEFINE(LOCKED_PASSWD_STRING, "*LK*")	;;*-*-linux*)	no_dev_ptmx=1	check_for_libcrypt_later=1	check_for_openpty_ctty_bug=1	AC_DEFINE(DONT_TRY_OTHER_AF)	AC_DEFINE(PAM_TTY_KLUDGE)	AC_DEFINE(LOCKED_PASSWD_PREFIX, "!")	AC_DEFINE(SPT_TYPE,SPT_REUSEARGV)	AC_DEFINE(LINK_OPNOTSUPP_ERRNO, EPERM)	AC_DEFINE(_PATH_BTMP, "/var/log/btmp", [log for bad login attempts])	AC_DEFINE(USE_BTMP, 1, [Use btmp to log bad logins])	inet6_default_4in6=yes	case `uname -r` in	1.*|2.0.*)		AC_DEFINE(BROKEN_CMSG_TYPE)		;;	esac	;;mips-sony-bsd|mips-sony-newsos4)	AC_DEFINE(HAVE_NEWS4)	SONY=1	;;*-*-netbsd*)	check_for_libcrypt_before=1	if test "x$withval" != "xno" ; then			need_dash_r=1	fi	;;*-*-freebsd*)	check_for_libcrypt_later=1	;;*-*-bsdi*)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	;;*-next-*)	conf_lastlog_location="/usr/adm/lastlog"	conf_utmp_location=/etc/utmp	conf_wtmp_location=/usr/adm/wtmp	MAIL=/usr/spool/mail	AC_DEFINE(HAVE_NEXT)	AC_DEFINE(BROKEN_REALPATH)	AC_DEFINE(USE_PIPES)	AC_DEFINE(BROKEN_SAVED_UIDS)	;;*-*-solaris*)	if test "x$withval" != "xno" ; then			need_dash_r=1	fi	AC_DEFINE(PAM_SUN_CODEBASE)	AC_DEFINE(LOGIN_NEEDS_UTMPX)	AC_DEFINE(LOGIN_NEEDS_TERM)	AC_DEFINE(PAM_TTY_KLUDGE)	AC_DEFINE(SSHPAM_CHAUTHTOK_NEEDS_RUID)	AC_DEFINE(LOCKED_PASSWD_STRING, "*LK*")	# Pushing STREAMS modules will cause sshd to acquire a controlling tty.	AC_DEFINE(SSHD_ACQUIRES_CTTY)	external_path_file=/etc/default/login	# hardwire lastlog location (can't detect it on some versions)	conf_lastlog_location="/var/adm/lastlog"	AC_MSG_CHECKING(for obsolete utmp and wtmp in solaris2.x)	sol2ver=`echo "$host"| sed -e 's/.*[[0-9]]\.//'`	if test "$sol2ver" -ge 8; then		AC_MSG_RESULT(yes)		AC_DEFINE(DISABLE_UTMP)		AC_DEFINE(DISABLE_WTMP)	else		AC_MSG_RESULT(no)	fi	;;*-*-sunos4*)	CPPFLAGS="$CPPFLAGS -DSUNOS4"	AC_CHECK_FUNCS(getpwanam)	AC_DEFINE(PAM_SUN_CODEBASE)	conf_utmp_location=/etc/utmp	conf_wtmp_location=/var/adm/wtmp	conf_lastlog_location=/var/adm/lastlog	AC_DEFINE(USE_PIPES)	;;*-ncr-sysv*)	LIBS="$LIBS -lc89"	AC_DEFINE(USE_PIPES)	AC_DEFINE(SSHD_ACQUIRES_CTTY)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	;;*-sni-sysv*)	# /usr/ucblib MUST NOT be searched on ReliantUNIX	AC_CHECK_LIB(dl, dlsym, ,)	# -lresolv needs to be at then end of LIBS or DNS lookups break	AC_CHECK_LIB(res_query, resolv, [ LIBS="$LIBS -lresolv" ])	IPADDR_IN_DISPLAY=yes	AC_DEFINE(USE_PIPES)	AC_DEFINE(IP_TOS_IS_BROKEN)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	AC_DEFINE(SSHD_ACQUIRES_CTTY)	external_path_file=/etc/default/login	# /usr/ucblib/libucb.a no longer needed on ReliantUNIX	# Attention: always take care to bind libsocket and libnsl before libc,	# otherwise you will find lots of "SIOCGPGRP errno 22" on syslog	;;# UnixWare 1.x, UnixWare 2.x, and others based on code from Univel.*-*-sysv4.2*)	AC_DEFINE(USE_PIPES)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	;;# UnixWare 7.x, OpenUNIX 8*-*-sysv5*)	AC_DEFINE(USE_PIPES)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	;;*-*-sysv*)	;;# SCO UNIX and OEM versions of SCO UNIX*-*-sco3.2v4*)	AC_MSG_ERROR("This Platform is no longer supported.")	;;# SCO OpenServer 5.x*-*-sco3.2v5*)	if test -z "$GCC"; then		CFLAGS="$CFLAGS -belf"	fi	LIBS="$LIBS -lprot -lx -ltinfo -lm"	no_dev_ptmx=1	AC_DEFINE(USE_PIPES)	AC_DEFINE(HAVE_SECUREWARE)	AC_DEFINE(DISABLE_SHADOW)	AC_DEFINE(DISABLE_FD_PASSING)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	AC_DEFINE(WITH_ABBREV_NO_TTY)	AC_DEFINE(BROKEN_UPDWTMPX)	AC_DEFINE(PASSWD_NEEDS_USERNAME, 1, [must supply username to passwd])	AC_CHECK_FUNCS(getluid setluid)	MANTYPE=man	TEST_SHELL=ksh	;;*-*-unicosmk*)	AC_DEFINE(NO_SSH_LASTLOG)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	AC_DEFINE(USE_PIPES)	AC_DEFINE(DISABLE_FD_PASSING)	LDFLAGS="$LDFLAGS"	LIBS="$LIBS -lgen -lrsc -lshare -luex -lacm"	MANTYPE=cat	;;*-*-unicosmp*)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	AC_DEFINE(WITH_ABBREV_NO_TTY)	AC_DEFINE(USE_PIPES)	AC_DEFINE(DISABLE_FD_PASSING)	LDFLAGS="$LDFLAGS"	LIBS="$LIBS -lgen -lacid -ldb"	MANTYPE=cat	;;*-*-unicos*)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	AC_DEFINE(USE_PIPES)	AC_DEFINE(DISABLE_FD_PASSING)	AC_DEFINE(NO_SSH_LASTLOG)	LDFLAGS="$LDFLAGS -Wl,-Dmsglevel=334:fatal"	LIBS="$LIBS -lgen -lrsc -lshare -luex -lacm"	MANTYPE=cat	;;*-dec-osf*)	AC_MSG_CHECKING(for Digital Unix SIA)	no_osfsia=""	AC_ARG_WITH(osfsia,		[  --with-osfsia           Enable Digital Unix SIA],		[			if test "x$withval" = "xno" ; then				AC_MSG_RESULT(disabled)				no_osfsia=1			fi		],	)	if test -z "$no_osfsia" ; then		if test -f /etc/sia/matrix.conf; then			AC_MSG_RESULT(yes)			AC_DEFINE(HAVE_OSF_SIA)			AC_DEFINE(DISABLE_LOGIN)			AC_DEFINE(DISABLE_FD_PASSING)			LIBS="$LIBS -lsecurity -ldb -lm -laud"		else			AC_MSG_RESULT(no)			AC_DEFINE(LOCKED_PASSWD_SUBSTR, "Nologin")		fi	fi	AC_DEFINE(BROKEN_GETADDRINFO)	AC_DEFINE(SETEUID_BREAKS_SETUID)	AC_DEFINE(BROKEN_SETREUID)	AC_DEFINE(BROKEN_SETREGID)	;;*-*-nto-qnx)	AC_DEFINE(USE_PIPES)	AC_DEFINE(NO_X11_UNIX_SOCKETS)	AC_DEFINE(MISSING_NFDBITS)	AC_DEFINE(MISSING_HOWMANY)	AC_DEFINE(MISSING_FD_MASK)	;;esac# Allow user to specify flagsAC_ARG_WITH(cflags,	[  --with-cflags           Specify additional flags to pass to compiler],	[		if test "x$withval" != "xno" ; then			CFLAGS="$CFLAGS $withval"		fi	]	)AC_ARG_WITH(cppflags,	[  --with-cppflags         Specify additional flags to pass to preprocessor] ,	[		if test "x$withval" != "xno"; then			CPPFLAGS="$CPPFLAGS $withval"		fi	])AC_ARG_WITH(ldflags,	[  --with-ldflags          Specify additional flags to pass to linker],	[		if test "x$withval" != "xno" ; then			LDFLAGS="$LDFLAGS $withval"		fi	]	)AC_ARG_WITH(libs,	[  --with-libs             Specify additional libraries to link with],	[		if test "x$withval" != "xno" ; then			LIBS="$LIBS $withval"		fi	]	)AC_MSG_CHECKING(compiler and flags for sanity)AC_RUN_IFELSE(	[AC_LANG_SOURCE([#include <stdio.h>int main(){exit(0);}	])],	[	AC_MSG_RESULT(yes) ],	[		AC_MSG_RESULT(no)		AC_MSG_ERROR([*** compiler cannot create working executables, check config.log ***])	],	[	AC_MSG_WARN([cross compiling: not checking compiler sanity]) ])# Checks for header files.AC_CHECK_HEADERS(bstring.h crypt.h dirent.h endian.h features.h \

⌨️ 快捷键说明

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