1 Star 0 Fork 0

joegana/adns

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
configure.in 3.83 KB
一键复制 编辑 原始数据 按行查看 历史
Ian Jackson 提交于 2009-07-02 15:16 . Imported Upstream version 1.3
# configure.in - input to autoconf
#
# This file is part of adns, which is
# Copyright (C) 1997-2000,2003,2006 Ian Jackson
# Copyright (C) 1999-2000,2003,2006 Tony Finch
# Copyright (C) 1991 Massachusetts Institute of Technology
# (See the file INSTALL for full details.)
#
# 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
AC_INIT(src/adns.h)
AC_CONFIG_HEADER(src/config.h)
dnl DPKG_CACHED_TRY_COMPILE(<description>,<cachevar>,<include>,<program>,<ifyes>,<ifno>)
define([DPKG_CACHED_TRY_COMPILE],[
AC_MSG_CHECKING($1)
AC_CACHE_VAL($2,[
AC_TRY_COMPILE([$3],[$4],[$2=yes],[$2=no])
])
if test "x$$2" = xyes; then
true
$5
else
true
$6
fi
])
AC_MSG_CHECKING(whether you requested dynamic linking)
AC_SUBST(ENABLE_DYNAMIC)
AC_ARG_ENABLE(dynamic,
[ --disable-dynamic use static linking
--enable-dynamic[=elf] create and use ELF dynamic library (default)],
[ case "$enableval" in
elf|yes)
ENABLE_DYNAMIC=elf
AC_MSG_RESULT([yes (ELF)])
;;
no) ENABLE_DYNAMIC=no
AC_MSG_RESULT(no)
;;
*) AC_MSG_ERROR(
["invalid value $enableval for --enable-dynamic, try yes or elf"])
;;
esac
],[
ENABLE_DYNAMIC=elf
AC_MSG_RESULT([yes, by default])
])
AC_PROG_CC
AC_PROG_CPP
AC_PROG_RANLIB
AC_PROG_INSTALL
AC_CHECK_FUNCS(poll)
ADNS_C_GETFUNC(socket,socket)
ADNS_C_GETFUNC(inet_ntoa,nsl)
PROGS_IF_TSEARCH=adnsresfilter
AC_SUBST(PROGS_HAVE_TSEARCH)
AC_CHECK_FUNC(tsearch,[
PROGS_HAVE_TSEARCH=$PROGS_IF_TSEARCH
],[
PROGS_HAVE_TSEARCH='';
AC_MSG_WARN([tsearch missing - not building client program(s) $PROGS_IF_TSEARCH])
])
AC_MSG_CHECKING(for INADDR_LOOPBACK)
AC_CACHE_VAL(adns_cv_decl_inaddrloopback,[
AC_TRY_COMPILE([
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
],[
INADDR_LOOPBACK;
],
adns_cv_decl_inaddrloopback=yes,
adns_cv_decl_inaddrloopback=no)])
if test "$adns_cv_decl_inaddrloopback" = yes; then
AC_MSG_RESULT(found)
else
AC_MSG_RESULT([not in standard headers, urgh...])
AC_CHECK_HEADER(rpc/types.h,[
AC_DEFINE(HAVEUSE_RPCTYPES_H)
],[
AC_MSG_ERROR([cannot find INADDR_LOOPBACK or rpc/types.h])
])
fi
ADNS_C_GETFUNC(inet_aton,resolv,[
LIBS="-lresolv $LIBS";
AC_MSG_WARN([inet_aton is in libresolv, urgh. Must use -lresolv.])
])
DPKG_CACHED_TRY_COMPILE(inlines,dpkg_cv_c_inline,,
[} inline int foo (int x) {],
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_INLINE),
AC_MSG_RESULT(no))
AC_SUBST(WARNS)
if test "${GCC-no}" = yes; then
WARNS="-Wall -Wmissing-prototypes -Wwrite-strings -Wstrict-prototypes -Wcast-qual -Wpointer-arith"
saved_cflags="$CFLAGS"
CFLAGS="$CFLAGS -Wno-pointer-sign"
DPKG_CACHED_TRY_COMPILE(-Wno-pointer-sign,adns_cv_c_wnoptrsign,,
[],
AC_MSG_RESULT(yes)
WARNS="$WARNS -Wno-pointer-sign",
AC_MSG_RESULT(no))
CFLAGS="$saved_cflags"
else
WARNS=
fi
ADNS_C_GCCATTRIB
AC_SUBST(SHLIBCC)
AC_SUBST(MKSHLIB_1)
AC_SUBST(MKSHLIB_2)
AC_SUBST(MKSHLIB_3)
AC_SUBST(SHLIBFORLINK)
AC_SUBST(SHLIBFILE)
AC_SUBST(SHLIBSONAME)
SHLIBFORLINK='libadns.so'
SHLIBSONAME='$(SHLIBFORLINK).$(MAJOR)'
SHLIBFILE='$(SHLIBSONAME).$(MINOR)'
SHLIBCC='$(CC) $(CFLAGS) -fpic'
MKSHLIB_1='$(CC) $(LDFLAGS) -shared -Wl,-soname=$(SHLIBSONAME) -o'
MKSHLIB_2=''
MKSHLIB_3='-lc'
AC_OUTPUT(
settings.make Makefile
src/Makefile client/Makefile dynamic/Makefile regress/Makefile
)
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C
1
https://gitee.com/joegana/adns.git
git@gitee.com:joegana/adns.git
joegana
adns
adns
master

搜索帮助