|
Packit |
db01ca |
dnl
|
|
Packit |
db01ca |
dnl autoconf and automake for openhpi
|
|
Packit |
db01ca |
dnl initial file by Andrea Brugger <andrea.l.brugger@intel.com> 1/03
|
|
Packit |
db01ca |
dnl various hacks by Sean Dague <http://dague.net/sean> 4/23/03
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_PREREQ(2.57)
|
|
Packit |
db01ca |
AC_INIT(openhpi, 3.8.0)
|
|
Packit |
db01ca |
AC_CONFIG_SRCDIR(openhpi.spec.in)
|
|
Packit |
db01ca |
AM_INIT_AUTOMAKE([1.8])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AM_CONFIG_HEADER(config.h)
|
|
Packit |
db01ca |
AH_TOP([#ifndef __OPENHPI_CONFIG_H
|
|
Packit |
db01ca |
#define __OPENHPI_CONFIG_H])
|
|
Packit |
db01ca |
AH_BOTTOM([#endif /* __OPENHPI_CONFIG_H */])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
#
|
|
Packit |
db01ca |
# (major version) = (first number) - (third number)
|
|
Packit |
db01ca |
# (minor version) = (third number)
|
|
Packit |
db01ca |
# (patch version) = (second number)
|
|
Packit |
db01ca |
# example HPI_LIB_VERSION=13:4:11
|
|
Packit |
db01ca |
# major version: 2 = 13 - 11
|
|
Packit |
db01ca |
# minor version: 11 = 11
|
|
Packit |
db01ca |
# patch version: 4 = 4
|
|
Packit |
db01ca |
#
|
|
Packit |
db01ca |
HPI_LIB_VERSION=11:0:8
|
|
Packit |
db01ca |
HPI_PKG=$PACKAGE_NAME
|
|
Packit |
db01ca |
HPI_UTIL_PKG=${PACKAGE_NAME}utils
|
|
Packit |
db01ca |
HPI_CLIENT_PKG=${PACKAGE_NAME}client
|
|
Packit |
db01ca |
AC_SUBST(HPI_CLIENT_PKG)
|
|
Packit |
db01ca |
AC_SUBST(HPI_UTIL_PKG)
|
|
Packit |
db01ca |
AC_SUBST(HPI_PKG)
|
|
Packit |
db01ca |
AC_SUBST(HPI_LIB_VERSION)
|
|
Packit |
db01ca |
AC_SUBST(ac_configure_args)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl Checks for programs
|
|
Packit |
db01ca |
AC_PROG_CC
|
|
Packit |
db01ca |
AM_PROG_AS
|
|
Packit |
db01ca |
AC_LIBTOOL_DLOPEN
|
|
Packit |
db01ca |
AC_PROG_LIBTOOL
|
|
Packit |
db01ca |
AC_PROG_LN_S
|
|
Packit |
db01ca |
AC_PROG_CXX
|
|
Packit |
db01ca |
AC_PROG_CPP
|
|
Packit |
db01ca |
AC_PROG_INSTALL
|
|
Packit |
db01ca |
AC_PROG_LN_S
|
|
Packit |
db01ca |
AC_PROG_MAKE_SET
|
|
Packit |
db01ca |
AC_PROG_AWK
|
|
Packit |
db01ca |
AC_PROG_GREP
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
enabled_non32bit="no"
|
|
Packit |
db01ca |
AC_ARG_ENABLE([non32bit-int],
|
|
Packit |
db01ca |
[ --enable-non32bit-int Allow compile on non 32bit int architectures [[default=no]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
enabled_non32bit="yes"
|
|
Packit |
db01ca |
fi])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl die on int != 32bits. This is too instrumental to our code right now.
|
|
Packit |
db01ca |
dnl AC_MSG_CHECKING(int is 4 bytes)
|
|
Packit |
db01ca |
OH_SET_SIZES
|
|
Packit |
db01ca |
if test "x$OH_SIZEOF_INT" != "x4"; then
|
|
Packit |
db01ca |
if test "x$enabled_non32bit" = "xyes"; then
|
|
Packit |
db01ca |
AC_MSG_WARN([
|
|
Packit |
db01ca |
*** Size of int is not 4 bytes, it is $OH_SIZEOF_INT bytes on this platform.
|
|
Packit |
db01ca |
*** The --enable_non32bit_int arg has been used to force compilation regardless.
|
|
Packit |
db01ca |
*** Execution on this platform is not supported and could produce undefined
|
|
Packit |
db01ca |
*** behavior.
|
|
Packit |
db01ca |
])
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_MSG_ERROR([
|
|
Packit |
db01ca |
*** Size of int is not 4 bytes, it is $OH_SIZEOF_INT bytes on this platform.
|
|
Packit |
db01ca |
*** Execution on this platform is not supported and could produce undefined
|
|
Packit |
db01ca |
*** behavior.
|
|
Packit |
db01ca |
*** Please contact the openhpi development team to fix this
|
|
Packit |
db01ca |
])
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AM_CONDITIONAL(CROSS_COMPILATION, test x$cross_compiling = xyes)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl Check for libraries
|
|
Packit |
db01ca |
have_uuid=no
|
|
Packit |
db01ca |
have_openipmi=no
|
|
Packit |
db01ca |
have_fam=no
|
|
Packit |
db01ca |
have_sysfs=no
|
|
Packit |
db01ca |
have_rtas_lib=no
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl Check for GLIB
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_CHECK_PROG([found_pkg_config],[pkg-config],[yes])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
if test "x$found_pkg_config" != "xyes"; then
|
|
Packit |
db01ca |
OH_CHECK_FAIL(pkg-config,pkg-config)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
PKG_CFG_SETPATH
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
# check for gcc version
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_MSG_CHECKING(gcc >= 3.2)
|
|
Packit |
db01ca |
OH_CHECK_GCC(3,2)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl glib 2.x checks
|
|
Packit |
db01ca |
GLIB_REQUIRED_VERSION=2.12
|
|
Packit |
db01ca |
GLIB=glib-2.0
|
|
Packit |
db01ca |
GTHREAD=gthread-2.0
|
|
Packit |
db01ca |
GMODULE=gmodule-2.0
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
if pkg-config --atleast-version $GLIB_REQUIRED_VERSION $GLIB; then
|
|
Packit |
db01ca |
:
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_MSG_ERROR([
|
|
Packit |
db01ca |
*** GLIB >= $GLIB_REQUIRED_VERSION is required. The latest version of
|
|
Packit |
db01ca |
*** GLIB is always available from ftp://ftp.gtk.org/.])
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
exact_version=`pkg-config --modversion $GLIB`;
|
|
Packit |
db01ca |
GLIB_CFLAGS=`pkg-config --cflags $GLIB $GTHREAD`
|
|
Packit |
db01ca |
GLIB_LIBS=`pkg-config --libs $GLIB $GTHREAD`
|
|
Packit |
db01ca |
GLIB_ONLY_CFLAGS=`pkg-config --cflags $GLIB`
|
|
Packit |
db01ca |
GLIB_ONLY_LIBS=`pkg-config --libs $GLIB`
|
|
Packit |
db01ca |
GMODULE_ONLY_CFLAGS=`pkg-config --cflags $GMODULE`
|
|
Packit |
db01ca |
GMODULE_ONLY_LIBS=`pkg-config --libs $GMODULE`
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
# On some versions of Solaris the pkg-config file for gthread-2.0 contains a
|
|
Packit |
db01ca |
# compiler option, '-mt', that is incompatible with gcc
|
|
Packit |
db01ca |
case $host_os in
|
|
Packit |
db01ca |
solaris2.10)
|
|
Packit |
db01ca |
GLIB_CFLAGS=`echo $GLIB_CFLAGS | sed -e 's/-mt/-D_REENTRANT/g'`
|
|
Packit |
db01ca |
GLIB_LIBS=`echo $GLIB_LIBS | sed -e 's/-mt//g'`
|
|
Packit |
db01ca |
;;
|
|
Packit |
db01ca |
esac
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_MSG_CHECKING(for GLIB - version >= $GLIB_REQUIRED_VERSION)
|
|
Packit |
db01ca |
AC_MSG_RESULT(yes (version $exact_version))
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl if the glib is installed on a non standard place
|
|
Packit |
db01ca |
dnl like /opt/gnome/lib AC_CHECK_LIB will find the library.
|
|
Packit |
db01ca |
old_cflags=$CFLAGS
|
|
Packit |
db01ca |
old_libs=$LIBS
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
CFLAGS="$CFLAGS $GLIB_CFLAGS"
|
|
Packit |
db01ca |
LIBS="$LIBS $GLIB_LIBS"
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_CHECK_LIB([$GLIB], [g_slist_alloc], [],
|
|
Packit |
db01ca |
[
|
|
Packit |
db01ca |
OH_CHECK_FAIL(glib,glib-devel)
|
|
Packit |
db01ca |
])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
CFLAGS=$old_cflags
|
|
Packit |
db01ca |
LIBS=$old_libs
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_SUBST(GLIB_ONLY_CFLAGS)
|
|
Packit |
db01ca |
AC_SUBST(GLIB_ONLY_LIBS)
|
|
Packit |
db01ca |
AC_SUBST(GMODULE_ONLY_CFLAGS)
|
|
Packit |
db01ca |
AC_SUBST(GMODULE_ONLY_LIBS)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_CHECK_LIB([sysfs], [sysfs_get_mnt_path], [have_sysfs=yes])
|
|
Packit |
db01ca |
AC_CHECK_HEADER([sysfs/libsysfs.h], [], [have_sysfs=no])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_WITH(net-snmp-config,
|
|
Packit |
db01ca |
[[ --with-net-snmp-config=SCRIPT run SCRIPT as net-snmp-config]],
|
|
Packit |
db01ca |
[net_snmp_config=$withval])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
OH_CHECK_NETSNMP
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_CHECK_LIB([uuid], [uuid_generate], [have_uuid=yes])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl gcrypt is used for encrypting the conf file
|
|
Packit |
db01ca |
AC_CHECK_LIB([gcrypt],[gcry_control],[have_gcrypt_lib=yes],[have_gcrypt_lib=no])
|
|
Packit |
db01ca |
AC_CHECK_HEADERS([gcrypt.h],[have_gcrypt=yes],[have_gcrypt=no])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl ssl is used for md2/md5 authentification in ipmidirect
|
|
Packit |
db01ca |
dnl and for SSL-based communication in ilo2_ribcl and oa_soap
|
|
Packit |
db01ca |
AC_CHECK_LIB([crypto],[MD5_Init],[CRYPTO_LIB=-lcrypto],[CRYPTO_LIB=])
|
|
Packit |
db01ca |
AC_SUBST(CRYPTO_LIB)
|
|
Packit |
db01ca |
AC_CHECK_LIB([ssl],[SSL_library_init],[SSL_LIB=-lssl],[SSL_LIB=])
|
|
Packit |
db01ca |
AC_SUBST(SSL_LIB)
|
|
Packit |
db01ca |
AC_CHECK_HEADERS([openssl/md2.h openssl/md5.h openssl/bio.h openssl/ssl.h openssl/err.h],[have_openssl=yes],[have_openssl=no])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl xml is used for XML-based communication in ilo2_ribcl and oa_soap
|
|
Packit |
db01ca |
AC_CHECK_LIB([xml2],[xmlParseMemory],[XML2_LIB=-lxml2],[XML2_LIB=])
|
|
Packit |
db01ca |
AC_CHECK_HEADERS([libxml2/libxml/xmlexports.h],[XML2_INCLUDE="-I/usr/include/libxml2"],[XML2_INCLUDE=])
|
|
Packit |
db01ca |
AC_SUBST(XML2_LIB)
|
|
Packit |
db01ca |
AC_SUBST(XML2_INCLUDE)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl curl, json-c and rabbitmq-c are used in ov_rest plugin
|
|
Packit |
db01ca |
AC_CHECK_LIB([curl],[curl_global_init],[CURL_LIB=-lcurl],[CURL_LIB=])
|
|
Packit |
db01ca |
AC_SUBST(CURL_LIB)
|
|
Packit |
db01ca |
AC_CHECK_HEADERS([curl/curl.h],[have_curl=yes],[have_curl=no])
|
|
Packit |
db01ca |
AC_CHECK_LIB([json-c],[json_tokener_parse],[JSON_C_LIB=-ljson-c],[JSON_C_LIB=])
|
|
Packit |
db01ca |
AC_CHECK_HEADERS([json-c/json.h],[JSON_C_INCLUDE="-I/usr/include/json-c"],[JSON_C_INCLUDE=])
|
|
Packit |
db01ca |
AC_SUBST(JSON_C_LIB)
|
|
Packit |
db01ca |
AC_SUBST(JSON_C_INCLUDE)
|
|
Packit |
db01ca |
AC_CHECK_LIB([rabbitmq],[amqp_new_connection],[RABBITMQ_LIB=-lrabbitmq],[RABBITMQ_LIB=])
|
|
Packit |
db01ca |
AC_SUBST(RABBITMQ_LIB)
|
|
Packit |
db01ca |
AC_CHECK_FILE([/etc/os-release],[DISTRO=`grep "^ID=" /etc/os-release | awk -F"\"" '{ print $2 }'`])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_CHECK_HEADERS([amqp.h],[have_rabbitmq=yes],[have_rabbitmq=no])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl Build daemon statically or dynamically.
|
|
Packit |
db01ca |
openhpid_static="no"
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
ENABLED_DIRS="$ENABLED_DIRS openhpid"
|
|
Packit |
db01ca |
AC_ARG_ENABLE([daemon],
|
|
Packit |
db01ca |
[ --enable-dynamic-daemon build HPI daemon and client library non-statically[[default=yes]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xno"; then
|
|
Packit |
db01ca |
openhpid_static="yes"
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[openhpid_static="no"])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AM_CONDITIONAL(OPENHPID_STATIC, test x$openhpid_static = xyes)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_ENABLE([clients],
|
|
Packit |
db01ca |
[ --enable-clients build HPI client programs [[default=yes]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
ENABLED_DIRS="$ENABLED_DIRS clients"
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[ENABLED_DIRS="$ENABLED_DIRS clients"])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_ENABLE([cpp_wrappers],
|
|
Packit |
db01ca |
[ --enable-cpp_wrappers build SaHpi C++ wrapper objects [[default=no]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
ENABLED_DIRS="$ENABLED_DIRS cpp"
|
|
Packit |
db01ca |
fi])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_SUBST(ENABLED_DIRS)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl Old autotools do not define docdir
|
|
Packit |
db01ca |
AC_SUBST([docdir])
|
|
Packit |
db01ca |
if test x$docdir = x; then
|
|
Packit |
db01ca |
AC_SUBST([docdir], ${datadir}/doc/${PACKAGE_NAME})
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl Checks for header files.
|
|
Packit |
db01ca |
AC_HEADER_STDC
|
|
Packit |
db01ca |
AC_CHECK_HEADERS([fcntl.h stdlib.h string.h sys/time.h unistd.h stdarg.h netinet/in.h])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl Checks for library functions.
|
|
Packit |
db01ca |
AC_FUNC_ERROR_AT_LINE
|
|
Packit |
db01ca |
AC_FUNC_VPRINTF
|
|
Packit |
db01ca |
AC_CHECK_FUNCS([gettimeofday memset strdup])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl Checks for other helper programs
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_PATH_PROGS(RPM, rpmbuild)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl plugin enablement stanzas
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_CHECK_HEADER([linux/watchdog.h], [have_linux_watchdog_h=yes], [], [#include <linux/types.h>])
|
|
Packit |
db01ca |
AC_ARG_ENABLE([watchdog],
|
|
Packit |
db01ca |
[ --enable-watchdog build watchdog plugin [[default=yes if linux/watchdog.h exists]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_linux_watchdog_h" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(WATCHDOG,watchdog)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_MSG_ERROR("Can not build the watchdog plugin without linux/watchdog.h.")
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WATCHDOG,"")
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[if test "x$have_linux_watchdog_h" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(WATCHDOG,watchdog)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WATCHDOG,"")
|
|
Packit |
db01ca |
fi])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl
|
|
Packit |
db01ca |
dnl We really need to make ipmi enablement be contigent on OpenIPMI
|
|
Packit |
db01ca |
dnl
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
if PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig pkg-config --atleast-version 1.4.20 OpenIPMI; then
|
|
Packit |
db01ca |
have_openipmi=yes
|
|
Packit |
db01ca |
AC_CHECK_LIB([OpenIPMI], [ipmi_smi_setup_con], [have_openipmi=yes])
|
|
Packit |
db01ca |
OPENIPMI_CFLAGS=`PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig pkg-config --cflags OpenIPMI`
|
|
Packit |
db01ca |
AC_SUBST(OPENIPMI_CFLAGS)
|
|
Packit |
db01ca |
OPENIPMI_LIBS=`PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig pkg-config --libs OpenIPMI`
|
|
Packit |
db01ca |
AC_SUBST(OPENIPMI_LIBS)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_ENABLE([ipmi],
|
|
Packit |
db01ca |
[ --enable-ipmi build openipmi plugin [[deprecated, default=no]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_openipmi" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(IPMI,ipmi)
|
|
Packit |
db01ca |
AC_SUBST(WITH_IPMI,1)
|
|
Packit |
db01ca |
AC_MSG_WARN([
|
|
Packit |
db01ca |
*** The ipmi plugin is deprecated. Please consider to replace it
|
|
Packit |
db01ca |
*** by using the ipmidirect plugin
|
|
Packit |
db01ca |
])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(OpenIPMI,libOpenIPMI-devel,http://openipmi.sf.net,
|
|
Packit |
db01ca |
Can not build IPMI support without OpenIPMI >= 1.4.20)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_IPMI,0)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[AC_SUBST(WITH_IPMI,0)])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_ENABLE([sysfs],
|
|
Packit |
db01ca |
[ --enable-sysfs build sysfs plugin [[default=yes if libsysfs exists]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_sysfs" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(SYSFS,sysfs)
|
|
Packit |
db01ca |
AC_SUBST(WITH_SYSFS,1)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(libsysfs,,http://linux-diag.sf.net,
|
|
Packit |
db01ca |
Can not build sysfs support without libsysfs)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_SYSFS,0)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[if test "x$have_sysfs" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(SYSFS,sysfs)
|
|
Packit |
db01ca |
AC_SUBST(WITH_SYSFS,1)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_SYSFS,0)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_ENABLE([snmp_bc],
|
|
Packit |
db01ca |
[ --enable-snmp_bc build IBM Blade Center plugin [[default=yes if net-snmp and libuuid are installed]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_netsnmp" != "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(WITH_SNMP_BC,0)
|
|
Packit |
db01ca |
OH_CHECK_FAIL(net-snmp,net-snmp-devel,http://net-snmp.sourceforge.net/,
|
|
Packit |
db01ca |
Can not build IBM Blade Center support without net-snmp)
|
|
Packit |
db01ca |
elif test "x$have_uuid" != "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(WITH_SNMP_BC,0)
|
|
Packit |
db01ca |
OH_CHECK_FAIL(libuuid,libuuid-devel or e2fsprogs-devel)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
SNMPDIR=snmp
|
|
Packit |
db01ca |
AC_SUBST(SNMP_BC,snmp_bc)
|
|
Packit |
db01ca |
AC_SUBST(WITH_SNMP_BC,1)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_SNMP_BC,0)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[if test "x$have_netsnmp" != "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(WITH_SNMP_BC,0)
|
|
Packit |
db01ca |
AC_MSG_NOTICE(snmp_bc plugin is disabled since net-snmp was not found)
|
|
Packit |
db01ca |
elif test "x$have_uuid" != "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(WITH_SNMP_BC,0)
|
|
Packit |
db01ca |
AC_MSG_NOTICE(snmp_bc plugin is disabled since libuuid was not found)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
SNMPDIR=snmp
|
|
Packit |
db01ca |
AC_SUBST(SNMP_BC,snmp_bc)
|
|
Packit |
db01ca |
AC_SUBST(WITH_SNMP_BC,1)
|
|
Packit |
db01ca |
fi]
|
|
Packit |
db01ca |
)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_ENABLE([ipmidirect],
|
|
Packit |
db01ca |
[ --enable-ipmidirect build direct ipmi plugin [[default=yes]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(IPMIDIRECT,ipmidirect)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[AC_SUBST(IPMIDIRECT,ipmidirect)])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl [AC_SUBST(IPMIDIRECT,ipmidirect)])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
OH_CHECK_RTAS
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
#Configure options for the RTAS plugin
|
|
Packit |
db01ca |
AC_ARG_ENABLE([rtas],
|
|
Packit |
db01ca |
[ --enable-rtas build rtas ppc plugin [[default=no]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_rtas_lib" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(RTAS,rtas)
|
|
Packit |
db01ca |
AC_SUBST(WITH_RTAS,1)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(librtas, librtas-devel, http://librtas.ozlabs.org/,
|
|
Packit |
db01ca |
Cannot build RTAS plugin without the librtas library)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_RTAS,0)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[AC_SUBST(WITH_RTAS,0)])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
# configure argument for the simulator plugin
|
|
Packit |
db01ca |
AC_ARG_ENABLE([simulator],
|
|
Packit |
db01ca |
[ --enable-simulator build simulator plugin [[default=yes]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(SIMULATOR,simulator)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[AC_SUBST(SIMULATOR,simulator)])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
# configure argument for the dynamic simulator plugin
|
|
Packit |
db01ca |
AC_ARG_ENABLE([dynamic_simulator],
|
|
Packit |
db01ca |
[ --enable-dynamic_simulator build dynamic simulator plugin [[default=yes]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(DYNAMIC_SIMULATOR,dynamic_simulator)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[AC_SUBST(DYNAMIC_SIMULATOR,dynamic_simulator)])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
# configure argument for the ilo2_ribcl plugin
|
|
Packit |
db01ca |
AC_ARG_ENABLE([ilo2_ribcl],
|
|
Packit |
db01ca |
[ --enable-ilo2_ribcl build ilo2_ribcl plugin [[default=no]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_openssl" = "xyes"; then
|
|
Packit |
db01ca |
if test -n "$XML2_INCLUDE"; then
|
|
Packit |
db01ca |
AC_SUBST(ILO2_RIBCL,ilo2_ribcl)
|
|
Packit |
db01ca |
AC_SUBST(WITH_ILO2_RIBCL,1)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(xml2-devel,,,Can not build ilo2_ribcl without xml2 headers)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(openssl-devel,,,Can not build ilo2_ribcl without openssl headers)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_ILO2_RIBCL,0)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[if test "x$have_openssl" = "xyes" && test -n "$XML2_INCLUDE"; then
|
|
Packit |
db01ca |
AC_SUBST(ILO2_RIBCL,ilo2_ribcl)
|
|
Packit |
db01ca |
AC_SUBST(WITH_ILO2_RIBCL,1)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_ILO2_RIBCL,0)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
# configure argument for the oa_soap plugin
|
|
Packit |
db01ca |
AC_ARG_ENABLE([oa_soap],
|
|
Packit |
db01ca |
[ --enable-oa_soap build oa_soap plugin [[default=no]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_openssl" = "xyes"; then
|
|
Packit |
db01ca |
if test -n "$XML2_INCLUDE"; then
|
|
Packit |
db01ca |
AC_SUBST(OA_SOAP,oa_soap)
|
|
Packit |
db01ca |
AC_SUBST(WITH_OA_SOAP,1)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(xml2-devel,,,Can not build oa_soap without xml2 headers)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(openssl-devel,,,Can not build oa_soap without openssl headers)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_OA_SOAP,0)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[if test "x$have_openssl" = "xyes" && test -n "$XML2_INCLUDE"; then
|
|
Packit |
db01ca |
AC_SUBST(OA_SOAP,oa_soap)
|
|
Packit |
db01ca |
AC_SUBST(WITH_OA_SOAP,1)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_OA_SOAP,0)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
# configure argument for the ov_rest plugin
|
|
Packit |
db01ca |
AC_ARG_ENABLE([ov_rest],
|
|
Packit |
db01ca |
[ --enable-ov_rest build ov_rest plugin [[default=no]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_curl" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_rabbitmq" = "xyes"; then
|
|
Packit |
db01ca |
if test -n "$JSON_C_INCLUDE"; then
|
|
Packit |
db01ca |
AC_SUBST(OV_REST,ov_rest)
|
|
Packit |
db01ca |
AC_SUBST(WITH_OV_REST,1)
|
|
Packit |
db01ca |
if test "$DISTRO" = "sles"; then
|
|
Packit |
db01ca |
AC_SUBST(RABBITMQ_LIB,-lrabbitmq)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(json-c-devel,,,ov_rest needs json-c headers)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(librabbitmq-devel,,,ov_rest needs rabbitmq headers)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(libcurl-devel,,,ov_rest needs curl headers)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_OV_REST,0)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[if test "x$have_curl" = "xyes" && test "x$have_rabbitmq" && test -n "$JSON_C_INCLUDE"; then
|
|
Packit |
db01ca |
AC_SUBST(OV_REST,ov_rest)
|
|
Packit |
db01ca |
AC_SUBST(WITH_OV_REST,1)
|
|
Packit |
db01ca |
if test "$DISTRO" = "sles"; then
|
|
Packit |
db01ca |
AC_SUBST(RABBITMQ_LIB,-lrabbitmq)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_OV_REST,0)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
# configure argument for enabling file encryption
|
|
Packit |
db01ca |
AC_ARG_ENABLE([encryption],
|
|
Packit |
db01ca |
[ --enable-encryption Enable File Encryption [[default=yes if libgcrypt and gcrypt.h exist]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_gcrypt" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_gcrypt_lib" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(HPICRYPT,hpicrypt)
|
|
Packit |
db01ca |
AC_SUBST(HPICRYPT_MAN,hpicrypt.1)
|
|
Packit |
db01ca |
CRYPT_FLAG="-DHAVE_ENCRYPT"
|
|
Packit |
db01ca |
AC_SUBST(CRYPT_FLAG)
|
|
Packit |
db01ca |
GCRYPT_LIB="-lgcrypt"
|
|
Packit |
db01ca |
AC_SUBST(GCRYPT_LIB)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(libgcrypt,libgcrypt,,
|
|
Packit |
db01ca |
Can not enable encryption without gcrypt library)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(libgcrypt-devel,libgcrypt-devel,,
|
|
Packit |
db01ca |
Can not enable encryption without gcrypt headers)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[if test "x$have_gcrypt" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$have_gcrypt_lib" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(HPICRYPT,hpicrypt)
|
|
Packit |
db01ca |
AC_SUBST(HPICRYPT_MAN,hpicrypt.1)
|
|
Packit |
db01ca |
CRYPT_FLAG="-DHAVE_ENCRYPT"
|
|
Packit |
db01ca |
AC_SUBST(CRYPT_FLAG)
|
|
Packit |
db01ca |
GCRYPT_LIB="-lgcrypt"
|
|
Packit |
db01ca |
AC_SUBST(GCRYPT_LIB)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
# configure argument for the slave plugin
|
|
Packit |
db01ca |
AC_ARG_ENABLE([slave],
|
|
Packit |
db01ca |
[ --enable-slave build slave plugin [[default=yes]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(SLAVE,slave)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[AC_SUBST(SLAVE,slave)])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
# configure argument for the test_agent plugin
|
|
Packit |
db01ca |
AC_ARG_ENABLE([test_agent],
|
|
Packit |
db01ca |
[ --enable-test_agent build test_agent plugin [[default=yes]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(TEST_AGENT,test_agent)
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[AC_SUBST(TEST_AGENT,test_agent)])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl setup SNMPFLAGS
|
|
Packit |
db01ca |
AC_SUBST(SNMPFLAGS)
|
|
Packit |
db01ca |
AC_SUBST(SNMPLIBS)
|
|
Packit |
db01ca |
AC_SUBST(SNMPDIR)
|
|
Packit |
db01ca |
AC_SUBST(SSLDIR)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl
|
|
Packit |
db01ca |
dnl This code was borrowed from linux-ha configure.in file
|
|
Packit |
db01ca |
dnl and is used for creating the proper substitutions
|
|
Packit |
db01ca |
dnl in the spec file. Without it, the spec file will
|
|
Packit |
db01ca |
dnl have ${exec_prefix}, etc. instead of the actual
|
|
Packit |
db01ca |
dnl directory.
|
|
Packit |
db01ca |
dnl
|
|
Packit |
db01ca |
dnl
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
prefix=`eval echo "$prefix"`
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
case $prefix in
|
|
Packit |
db01ca |
NONE) prefix=/usr/local;;
|
|
Packit |
db01ca |
esac
|
|
Packit |
db01ca |
var() {
|
|
Packit |
db01ca |
case $1 in
|
|
Packit |
db01ca |
*'${'*) res=`eval echo "$1"`;;
|
|
Packit |
db01ca |
*) res="$1";;
|
|
Packit |
db01ca |
esac
|
|
Packit |
db01ca |
case "$res" in
|
|
Packit |
db01ca |
""|NONE) echo "$2";;
|
|
Packit |
db01ca |
*) echo "$res";;
|
|
Packit |
db01ca |
esac
|
|
Packit |
db01ca |
}
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
exec_prefix=`var "$exec_prefix" "$prefix"`
|
|
Packit |
db01ca |
bindir=`var "$bindir" "$exec_prefix/bin"`
|
|
Packit |
db01ca |
sbindir=`var "$sbindir" "$exec_prefix/sbin"`
|
|
Packit |
db01ca |
sysconfdir=`var "$sysconfdir" "$prefix/etc"`
|
|
Packit |
db01ca |
libdir=`var "$libdir" "$exec_prefix/lib"`
|
|
Packit |
db01ca |
includedir=`var "$includedir" "$exec_prefix/include"`
|
|
Packit |
db01ca |
localstatedir=`var "$localstatedir" "/var"`
|
|
Packit |
db01ca |
base_includedir="${includedir}"
|
|
Packit |
db01ca |
AC_SUBST(base_includedir)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl
|
|
Packit |
db01ca |
dnl defines CONFPATH, OH_DEFAULT_CONF and OH_CLIENT_DEFAULT_CONF
|
|
Packit |
db01ca |
dnl
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
#CONFPATH=${CONFPATH:=/etc/${PACKAGE_NAME}}
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
#AC_ARG_WITH(confpath,
|
|
Packit |
db01ca |
# [[ --with-confpath=PATH use directory PATH to store openhpi configuration file [default=/etc/openhpi]]],
|
|
Packit |
db01ca |
# [CONFPATH=$withval])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl substitute @CONFPATH@ in all Makefiles
|
|
Packit |
db01ca |
CONFPATH=${sysconfdir}/openhpi
|
|
Packit |
db01ca |
AC_SUBST(CONFPATH)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl create the #define in config.h
|
|
Packit |
db01ca |
AC_DEFINE_UNQUOTED(CONFPATH, "$CONFPATH",
|
|
Packit |
db01ca |
[openhpi specific config path])
|
|
Packit |
db01ca |
AC_DEFINE_UNQUOTED(OH_DEFAULT_CONF,"$CONFPATH/${PACKAGE_NAME}.conf",
|
|
Packit |
db01ca |
[default configfile])
|
|
Packit |
db01ca |
AC_DEFINE_UNQUOTED(OH_CLIENT_DEFAULT_CONF,"$CONFPATH/${HPI_CLIENT_PKG}.conf",
|
|
Packit |
db01ca |
[default client configfile])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl defines OH_DEFAULT_UID_MAP and VARPATH
|
|
Packit |
db01ca |
dnl set VARPATH only if unset or null.
|
|
Packit |
db01ca |
VARPATH=${VARPATH:=${localstatedir}/lib/${PACKAGE_NAME}}
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_WITH(varpath,
|
|
Packit |
db01ca |
[[ --with-varpath=PATH use directory PATH to store openhpi specific data [default=$prefix/var/lib/openhpi]]],
|
|
Packit |
db01ca |
[VARPATH=$withval])
|
|
Packit |
db01ca |
dnl substitute @VARPATH@ in all Makefiles
|
|
Packit |
db01ca |
AC_SUBST(VARPATH)
|
|
Packit |
db01ca |
dnl create the #define VARPATH and #define OH_DEFAULT_UID_MAP in config.h
|
|
Packit |
db01ca |
AC_DEFINE_UNQUOTED(VARPATH,"$VARPATH",[openhpi specific data path])
|
|
Packit |
db01ca |
AC_DEFINE_UNQUOTED(OH_DEFAULT_UID_MAP,"$VARPATH/uid_map",[uid map])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl OH_PLUGIN_PATH - Directory where plugin libraries live.
|
|
Packit |
db01ca |
dnl default is "$libdir/openhpir"
|
|
Packit |
db01ca |
PLUGINPATH=${PLUGINPATH:=${libdir}/${PACKAGE_NAME}}
|
|
Packit |
db01ca |
AC_ARG_WITH(pluginpath,
|
|
Packit |
db01ca |
[[ --with-pluginpath=PATH use directory PATH to locate plugin libraries [default=LIBDIR/openhpi]]],
|
|
Packit |
db01ca |
[PLUGINPATH=$withval])
|
|
Packit |
db01ca |
dnl create #define OH_PLUGIN_PATH in config.h
|
|
Packit |
db01ca |
AC_DEFINE_UNQUOTED(OH_PLUGIN_PATH,"$PLUGINPATH",[openhpi plugin path])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
TEST_CLEAN='$(shell ls *.bb* *.da *.gcov *.gcno *.beam *.gcda *.summary)'
|
|
Packit |
db01ca |
AC_SUBST(TEST_CLEAN)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_C_STRINGIZE
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl getting CFLAGS right takes some effort
|
|
Packit |
db01ca |
dnl we start with a good base set that has been built up
|
|
Packit |
db01ca |
CFLAGS="$CFLAGS $GLIB_CFLAGS"
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl next we have to do transformations to either turn on
|
|
Packit |
db01ca |
dnl test coverage support.
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_ENABLE([testcover],
|
|
Packit |
db01ca |
[ --enable-testcover adds test coverage and profiling support [[default=no]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
CFLAGS=`echo $CFLAGS | sed -e 's/-O\w\?\>[ ]*//g'`
|
|
Packit |
db01ca |
CFLAGS="$CFLAGS -ftest-coverage -fprofile-arcs"
|
|
Packit |
db01ca |
CXXFLAGS=`echo $CXXFLAGS | sed -e 's/-O\w\?\>[ ]*//g'`
|
|
Packit |
db01ca |
CXXFLAGS="$CXXFLAGS -ftest-coverage -fprofile-arcs"
|
|
Packit |
db01ca |
fi]
|
|
Packit |
db01ca |
)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl This makes libopenhpi debugger friendly
|
|
Packit |
db01ca |
dnl by eliminating optimizations and adding the -g flag
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_ENABLE([debuggable],
|
|
Packit |
db01ca |
[ --enable-debuggable adds -g flag and turns off optimization [[default=no]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
CFLAGS=`echo $CFLAGS | sed -e 's/-O\w\?\>[ ]*//g'`
|
|
Packit |
db01ca |
CFLAGS=`echo $CFLAGS | sed -e 's/^-g\w*[ ]*\| -g\w*//g'`
|
|
Packit |
db01ca |
CFLAGS="$CFLAGS -O0 -ggdb3"
|
|
Packit |
db01ca |
CXXFLAGS=`echo $CXXFLAGS | sed -e 's/-O\w\?\>[ ]*//g'`
|
|
Packit |
db01ca |
CXXFLAGS=`echo $CXXFLAGS | sed -e 's/^-g\w*[ ]*\| -g\w*//g'`
|
|
Packit |
db01ca |
CXXFLAGS="$CXXFLAGS -O0 -ggdb3"
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
CFLAGS=`echo $CFLAGS | sed -e 's/^-g\w*[ ]*\| -g\w*//g'`
|
|
Packit |
db01ca |
CXXFLAGS=`echo $CXXFLAGS | sed -e 's/^-g\w*[ ]*\| -g\w*//g'`
|
|
Packit |
db01ca |
fi]
|
|
Packit |
db01ca |
)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl This will let the user decide whether he wants
|
|
Packit |
db01ca |
dnl to use dbg/trace messages.
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_ENABLE([debug-msgs],
|
|
Packit |
db01ca |
[ --enable-debug-msgs enables dynamic debug messages [[default=yes]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
AC_DEFINE([OH_DBG_MSGS],[1],[Enables dynamic debug messages])
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[AC_DEFINE([OH_DBG_MSGS],[1],[Enables dynamic debug messages])]
|
|
Packit |
db01ca |
)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl Now we throw in a bunch of warnings. C and C++ need
|
|
Packit |
db01ca |
dnl different sets here
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
CC_WARNINGS="\
|
|
Packit |
db01ca |
-Wall \
|
|
Packit |
db01ca |
-Wmissing-prototypes \
|
|
Packit |
db01ca |
-Wmissing-declarations \
|
|
Packit |
db01ca |
-Wstrict-prototypes \
|
|
Packit |
db01ca |
-Wpointer-arith \
|
|
Packit |
db01ca |
-Wformat=2 \
|
|
Packit |
db01ca |
-Wformat-security \
|
|
Packit |
db01ca |
-Wformat-nonliteral \
|
|
Packit |
db01ca |
-Wno-format-y2k \
|
|
Packit |
db01ca |
-Wcast-qual \
|
|
Packit |
db01ca |
-Wcast-align \
|
|
Packit |
db01ca |
-Wno-strict-aliasing \
|
|
Packit |
db01ca |
-fno-strict-aliasing \
|
|
Packit |
db01ca |
-Wno-unused-value "
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
CXX_WARNINGS="\
|
|
Packit |
db01ca |
-Wall \
|
|
Packit |
db01ca |
-Wpointer-arith \
|
|
Packit |
db01ca |
-Wformat=2 \
|
|
Packit |
db01ca |
-Wformat-security \
|
|
Packit |
db01ca |
-Wformat-nonliteral \
|
|
Packit |
db01ca |
-Wcast-qual \
|
|
Packit |
db01ca |
-Wcast-align \
|
|
Packit |
db01ca |
-Wshadow \
|
|
Packit |
db01ca |
-Wwrite-strings \
|
|
Packit |
db01ca |
-Wredundant-decls \
|
|
Packit |
db01ca |
-Wno-strict-aliasing \
|
|
Packit |
db01ca |
-fno-strict-aliasing \
|
|
Packit |
db01ca |
-Wno-unused-value "
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_ARG_ENABLE([werror],
|
|
Packit |
db01ca |
[ --enable-werror appends -Werror to CFLAGS and CXXFLAGS [[default=yes]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
CC_WARNINGS="$CC_WARNINGS -Werror"
|
|
Packit |
db01ca |
CXX_WARNINGS="$CXX_WARNINGS -Werror"
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
if test -n "`gcc --version | grep ' 3.2'`" ; then
|
|
Packit |
db01ca |
CC_WARNINGS=`echo $CC_WARNINGS | sed -e 's/-Wno-strict-aliasing//g'`
|
|
Packit |
db01ca |
CXX_WARNINGS=`echo $CC_WARNINGS | sed -e 's/-Wno-strict-aliasing//g'`
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
case $host_os in
|
|
Packit |
db01ca |
solaris*)
|
|
Packit |
db01ca |
CC_WARNINGS=`echo $CC_WARNINGS | sed -e 's/-Wcast-qual//g'`
|
|
Packit |
db01ca |
CXX_WARNINGS=`echo $CXX_WARNINGS | sed -e 's/-Wwrite-strings//g'`
|
|
Packit |
db01ca |
;;
|
|
Packit |
db01ca |
esac
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl remerge the warnings into the FLAGS
|
|
Packit |
db01ca |
CXXFLAGS="$CFLAGS $CXX_WARNINGS"
|
|
Packit |
db01ca |
CFLAGS="$CFLAGS $CC_WARNINGS"
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl lastly, we add things if we are thread safe and have the openssl library
|
|
Packit |
db01ca |
dnl (this could probably happen earlier in this file)
|
|
Packit |
db01ca |
CFLAGS="$CFLAGS -D_GNU_SOURCE -D_REENTRANT -fexceptions"
|
|
Packit |
db01ca |
CXXFLAGS="$CXXFLAGS -D_GNU_SOURCE -D_REENTRANT -fexceptions"
|
|
Packit |
db01ca |
if test "x$have_openssl" = "xyes"; then
|
|
Packit |
db01ca |
SSLDIR=ssl
|
|
Packit |
db01ca |
AC_DEFINE([HAVE_OPENSSL],[1],[openssl library was found])
|
|
Packit |
db01ca |
AC_SUBST(WITH_OPENSSL, 1)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(WITH_OPENSSL, 0)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
AM_CONDITIONAL(HAVE_OPENSSL, test x$have_openssl = xyes)
|
|
Packit |
db01ca |
OH_SSL_INCLUDES="-I\$(top_srcdir)/ssl"
|
|
Packit |
db01ca |
AC_SUBST(OH_SSL_INCLUDES)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
OPENHPI_INCLUDES="-I\$(top_srcdir)/include -I\$(top_srcdir)/utils -I\$(top_builddir)/utils -I\$(top_srcdir)/clients"
|
|
Packit |
db01ca |
dnl replace common includes here
|
|
Packit |
db01ca |
AC_SUBST(OPENHPI_INCLUDES)
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
dnl Set up libs that will be linked to
|
|
Packit |
db01ca |
LIBS="$LIBS $SSL_LIB $GLIB_LIBS -lm -lpthread"
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_CHECK_PROG([found_pod2man], [pod2man], [yes])
|
|
Packit |
db01ca |
AC_ARG_ENABLE([man],
|
|
Packit |
db01ca |
[ --enable-man generate man pages [[default=yes if pod2man exists]]],
|
|
Packit |
db01ca |
[if test "x$enableval" = "xyes"; then
|
|
Packit |
db01ca |
if test "x$found_pod2man" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(MAN,man)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
OH_CHECK_FAIL(pod2man,perl,http://www.perl.org,
|
|
Packit |
db01ca |
Can not generate man pages without pod2man)
|
|
Packit |
db01ca |
fi
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(MAN,"")
|
|
Packit |
db01ca |
fi],
|
|
Packit |
db01ca |
[if test "x$found_pod2man" = "xyes"; then
|
|
Packit |
db01ca |
AC_SUBST(MAN,man)
|
|
Packit |
db01ca |
else
|
|
Packit |
db01ca |
AC_SUBST(MAN,"")
|
|
Packit |
db01ca |
fi])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_CONFIG_FILES([openhpi.spec
|
|
Packit |
db01ca |
openhpi.pc
|
|
Packit |
db01ca |
rt-env.sh
|
|
Packit |
db01ca |
Makefile
|
|
Packit |
db01ca |
utils/openhpiutils.pc
|
|
Packit |
db01ca |
utils/Makefile
|
|
Packit |
db01ca |
utils/t/Makefile
|
|
Packit |
db01ca |
utils/t/epath/Makefile
|
|
Packit |
db01ca |
utils/t/rpt/Makefile
|
|
Packit |
db01ca |
utils/t/sahpi/Makefile
|
|
Packit |
db01ca |
utils/t/el/Makefile
|
|
Packit |
db01ca |
utils/t/uid/Makefile
|
|
Packit |
db01ca |
utils/t/ann/Makefile
|
|
Packit |
db01ca |
transport/Makefile
|
|
Packit |
db01ca |
marshal/Makefile
|
|
Packit |
db01ca |
marshal/t/Makefile
|
|
Packit |
db01ca |
plugins/Makefile
|
|
Packit |
db01ca |
plugins/watchdog/Makefile
|
|
Packit |
db01ca |
plugins/ipmi/Makefile
|
|
Packit |
db01ca |
plugins/ipmi/t/Makefile
|
|
Packit |
db01ca |
plugins/snmp_bc/Makefile
|
|
Packit |
db01ca |
plugins/snmp_bc/t/Makefile
|
|
Packit |
db01ca |
plugins/sysfs/Makefile
|
|
Packit |
db01ca |
plugins/ipmidirect/Makefile
|
|
Packit |
db01ca |
plugins/ipmidirect/t/Makefile
|
|
Packit |
db01ca |
plugins/simulator/Makefile
|
|
Packit |
db01ca |
plugins/simulator/t/Makefile
|
|
Packit |
db01ca |
plugins/dynamic_simulator/Makefile
|
|
Packit |
db01ca |
plugins/rtas/Makefile
|
|
Packit |
db01ca |
plugins/ilo2_ribcl/Makefile
|
|
Packit |
db01ca |
plugins/oa_soap/Makefile
|
|
Packit |
db01ca |
plugins/ov_rest/Makefile
|
|
Packit |
db01ca |
plugins/slave/Makefile
|
|
Packit |
db01ca |
plugins/test_agent/Makefile
|
|
Packit |
db01ca |
scripts/Makefile
|
|
Packit |
db01ca |
scripts/test/Makefile
|
|
Packit |
db01ca |
snmp/Makefile
|
|
Packit |
db01ca |
ssl/Makefile
|
|
Packit |
db01ca |
baselib/Makefile
|
|
Packit |
db01ca |
docs/Makefile
|
|
Packit |
db01ca |
docs/man/Makefile
|
|
Packit |
db01ca |
openhpid/Makefile
|
|
Packit |
db01ca |
openhpid/openhpid.sh
|
|
Packit |
db01ca |
openhpid/t/Makefile
|
|
Packit |
db01ca |
openhpid/t/ohpi/Makefile
|
|
Packit |
db01ca |
hpi_shell/Makefile
|
|
Packit |
db01ca |
cpp/Makefile
|
|
Packit |
db01ca |
cpp/t/Makefile
|
|
Packit |
db01ca |
clients/Makefile
|
|
Packit |
db01ca |
clients/hpixml/Makefile
|
|
Packit |
db01ca |
baselibs/Makefile])
|
|
Packit |
db01ca |
|
|
Packit |
db01ca |
AC_OUTPUT
|