|
Packit |
db064d |
dnl Process this file with autoconf to produce a configure script.
|
|
Packit |
db064d |
|
|
Packit |
db064d |
AC_PREREQ(2.57)
|
|
Packit |
db064d |
AC_INIT(infiniband-diags, 2.2.0, linux-rdma@vger.kernel.org)
|
|
Packit |
db064d |
AC_CONFIG_AUX_DIR(config)
|
|
Packit |
db064d |
AC_CONFIG_MACRO_DIR(config)
|
|
Packit |
db064d |
AM_CONFIG_HEADER(config.h)
|
|
Packit |
db064d |
AM_INIT_AUTOMAKE([subdir-objects])
|
|
Packit |
db064d |
|
|
Packit |
db064d |
AC_SUBST(RELEASE, ${RELEASE:-unknown})
|
|
Packit |
db064d |
AC_SUBST(TARBALL, ${TARBALL:-${PACKAGE}-${VERSION}.tar.gz})
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl support debug mode
|
|
Packit |
db064d |
AC_ARG_ENABLE(debug,
|
|
Packit |
db064d |
[ --enable-debug Turn on debug mode],
|
|
Packit |
db064d |
[case "${enableval}" in
|
|
Packit |
db064d |
yes) debug=true ;;
|
|
Packit |
db064d |
no) debug=false ;;
|
|
Packit |
db064d |
*) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
|
|
Packit |
db064d |
esac],[debug=false])
|
|
Packit |
db064d |
AM_CONDITIONAL(DEBUG, test x$debug = xtrue)
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Checks for programs
|
|
Packit |
db064d |
AC_PROG_CC
|
|
Packit |
db064d |
AM_PROG_CC_C_O
|
|
Packit |
db064d |
AC_PROG_LIBTOOL
|
|
Packit |
db064d |
|
|
Packit |
db064d |
AC_CHECK_PROG(have_dash, [dash], true, false)
|
|
Packit |
db064d |
AM_CONDITIONAL(HAVE_DASH, test x$have_dash = xtrue)
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Checks for libraries
|
|
Packit |
db064d |
AC_CHECK_LIB(ibumad, umad_init, [],
|
|
Packit |
db064d |
AC_MSG_ERROR([umad_init() not found. diags require libibumad.]))
|
|
Packit |
db064d |
AC_CHECK_MEMBER([struct umad_port.link_layer],
|
|
Packit |
db064d |
[ac_have_umad_port_link_layer=yes],
|
|
Packit |
db064d |
[ac_have_umad_port_link_layer=no],
|
|
Packit |
db064d |
[#include <infiniband/umad.h>])
|
|
Packit |
db064d |
if test "$ac_have_umad_port_link_layer" = "yes"; then
|
|
Packit |
db064d |
AC_DEFINE([HAVE_UMAD_PORT_LINK_LAYER], 1, [Define to 1 if struct umad_port has link_layer member])
|
|
Packit |
db064d |
fi
|
|
Packit |
db064d |
AC_CHECK_LIB(osmcomp, cl_qmap_insert, [],
|
|
Packit |
db064d |
AC_MSG_ERROR([cl_qmap_insert() not found. diags require libosmcomp.]))
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Checks for header files.
|
|
Packit |
db064d |
AC_HEADER_STDC
|
|
Packit |
db064d |
AC_CHECK_HEADERS([stdlib.h string.h unistd.h fcntl.h inttypes.h netinet/in.h sys/ioctl.h sys/time.h])
|
|
Packit |
db064d |
AC_CHECK_HEADER(infiniband/umad.h, [],
|
|
Packit |
db064d |
AC_MSG_ERROR([<infiniband/umad.h> not found. diags require libibumad.])
|
|
Packit |
db064d |
)
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Checks for library functions
|
|
Packit |
db064d |
AC_FUNC_ERROR_AT_LINE
|
|
Packit |
db064d |
AC_FUNC_VPRINTF
|
|
Packit |
db064d |
AC_CHECK_FUNCS([strchr strrchr strtol strtoul memset strtoull])
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Checks for typedefs, structures, and compiler characteristics.
|
|
Packit |
db064d |
AC_C_CONST
|
|
Packit |
db064d |
AC_C_INLINE
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Define a configure directory
|
|
Packit |
db064d |
IBDIAG_CONFIG_PATH_TMP1="`eval echo ${sysconfdir}`"
|
|
Packit |
db064d |
IBDIAG_CONFIG_PATH_TMP2="`echo $IBDIAG_CONFIG_PATH_TMP1 | sed 's/^NONE/$ac_default_prefix/'`"
|
|
Packit |
db064d |
IBDIAG_CONFIG_PATH="`eval echo $IBDIAG_CONFIG_PATH_TMP2`/infiniband-diags"
|
|
Packit |
db064d |
AC_SUBST(IBDIAG_CONFIG_PATH)
|
|
Packit |
db064d |
AC_DEFINE_UNQUOTED([IBDIAG_CONFIG_PATH], "$IBDIAG_CONFIG_PATH", [Define the path to configurations])
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Check if we should include test utilities
|
|
Packit |
db064d |
AC_MSG_CHECKING(for --enable-test-utils)
|
|
Packit |
db064d |
AC_ARG_ENABLE(test-utils,
|
|
Packit |
db064d |
[ --enable-test-utils build additional test utilities (default=no)],
|
|
Packit |
db064d |
[case "${enableval}" in
|
|
Packit |
db064d |
yes) tutils=yes ;;
|
|
Packit |
db064d |
no) tutils=no ;;
|
|
Packit |
db064d |
*) AC_MSG_ERROR(bad value ${enableval} for --enable-test-utils) ;;
|
|
Packit |
db064d |
esac],[tutils=no])
|
|
Packit |
db064d |
AM_CONDITIONAL(ENABLE_TEST_UTILS, test x$tutils = xyes)
|
|
Packit |
db064d |
AC_MSG_RESULT(${tutils=no})
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Check if we should include compat utils
|
|
Packit |
db064d |
AC_MSG_CHECKING(for --enable-compat-utils)
|
|
Packit |
db064d |
AC_ARG_ENABLE(compat-utils,
|
|
Packit |
db064d |
[ --enable-compat-utils build deprecated compatibility utilities (default=no)],
|
|
Packit |
db064d |
[case "${enableval}" in
|
|
Packit |
db064d |
yes) cutils=yes ;;
|
|
Packit |
db064d |
no) cutils=no ;;
|
|
Packit |
db064d |
*) AC_MSG_ERROR(bad value ${enableval} for --enable-compat-utils) ;;
|
|
Packit |
db064d |
esac],[cutils=no])
|
|
Packit |
db064d |
AM_CONDITIONAL(ENABLE_COMPAT_UTILS, test x$cutils = xyes)
|
|
Packit |
db064d |
AC_MSG_RESULT(${cutils=no})
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Check for perl and perl install location
|
|
Packit |
db064d |
AC_MSG_CHECKING(for --with-perl-path )
|
|
Packit |
db064d |
AC_ARG_WITH(perl-path,
|
|
Packit |
db064d |
AC_HELP_STRING([--with-perl-path=path],
|
|
Packit |
db064d |
[define perl location]),
|
|
Packit |
db064d |
[ case "$withval" in
|
|
Packit |
db064d |
no)
|
|
Packit |
db064d |
;;
|
|
Packit |
db064d |
*)
|
|
Packit |
db064d |
withperlpath=yes
|
|
Packit |
db064d |
PERL=$withval
|
|
Packit |
db064d |
;;
|
|
Packit |
db064d |
esac ]
|
|
Packit |
db064d |
)
|
|
Packit |
db064d |
AC_MSG_RESULT(${withperlpath=no})
|
|
Packit |
db064d |
AC_SUBST(PERL)
|
|
Packit |
db064d |
|
|
Packit |
db064d |
if test $withperlpath = "no"
|
|
Packit |
db064d |
then
|
|
Packit |
db064d |
AC_PATH_PROG([PERL], [perl])
|
|
Packit |
db064d |
fi
|
|
Packit |
db064d |
AC_SUBST(PERL)
|
|
Packit |
db064d |
|
|
Packit |
db064d |
AC_MSG_CHECKING(for --with-perl-installdir )
|
|
Packit |
db064d |
AC_ARG_WITH(perl-installdir,
|
|
Packit |
db064d |
AC_HELP_STRING([--with-perl-installdir=path],
|
|
Packit |
db064d |
[define perl install path]),
|
|
Packit |
db064d |
[ case "$withval" in
|
|
Packit |
db064d |
no)
|
|
Packit |
db064d |
;;
|
|
Packit |
db064d |
*)
|
|
Packit |
db064d |
withperlinstalldir=yes
|
|
Packit |
db064d |
PERL_INSTALLDIR=$withval
|
|
Packit |
db064d |
;;
|
|
Packit |
db064d |
esac ]
|
|
Packit |
db064d |
)
|
|
Packit |
db064d |
AC_MSG_RESULT(${withperlinstalldir=no})
|
|
Packit |
db064d |
AC_SUBST(PERL_INSTALLDIR)
|
|
Packit |
db064d |
|
|
Packit |
db064d |
if test $withperlinstalldir = "no"
|
|
Packit |
db064d |
then
|
|
Packit |
db064d |
PERL_INSTALLDIR=`$PERL -e 'use Config; $T=$Config{installvendorlib}; print $T;'`
|
|
Packit |
db064d |
fi
|
|
Packit |
db064d |
AC_SUBST(PERL_INSTALLDIR)
|
|
Packit |
db064d |
|
|
Packit |
db064d |
AC_CACHE_CHECK(whether ld accepts --version-script, ac_cv_version_script,
|
|
Packit |
db064d |
if test -n "`$LD --help < /dev/null 2>/dev/null | grep version-script`"; then
|
|
Packit |
db064d |
ac_cv_version_script=yes
|
|
Packit |
db064d |
else
|
|
Packit |
db064d |
ac_cv_version_script=no
|
|
Packit |
db064d |
fi)
|
|
Packit |
db064d |
|
|
Packit |
db064d |
AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$ac_cv_version_script" = "yes")
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Define override for IBPATH
|
|
Packit |
db064d |
AC_ARG_WITH(ibpath_override,
|
|
Packit |
db064d |
[ --with-ibpath_override=<path> define ib binaries path],
|
|
Packit |
db064d |
AC_MSG_NOTICE(Using IBPATH : $with_ibpath_override),
|
|
Packit |
db064d |
with_ibpath_override=)
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Make appropriate substitution for IB script path
|
|
Packit |
db064d |
dnl Must expand nested unquoting
|
|
Packit |
db064d |
IBSCRIPTPATH_TMP1="`eval echo ${sbindir}`"
|
|
Packit |
db064d |
IBSCRIPTPATH_TMP2="`echo $IBSCRIPTPATH_TMP1 | sed 's/^NONE/$ac_default_prefix/'`"
|
|
Packit |
db064d |
IBSCRIPTPATH="${with_ibpath_override:-`eval echo $IBSCRIPTPATH_TMP2`}"
|
|
Packit |
db064d |
AC_SUBST(IBSCRIPTPATH)
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Begin libibnetdisc stuff
|
|
Packit |
db064d |
ibnetdisc_api_version=`grep LIBVERSION $srcdir/libibnetdisc/libibnetdisc.ver | sed 's/LIBVERSION=//'`
|
|
Packit |
db064d |
if test -z $ibnetdisc_api_version; then
|
|
Packit |
db064d |
echo "FAILED to find $srcdir/libibnetdisc/libibnetdisc.ver"
|
|
Packit |
db064d |
exit 1
|
|
Packit |
db064d |
fi
|
|
Packit |
db064d |
AC_SUBST(ibnetdisc_api_version)
|
|
Packit |
db064d |
dnl End libibnetdisc stuff
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Begin libibmad stuff
|
|
Packit |
db064d |
ibmad_api_version=`grep LIBVERSION $srcdir/libibmad/libibmad.ver | sed 's/LIBVERSION=//'`
|
|
Packit |
db064d |
if test -z $ibmad_api_version; then
|
|
Packit |
db064d |
ibmad_api_version=1:0:0
|
|
Packit |
db064d |
fi
|
|
Packit |
db064d |
AC_SUBST(ibmad_api_version)
|
|
Packit |
db064d |
dnl End libibmad stuff
|
|
Packit |
db064d |
|
|
Packit |
db064d |
|
|
Packit |
db064d |
dnl Generate doc/man/*.in files if possible
|
|
Packit |
db064d |
DOC_DATE="`date +%Y-%m-%d`"
|
|
Packit |
db064d |
AC_SUBST(BUILD_DATE)
|
|
Packit |
db064d |
AC_CHECK_PROG(have_rst2man, rst2man, "yes")
|
|
Packit |
db064d |
if test x$have_rst2man != xyes; then
|
|
Packit |
db064d |
AC_CHECK_PROG(have_rst2man, rst2man.py, "yes")
|
|
Packit |
db064d |
fi
|
|
Packit |
db064d |
if test x$have_rst2man == xyes; then
|
|
Packit |
db064d |
$srcdir/doc/generate
|
|
Packit |
db064d |
else
|
|
Packit |
db064d |
if test -f $srcdir/doc/man/infiniband-diags.8.in; then
|
|
Packit |
db064d |
echo "WARNING: 'rst2man' not found; using premade man pages"
|
|
Packit |
db064d |
else
|
|
Packit |
db064d |
echo "FAILED to find 'rst2man' required to build man pages"
|
|
Packit |
db064d |
exit 1
|
|
Packit |
db064d |
fi
|
|
Packit |
db064d |
fi
|
|
Packit |
db064d |
dnl
|
|
Packit |
db064d |
|
|
Packit |
db064d |
AC_CONFIG_FILES([\
|
|
Packit |
db064d |
Makefile \
|
|
Packit |
db064d |
infiniband-diags.spec \
|
|
Packit |
db064d |
include/ibdiag_version.h \
|
|
Packit |
db064d |
scripts/ibcheckerrors \
|
|
Packit |
db064d |
scripts/ibcheckerrs \
|
|
Packit |
db064d |
scripts/ibchecknet \
|
|
Packit |
db064d |
scripts/ibchecknode \
|
|
Packit |
db064d |
scripts/ibcheckport \
|
|
Packit |
db064d |
scripts/ibcheckportstate \
|
|
Packit |
db064d |
scripts/ibcheckportwidth \
|
|
Packit |
db064d |
scripts/ibcheckstate \
|
|
Packit |
db064d |
scripts/ibcheckwidth \
|
|
Packit |
db064d |
scripts/ibclearcounters \
|
|
Packit |
db064d |
scripts/ibclearerrors \
|
|
Packit |
db064d |
scripts/ibdatacounts \
|
|
Packit |
db064d |
scripts/ibdatacounters \
|
|
Packit |
db064d |
scripts/ibhosts \
|
|
Packit |
db064d |
scripts/ibnodes \
|
|
Packit |
db064d |
scripts/ibswitches \
|
|
Packit |
db064d |
scripts/ibrouters \
|
|
Packit |
db064d |
scripts/iblinkinfo.pl \
|
|
Packit |
db064d |
scripts/ibqueryerrors.pl \
|
|
Packit |
db064d |
scripts/dump_lfts.sh \
|
|
Packit |
db064d |
scripts/dump_mfts.sh \
|
|
Packit |
db064d |
doc/man/ibaddr.8 \
|
|
Packit |
db064d |
doc/man/check_lft_balance.8 \
|
|
Packit |
db064d |
doc/man/ibcacheedit.8 \
|
|
Packit |
db064d |
doc/man/ibccconfig.8 \
|
|
Packit |
db064d |
doc/man/ibccquery.8 \
|
|
Packit |
db064d |
doc/man/dump_fts.8 \
|
|
Packit |
db064d |
doc/man/ibhosts.8 \
|
|
Packit |
db064d |
doc/man/ibidsverify.8 \
|
|
Packit |
db064d |
doc/man/iblinkinfo.8 \
|
|
Packit |
db064d |
doc/man/ibfindnodesusing.8 \
|
|
Packit |
db064d |
doc/man/ibnetdiscover.8 \
|
|
Packit |
db064d |
doc/man/ibnodes.8 \
|
|
Packit |
db064d |
doc/man/ibping.8 \
|
|
Packit |
db064d |
doc/man/ibportstate.8 \
|
|
Packit |
db064d |
doc/man/ibqueryerrors.8 \
|
|
Packit |
db064d |
doc/man/ibroute.8 \
|
|
Packit |
db064d |
doc/man/ibrouters.8 \
|
|
Packit |
db064d |
doc/man/ibstat.8 \
|
|
Packit |
db064d |
doc/man/ibstatus.8 \
|
|
Packit |
db064d |
doc/man/ibswitches.8 \
|
|
Packit |
db064d |
doc/man/ibsysstat.8 \
|
|
Packit |
db064d |
doc/man/ibtracert.8 \
|
|
Packit |
db064d |
doc/man/perfquery.8 \
|
|
Packit |
db064d |
doc/man/saquery.8 \
|
|
Packit |
db064d |
doc/man/sminfo.8 \
|
|
Packit |
db064d |
doc/man/smpdump.8 \
|
|
Packit |
db064d |
doc/man/smpquery.8 \
|
|
Packit |
db064d |
doc/man/vendstat.8 \
|
|
Packit |
db064d |
doc/man/infiniband-diags.8 \
|
|
Packit |
db064d |
libibnetdisc/Makefile \
|
|
Packit |
db064d |
libibmad/Makefile \
|
|
Packit |
db064d |
])
|
|
Packit |
db064d |
AC_OUTPUT
|