|
Packit |
fcad23 |
# -*- autoconf -*-
|
|
Packit |
fcad23 |
#########################################
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
# Checks for programs
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
#########################################
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
# Shell checks:
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Check for 'sh' overflow (HP-UX)
|
|
Packit |
fcad23 |
# (taken from Perl's configure script)
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([if I need to feed myself to ksh])
|
|
Packit |
fcad23 |
if test -f /hp-ux -a -f /bin/ksh; then
|
|
Packit |
fcad23 |
if (PATH=.; alias -x) >/dev/null 2>&1; then
|
|
Packit |
fcad23 |
AC_MSG_RESULT(no)
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
AC_MSG_RESULT(yes)
|
|
Packit |
fcad23 |
if test "x$1" = "x"; then
|
|
Packit |
fcad23 |
exec /bin/ksh $0
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
exec /bin/ksh $0 "$@"
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
AC_MSG_RESULT(no)
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
# Standard and path program checks:
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_PROG_EGREP
|
|
Packit |
fcad23 |
AC_PROG_GREP
|
|
Packit |
fcad23 |
AC_PROG_INSTALL
|
|
Packit |
fcad23 |
AC_PROG_LN_S
|
|
Packit |
fcad23 |
AC_PROG_MAKE_SET
|
|
Packit |
fcad23 |
AC_PROG_SED
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_CHECK_PROGS([FILE], [file])
|
|
Packit |
fcad23 |
if test x$ac_cv_prog_FILE = x; then
|
|
Packit |
fcad23 |
# The file program is not included in the default Cygwin setup, although
|
|
Packit |
fcad23 |
# this program is essential for libtool to work properly. It is nontrivial
|
|
Packit |
fcad23 |
# to deduce from the message printed by libtool that the 'file' tool is
|
|
Packit |
fcad23 |
# missing and libtool does not abort when the file program is not found. So
|
|
Packit |
fcad23 |
# stop now if the file program has not been found.
|
|
Packit |
fcad23 |
AC_MSG_ERROR([file program not found although it is needed by libtool.], [1])
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_CHECK_PROGS(FIND, find)
|
|
Packit |
fcad23 |
AC_CHECK_PROGS(WHOAMI, whoami logname, whoami)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_PATH_PROG(AUTOCONF, autoconf, [:])
|
|
Packit |
fcad23 |
AC_PATH_PROG(AUTOHEADER, autoheader, [:])
|
|
Packit |
fcad23 |
AC_PATH_PROG([PERLPROG], perl)
|
|
Packit |
fcad23 |
AC_PATH_PROG([PSPROG], ps)
|
|
Packit |
fcad23 |
AC_PATH_PROG([PYTHONPROG],python)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_PATH_PROG([UNAMEPROG], uname)
|
|
Packit |
fcad23 |
AC_DEFINE_UNQUOTED(UNAMEPROG,"$UNAMEPROG", [Where is the uname command])
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
MAKE=${MAKE-"make"}
|
|
Packit |
fcad23 |
$MAKE -v -f /dev/null 2>/dev/null | $GREP GNU >/dev/null
|
|
Packit |
fcad23 |
have_gnu_make=$?
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
# The Perl function system() is used for running the Net-SNMP regression
|
|
Packit |
fcad23 |
# tests. Find out whether that function invokes a POSIX shell, which is
|
|
Packit |
fcad23 |
# necessary in order to run the regression tests. When using Windows + MSYS
|
|
Packit |
fcad23 |
# + ActiveState Perl, Perl's system() function does invoke Windows' cmd.exe
|
|
Packit |
fcad23 |
# which is not a POSIX shell.
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([whether the Perl function system() invokes a POSIX shell])
|
|
Packit |
fcad23 |
if test "x$PERLPROG" != 'x' && test -x "$PERLPROG" && test "x`$PERLPROG -e 'system('\''echo $OSTYPE'\'');'`" != 'x$OSTYPE'; then
|
|
Packit |
fcad23 |
PERL_SYSTEM_INVOKES_POSIX_SHELL=yes
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
PERL_SYSTEM_INVOKES_POSIX_SHELL=no
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
AC_MSG_RESULT([$PERL_SYSTEM_INVOKES_POSIX_SHELL])
|
|
Packit |
fcad23 |
AC_SUBST([PERL_SYSTEM_INVOKES_POSIX_SHELL])
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
# Compilation-related program checks:
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_LANG([C])
|
|
Packit |
fcad23 |
AC_PROG_CC
|
|
Packit |
fcad23 |
AC_PROG_CPP
|
|
Packit |
fcad23 |
LINKCC=${LINKCC-"$CC"}
|
|
Packit |
fcad23 |
AC_SUBST(LINKCC)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_C_CONST
|
|
Packit |
fcad23 |
AC_C_INLINE
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# libtool stuff for shared/static libraries.
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
LT_PREREQ([2.2.6])
|
|
Packit |
fcad23 |
LT_INIT([win32-dll])
|
|
Packit |
fcad23 |
AC_SUBST(LIBTOOL_DEPS)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
# Build environment:
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# developer build
|
|
Packit |
fcad23 |
# (enabled by default when building from SVN checkout)
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
if test "x$developer" != "xno" -a -f $srcdir/remove-files; then
|
|
Packit |
fcad23 |
developer="yes"
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([for developer gcc flags])
|
|
Packit |
fcad23 |
if test "x$developer" = "xyes" -a "x$GCC" = "xyes"; then
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# WWWXXX - strict type checking
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
netsnmp_save_CFLAGS="$CFLAGS"
|
|
Packit |
fcad23 |
for opt in -Wall -Wextra -Wstrict-prototypes -Wwrite-strings -Wcast-qual \
|
|
Packit |
fcad23 |
-Wimplicit-fallthrough=2 -Wlogical-op \
|
|
Packit |
fcad23 |
-Wno-format-truncation -Wno-missing-field-initializers \
|
|
Packit |
fcad23 |
-Wno-sign-compare -Wno-unused-parameter -Wno-type-limits
|
|
Packit |
fcad23 |
do
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([whether the compiler supports $opt])
|
|
Packit |
fcad23 |
if test x$opt != x-Wstrict-prototypes; then
|
|
Packit |
fcad23 |
CFLAGS="-Werror $opt $CFLAGS"
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
CFLAGS="$opt $CFLAGS"
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], [
|
|
Packit |
fcad23 |
AC_MSG_RESULT([yes])
|
|
Packit |
fcad23 |
DEVFLAGS="$DEVFLAGS $opt"
|
|
Packit |
fcad23 |
], [
|
|
Packit |
fcad23 |
AC_MSG_RESULT([no])
|
|
Packit |
fcad23 |
])
|
|
Packit |
fcad23 |
CFLAGS="$netsnmp_save_CFLAGS"
|
|
Packit |
fcad23 |
done
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
DEVFLAGS=""
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
AC_MSG_RESULT($DEVFLAGS)
|
|
Packit |
fcad23 |
AC_SUBST(DEVFLAGS)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# building outside source directory
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
# a) ensure build include paths are before source
|
|
Packit |
fcad23 |
# b) ensure GNU make uses 'vpath' instead of 'VPATH'
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
NON_GNU_VPATH="VPATH ="
|
|
Packit |
fcad23 |
GNU_vpath="#vpath"
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# define include paths relative to top_srcdir
|
|
Packit |
fcad23 |
# tweak includes if we're building outside of the source dir
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
if test "x$srcdir" = "x."; then
|
|
Packit |
fcad23 |
TOP_INCLUDES=SRC_TOP_INCLUDES
|
|
Packit |
fcad23 |
SNMPLIB_INCLUDES=SRC_SNMPLIB_INCLUDES
|
|
Packit |
fcad23 |
AGENT_INCLUDES=SRC_AGENT_INCLUDES
|
|
Packit |
fcad23 |
HELPER_INCLUDES=SRC_HELPER_INCLUDES
|
|
Packit |
fcad23 |
MIBGROUP_INCLUDES=SRC_MIBGROUP_INCLUDES
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
TOP_INCLUDES=BLD_TOP_INCLUDES
|
|
Packit |
fcad23 |
SNMPLIB_INCLUDES=BLD_SNMPLIB_INCLUDES
|
|
Packit |
fcad23 |
AGENT_INCLUDES=BLD_AGENT_INCLUDES
|
|
Packit |
fcad23 |
HELPER_INCLUDES=BLD_HELPER_INCLUDES
|
|
Packit |
fcad23 |
MIBGROUP_INCLUDES=BLD_MIBGROUP_INCLUDES
|
|
Packit |
fcad23 |
if test $have_gnu_make -eq 0 ; then
|
|
Packit |
fcad23 |
NON_GNU_VPATH="#VPATH ="
|
|
Packit |
fcad23 |
GNU_vpath="vpath"
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
AC_SUBST(TOP_INCLUDES)
|
|
Packit |
fcad23 |
AC_SUBST(SNMPLIB_INCLUDES)
|
|
Packit |
fcad23 |
AC_SUBST(AGENT_INCLUDES)
|
|
Packit |
fcad23 |
AC_SUBST(HELPER_INCLUDES)
|
|
Packit |
fcad23 |
AC_SUBST(MIBGROUP_INCLUDES)
|
|
Packit |
fcad23 |
AC_SUBST(EXTERNAL_MIBGROUP_INCLUDES)
|
|
Packit |
fcad23 |
AC_SUBST(GNU_vpath)
|
|
Packit |
fcad23 |
AC_SUBST(NON_GNU_VPATH)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
# System-related compilation checks:
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# What system are we building for
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
AC_CANONICAL_TARGET
|
|
Packit |
fcad23 |
changequote(, )
|
|
Packit |
fcad23 |
PARTIALTARGETOS=`echo $target_os | sed 's/[-._].*//'`
|
|
Packit |
fcad23 |
changequote([, ])
|
|
Packit |
fcad23 |
AC_MSG_CACHE_ADD(Building for: $PARTIALTARGETOS)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Avoid conflicts on Cygwin between <windows.h> and the openssl header files.
|
|
Packit |
fcad23 |
case x$target_os in
|
|
Packit |
fcad23 |
xcygwin*)
|
|
Packit |
fcad23 |
CPPFLAGS="-DVC_EXTRALEAN -DWIN32_LEAN_AND_MEAN $CPPFLAGS";;
|
|
Packit |
fcad23 |
esac
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
# Whether or not Cygwin's ld recognizes the flag -no-undefined.
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
case x$target_os in
|
|
Packit |
fcad23 |
xcygwin*)
|
|
Packit |
fcad23 |
saved_LDFLAGS=$LDFLAGS
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([whether the linker supports -no-undefined])
|
|
Packit |
fcad23 |
LDFLAGS="$saved_LDFLAGS -Wl,-no-undefined"
|
|
Packit |
fcad23 |
AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
|
|
Packit |
fcad23 |
[AC_MSG_RESULT([yes]); dnl
|
|
Packit |
fcad23 |
LD_NO_UNDEFINED=-no-undefined],
|
|
Packit |
fcad23 |
[AC_MSG_RESULT([no])])
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
LDFLAGS="$saved_LDFLAGS"
|
|
Packit |
fcad23 |
;;
|
|
Packit |
fcad23 |
esac
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_SUBST(LD_NO_UNDEFINED)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
# Socket library: either 'default' (non-MinGW) or 'winsock2' (MinGW).
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
case x$target_os in
|
|
Packit |
fcad23 |
xmingw*)
|
|
Packit |
fcad23 |
with_socklib=winsock2
|
|
Packit |
fcad23 |
if test "x$enable_ipv6" = "xyes"; then
|
|
Packit |
fcad23 |
CFLAGS="-D_WIN32_WINNT=0x0501 $CFLAGS"
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
;;
|
|
Packit |
fcad23 |
*)
|
|
Packit |
fcad23 |
with_socklib=default;;
|
|
Packit |
fcad23 |
esac
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Check system define behaviour
|
|
Packit |
fcad23 |
# Does "-Ux -Dx=x" work as expected?
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([whether to un-define target system token (before redefining)])
|
|
Packit |
fcad23 |
OLD_CPPFLAGS="$CPPFLAGS"
|
|
Packit |
fcad23 |
CPPFLAGS="-U$PARTIALTARGETOS -D$PARTIALTARGETOS=$PARTIALTARGETOS"
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_EGREP_CPP(yes,
|
|
Packit |
fcad23 |
[[
|
|
Packit |
fcad23 |
#ifdef $PARTIALTARGETOS
|
|
Packit |
fcad23 |
yes
|
|
Packit |
fcad23 |
#endif
|
|
Packit |
fcad23 |
]],
|
|
Packit |
fcad23 |
[ PARTIALTARGETFLAGS="-U$PARTIALTARGETOS -D$PARTIALTARGETOS=$PARTIALTARGETOS"
|
|
Packit |
fcad23 |
AC_MSG_RESULT([yes])],
|
|
Packit |
fcad23 |
[ PARTIALTARGETFLAGS="-D$PARTIALTARGETOS=$PARTIALTARGETOS"
|
|
Packit |
fcad23 |
AC_MSG_RESULT([no])])
|
|
Packit |
fcad23 |
CFLAGS="$CFLAGS $PARTIALTARGETFLAGS"
|
|
Packit |
fcad23 |
CPPFLAGS="$OLD_CPPFLAGS"
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Determine appropriate <net-snmp/system/{os}.h> include
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([for system include file])
|
|
Packit |
fcad23 |
changequote(, )
|
|
Packit |
fcad23 |
filebase=$target_os
|
|
Packit |
fcad23 |
# ignore binary format indication
|
|
Packit |
fcad23 |
filebase=`echo $filebase | $SED 's/elf//'`
|
|
Packit |
fcad23 |
filebase=`echo $filebase | $SED 's/aout//'`
|
|
Packit |
fcad23 |
filebase=`echo $filebase | $SED 's/ecoff//'`
|
|
Packit |
fcad23 |
filebase=`echo $filebase | $SED 's/coff//'`
|
|
Packit |
fcad23 |
while test "x$filebase" != "x$last" -a ! -f $srcdir/include/net-snmp/system/$filebase.h
|
|
Packit |
fcad23 |
do
|
|
Packit |
fcad23 |
last=$filebase
|
|
Packit |
fcad23 |
filebase=`echo $filebase | $SED 's/[-._][^-._]*$//'`
|
|
Packit |
fcad23 |
if test "x$filebase" = "x$last"; then
|
|
Packit |
fcad23 |
filebase=`echo $filebase | $SED 's/[0-9]*$//'`
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
done
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
if test "x$filebase" = "x$last"; then
|
|
Packit |
fcad23 |
filebase="generic"
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
ac_cv_NETSNMP_SYSTEM_INCLUDE_FILE="net-snmp/system/$filebase.h"
|
|
Packit |
fcad23 |
changequote([, ])
|
|
Packit |
fcad23 |
AC_MSG_RESULT($ac_cv_NETSNMP_SYSTEM_INCLUDE_FILE)
|
|
Packit |
fcad23 |
AC_DEFINE_UNQUOTED(NETSNMP_SYSTEM_INCLUDE_FILE, "$ac_cv_NETSNMP_SYSTEM_INCLUDE_FILE")
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Determine appropriate <net-snmp/machine/{cpu}.h> include
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([for machine-type include file])
|
|
Packit |
fcad23 |
changequote(, )
|
|
Packit |
fcad23 |
filebase=$target_cpu
|
|
Packit |
fcad23 |
while test "x$filebase" != "x$last" -a ! -f $srcdir/include/net-snmp/machine/$filebase.h
|
|
Packit |
fcad23 |
do
|
|
Packit |
fcad23 |
last=$filebase
|
|
Packit |
fcad23 |
filebase=`echo $filebase | $SED 's/[-._][^-._]*$//'`
|
|
Packit |
fcad23 |
done
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
if test "x$filebase" = "x$last"; then
|
|
Packit |
fcad23 |
filebase="generic"
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
ac_cv_NETSNMP_MACHINE_INCLUDE_FILE="net-snmp/machine/$filebase.h"
|
|
Packit |
fcad23 |
changequote([, ])
|
|
Packit |
fcad23 |
AC_MSG_RESULT([$ac_cv_NETSNMP_MACHINE_INCLUDE_FILE])
|
|
Packit |
fcad23 |
AC_DEFINE_UNQUOTED(NETSNMP_MACHINE_INCLUDE_FILE, "$ac_cv_NETSNMP_MACHINE_INCLUDE_FILE")
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
# Platform-specific compilation checks:
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Preprocessor checks:
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# More sensible system identifier (MinGW)
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
if test "x$PARTIALTARGETOS" = "xmingw32msvc"; then
|
|
Packit |
fcad23 |
CFLAGS="$CFLAGS -Dmingw32"
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Handle .in file extension (GCC)
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([for additional cpp flags])
|
|
Packit |
fcad23 |
if test "x$GCC" = "xyes" -a "x$CPP" = "x$CC -E"; then
|
|
Packit |
fcad23 |
EXTRACPPFLAGS="-x c"
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
EXTRACPPFLAGS=""
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Solaris extra CPP flags (Solaris)
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
if test "x$GCC" != "xyes"; then
|
|
Packit |
fcad23 |
case $target_os in
|
|
Packit |
fcad23 |
solaris*) EXTRACPPFLAGS="$EXTRACPPFLAGS -Xs" ;;
|
|
Packit |
fcad23 |
esac
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_SUBST(EXTRACPPFLAGS)
|
|
Packit |
fcad23 |
AC_MSG_RESULT($EXTRACPPFLAGS)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Compiler checks:
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
AC_PATH_PROG([CCPATH],$CC)
|
|
Packit |
fcad23 |
case $target_os in
|
|
Packit |
fcad23 |
bsdi*)
|
|
Packit |
fcad23 |
# Check for bundled compiler (BSDi)
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
if test "x$CCPATH" = "x/usr/ucb/cc" -o "x$CCPATH" = "x/usr/bin/cc"; then
|
|
Packit |
fcad23 |
AC_MSG_ERROR([
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
*** The BSDI /usr/ucb/cc compiler does not work with this package.
|
|
Packit |
fcad23 |
*** Please run configure with --with-cc=gcc
|
|
Packit |
fcad23 |
])
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
;;
|
|
Packit |
fcad23 |
solaris*)
|
|
Packit |
fcad23 |
# Check for bundled compiler (Solaris)
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
if test "x$CCPATH" = "x/usr/ucb/cc"; then
|
|
Packit |
fcad23 |
AC_MSG_ERROR([
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
*** The solaris /usr/ucb/cc compiler does not work with this package.
|
|
Packit |
fcad23 |
*** Please put a different compiler in your path first or run
|
|
Packit |
fcad23 |
*** configure with --with-cc=XX, where XX is the compiler you want to use.
|
|
Packit |
fcad23 |
])
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
;;
|
|
Packit |
fcad23 |
esac
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Compiler flags:
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
CFLAGS="-DNETSNMP_REMOVE_U64 $CFLAGS"
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# The Net-SNMP source code is not strict-aliasing safe, so add
|
|
Packit |
fcad23 |
# -fno-strict-aliasing to $CFLAGS if the compiler supports it.
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([whether the compiler supports -fno-strict-aliasing])
|
|
Packit |
fcad23 |
netsnmp_save_CFLAGS="$CFLAGS"
|
|
Packit |
fcad23 |
CFLAGS="-fno-strict-aliasing $CFLAGS"
|
|
Packit |
fcad23 |
AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], [AC_MSG_RESULT([yes])], [
|
|
Packit |
fcad23 |
AC_MSG_RESULT([no])
|
|
Packit |
fcad23 |
CFLAGS="$netsnmp_save_CFLAGS"
|
|
Packit |
fcad23 |
])
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Linker checks:
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
case $target_os in
|
|
Packit |
fcad23 |
aix4.2*|aix4.3*|aix5*|aix6*|aix7*)
|
|
Packit |
fcad23 |
# Runtime linking flags (AIX)
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([what linker flags to add to enable runtime linking on AIX])
|
|
Packit |
fcad23 |
for ld_flag in $LDFLAGS; do
|
|
Packit |
fcad23 |
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
|
|
Packit |
fcad23 |
netsnmp_aix_runtimelinking_flags_ok=yes
|
|
Packit |
fcad23 |
break
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
done
|
|
Packit |
fcad23 |
if test "X$netsnmp_aix_runtimelinking_flags_ok" != "Xyes"; then
|
|
Packit |
fcad23 |
if test "x$GCC" = "xyes"; then
|
|
Packit |
fcad23 |
netsnmp_aix_ldflags="-Wl,-brtl"
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
netsnmp_aix_ldflags="-brtl"
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
LDFLAGS="$netsnmp_aix_ldflags $LDFLAGS"
|
|
Packit |
fcad23 |
AC_MSG_RESULT($netsnmp_aix_ldflags)
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
AC_MSG_RESULT([none])
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
;;
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
darwin*)
|
|
Packit |
fcad23 |
# Flat Namespace linking (Mac OS/X)
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
AC_MSG_CHECKING([whether darwin ld might need -flat_namespace])
|
|
Packit |
fcad23 |
if test -z "$MACOSX_DEPLOYMENT_TARGET"; then
|
|
Packit |
fcad23 |
saved_LDFLAGS="$LDFLAGS"
|
|
Packit |
fcad23 |
LDFLAGS="-flat_namespace -framework CoreFoundation -framework CoreServices -framework DiskArbitration -framework IOKit $LDFLAGS"
|
|
Packit |
fcad23 |
AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
|
|
Packit |
fcad23 |
[AC_MSG_RESULT([yes])],
|
|
Packit |
fcad23 |
[LDFLAGS="$saved_LDFLAGS"; AC_MSG_RESULT([no])])
|
|
Packit |
fcad23 |
else
|
|
Packit |
fcad23 |
AC_MSG_RESULT([no])
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
;;
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
*)
|
|
Packit |
fcad23 |
;;
|
|
Packit |
fcad23 |
esac
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# dpkg package (swintst_apt)
|
|
Packit |
fcad23 |
# used in agent only
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
AC_PATH_PROG([DPKG_QUERY_PATH], dpkg-query)
|
|
Packit |
fcad23 |
if test x$DPKG_QUERY_PATH != x; then
|
|
Packit |
fcad23 |
AC_DEFINE(HAVE_DPKG_QUERY, 1, [Set if the dpkg-query command is available])
|
|
Packit |
fcad23 |
fi
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
# Non-program/compilation checks:
|
|
Packit |
fcad23 |
##
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
# Substitute version number.
|
|
Packit |
fcad23 |
#
|
|
Packit |
fcad23 |
AC_SUBST(VERSION, $PACKAGE_VERSION)
|
|
Packit |
fcad23 |
AC_MSG_CACHE_ADD(Net-SNMP Version: $PACKAGE_VERSION)
|
|
Packit |
fcad23 |
|