1
0
mirror of https://github.com/Llewellynvdm/conky.git synced 2024-11-17 18:45:10 +00:00
conky/configure.ac.in
Pavel Labath c0d1c313e9 Support for per-task I/O statistics - $top_io
Basically, I just added three new process properties (io_read, io_write, io_perc - representing
the amount of I/O done by the process during the update interval) and $top_io, that sorts
processes based on io_perc.

Atm, it's completely #ifdef'd, since it requires kernel support. But that creates some wierd
looking syntax at some places, so it may be better to remove some ifdefs.  It even may be
possible to completely remove the ifdefs (ie. convert them to #ifdef linux) since the code will
compile just fine even if the kernel doesn't support I/O accounting. I'll leave that for someone
else to decide.
2009-06-12 19:39:45 +02:00

847 lines
24 KiB
Plaintext

dnl major, minor and micro version macros.
m4_define([conky_version_major], [1])
m4_define([conky_version_minor], [7])
m4_define([conky_version_micro], [2])
m4_define([conky_version_tag], [pre]) dnl [] for releases
m4_define([conky_version_revision],[_pre@REVISION@])
m4_define([conky_version],
[conky_version_major().conky_version_minor().conky_version_micro()ifelse(
conky_version_tag(), [pre],
[conky_version_revision()],
[ifelse(conky_version_tag(), [], [], [conky_version_tag()])])])
AC_INIT([Conky], [conky_version()], [brenden1@users.sourceforge.net])
AM_INIT_AUTOMAKE(conky, conky_version())
AM_CONFIG_HEADER(src/config.h)
AC_CONFIG_MACRO_DIR([m4])
dnl prevent libtool setting LTCFLAGS to default of -g -O2 when CFLAGS unset.
dnl libtool must be deleted with make distclean to see this fix.
if test x"$CFLAGS" = x""; then
AC_SUBST(CFLAGS, [ ])
fi
AC_DEFINE([_GNU_SOURCE], [], [Define for GNU source and extensions])
dnl
dnl Tools
dnl
AC_PROG_CC
AC_PROG_LD
AC_PROG_INSTALL
AC_PROG_LIBTOOL
AC_CHECK_PROG(HAVE_PKGCONFIG, pkg-config, yes, no)
if test x"$HAVE_PKGCONFIG" = x"no"; then
AC_MSG_ERROR([pkg-config is required!])
fi
PKG_PROG_PKG_CONFIG([0.19])
AC_CONFIG_FILES(
Makefile
data/Makefile
doc/Makefile
src/Makefile
src/build.h
)
uname=`uname`
case $uname in
Linux*)
WANT_SYSINFO=yes
;;
FreeBSD*|GNU/kFreeBSD*)
WANT_KVM=yes
WANT_DEVSTAT=yes
;;
# NetBSD*)
# WANT_KVM=yes
# WANT_OSSLIB=yes
# ;;
OpenBSD*)
WANT_KVM=yes
WANT_OSSLIB=yes
;;
# Solaris doesn't work at all right now
# SunOS*)
# WANT_KSTAT=yes
# ;;
*)
echo "Your operating system $uname isn't supported"
echo "Feel free to help. :P"
exit 1
;;
esac
AM_CONDITIONAL(BUILD_LINUX, test x$uname = xLinux)
#AM_CONDITIONAL(BUILD_SOLARIS, test x$uname = xSunOS)
AM_CONDITIONAL(BUILD_FREEBSD, test x$uname = xFreeBSD -o x$uname = xGNU/kFreeBSD)
#AM_CONDITIONAL(BUILD_NETBSD, test x$uname = xNetBSD)
AM_CONDITIONAL(BUILD_OPENBSD, test x$uname = xOpenBSD)
BUILD_DATE=$(LANG=en_US LC_ALL=en_US LOCALE=en_US date)
BUILD_ARCH="$(uname -sr) ($(uname -m))"
AC_SUBST(BUILD_DATE)
AC_SUBST(BUILD_ARCH)
dnl
dnl BUILD_CONFIG_OUTPUT option
dnl
AC_ARG_ENABLE([config_output],
AC_HELP_STRING([--disable-config-output], [disable if you do not want conky to output a default config (with -C) @<:@default=yes@:>@]),
[want_config_output="$enableval"], [want_config_output=yes])
AM_CONDITIONAL(BUILD_CONFIG_OUTPUT, test x$want_config_output = xyes)
AM_CONDITIONAL(BUILD_FOR_FOPENCOOKIE, test x$want_config_output = xyes)
if test x$want_config_output = xyes; then
AC_DEFINE(CONFIG_OUTPUT, 1, [Define if you want conky to output a default config (with -C)])
AC_CHECK_FUNCS(fopencookie)
fi
dnl
dnl OWN_WINDOW option
dnl
AC_ARG_ENABLE([own_window],
AC_HELP_STRING([--disable-own-window],
[disable if you do not want support for creating own window @<:@default=yes@:>@]),
[dah="$enableval"], [dah=yes])
if test $dah != "no"; then
AC_DEFINE(OWN_WINDOW, 1, [Define if you want support for window creating])
fi
dnl
dnl Audacious Media Player
dnl
AC_ARG_ENABLE([audacious],
AC_HELP_STRING([--enable-audacious=[[yes|no|legacy]]],
[enable audacious player support @<:@default=no@:>@]),
[want_audacious="$enableval"], [want_audacious=no])
AM_CONDITIONAL(BUILD_AUDACIOUS, test x$want_audacious = xyes -o x$want_audacious = xlegacy)
if test x$want_audacious = xyes; then
PKG_CHECK_MODULES([Audacious], [audacious >= 1.4.0 dbus-glib-1 glib-2.0 gobject-2.0])
CFLAGS="$CFLAGS $Audacious_CFLAGS"
LIBS="$LIBS $Audacious_LIBS"
save_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$Audacious_CFLAGS -I`pkg-config --variable=audacious_include_dir audacious`/audacious"
AC_CHECK_HEADERS([audacious/audctrl.h audacious/dbus.h glib.h glib-object.h],
[], AC_MSG_ERROR([required header(s) not found]))
CPPFLAGS="$save_CPPFLAGS"
AC_DEFINE(AUDACIOUS, 1, [Define for Audacious support])
else if test x$want_audacious = xlegacy; then
PKG_CHECK_MODULES([Audacious], [audacious < 1.4.0 glib-2.0])
CFLAGS="$CFLAGS $Audacious_CFLAGS"
LIBS="$LIBS $Audacious_LIBS"
save_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$Audacious_CFLAGS -I`pkg-config --variable=audacious_include_dir audacious`/audacious"
AC_CHECK_HEADERS([audacious/beepctrl.h glib.h], [], AC_MSG_ERROR([required header(s) not found]))
CPPFLAGS="$save_CPPFLAGS"
AC_DEFINE(AUDACIOUS, 1, [Define for Audacious support])
AC_DEFINE(AUDACIOUS_LEGACY, 1, [Define for Audacious Legacy support])
fi
fi
dnl
dnl BMPx
dnl
AC_ARG_ENABLE([bmpx],
AC_HELP_STRING([--enable-bmpx], [enable if you want BMPx support @<:@default=no@:>@]),
[want_bmpx="$enableval"], [want_bmpx=no])
AM_CONDITIONAL(BUILD_BMPX, test x$want_bmpx = xyes)
if test x$want_bmpx = xyes; then
PKG_CHECK_MODULES([BMPx], [bmp-2.0 >= 0.14.0])
CFLAGS="$CFLAGS $BMPx_CFLAGS"
LIBS="$LIBS $BMPx_LIBS"
AC_DEFINE(BMPX, 1, [Define if you want BMPx support])
fi
dnl
dnl Support for IBM/Lenovo notebooks
dnl
AC_ARG_ENABLE([ibm],
AC_HELP_STRING([--enable-ibm], [enable if you want support for IBM/Lenovo notebooks @<:default=no@:>@]),
[want_ibm="$enableval"], [want_ibm=no])
AM_CONDITIONAL(BUILD_IBM, test x$want_ibm = xyes)
if test x$want_ibm = xyes; then
if test x"$uname" != xLinux; then
AC_MSG_NOTICE([support for IBM/Lenovo notebooks not supported on $uname... disabling])
want_ibm=no
else
AC_DEFINE(IBM, 1, [Define if you want support for IBM/Lenovo notebooks (SMAPI)])
fi
fi
dnl
dnl Hddtemp
dnl
AC_ARG_ENABLE([hddtemp],
AC_HELP_STRING([--disable-hddtemp],
[disable if you do not want hddtemp support @<:@default=yes@:>@]),
[want_hddtemp="$enableval"], [want_hddtemp=yes])
AM_CONDITIONAL(BUILD_HDDTEMP, test x$want_hddtemp = xyes)
if test x$want_hddtemp = xyes; then
if test x"$uname" != xLinux; then
AC_MSG_NOTICE([hddtemp not supported on $uname... disabling])
want_hddtemp=no
else
AC_DEFINE(HDDTEMP, 1, [Define if you want hddtemp support])
fi
fi
dnl
dnl Apcupsd
dnl
AC_ARG_ENABLE([apcupsd],
AC_HELP_STRING([--disable-apcupsd],
[disable if you do not want apcupsd support @<:@default=yes@:>@]),
[want_apcupsd="$enableval"], [want_apcupsd=yes])
if test x$want_apcupsd = xyes; then
if test x"$uname" != xLinux; then
AC_MSG_NOTICE([apcupsd not supported on $uname... disabling])
want_apcupsd=no
else
AC_DEFINE(APCUPSD, 1, [Define if you want apcupsd support])
fi
fi
AM_CONDITIONAL(BUILD_APCUPSD, test x$want_apcupsd = xyes)
dnl
dnl I/O stats
dnl
AC_ARG_ENABLE([iostats],
AC_HELP_STRING([--enable-iostats],
[enable if you want support for per-task I/O statistics @<:@default=no@:>@]),
[want_iostats="$enableval"], [want_iostats=no])
if test x$want_iostats = xyes; then
if test x"$uname" != xLinux; then
AC_MSG_NOTICE([iostats not supported on $uname... disabling])
want_apcupsd=no
else
AC_DEFINE(IOSTATS, 1, [Define if you want support for per-task I/O statistics])
fi
fi
dnl
dnl Math
dnl
AC_ARG_ENABLE([math],
AC_HELP_STRING([--disable-math], [disable if you do not want math support @<:@default=yes@:>@]),
[want_math="$enableval"], [want_math=yes])
AM_CONDITIONAL(BUILD_MATH, test x$want_math = xyes)
if test x$want_math = xyes; then
LIBS="$LIBS -lm"
AC_DEFINE(MATH, 1, [Define if you want math support])
fi
dnl
dnl MPD
dnl
AC_ARG_ENABLE([mpd],
AC_HELP_STRING([--disable-mpd], [disable if you do not want MPD support @<:@default=yes@:>@]),
[want_mpd="$enableval"], [want_mpd=yes])
AM_CONDITIONAL(BUILD_MPD, test x$want_mpd = xyes)
if test x$want_mpd = xyes; then
AC_DEFINE(MPD, 1, [Define if you want MPD support])
fi
dnl
dnl MOC
dnl
AC_ARG_ENABLE([moc],
AC_HELP_STRING([--disable-moc], [disable if you do not want MOC support @<:@default=yes@:>@]),
[want_moc="$enableval"], [want_moc=yes])
AM_CONDITIONAL(BUILD_MOC, test x$want_moc = xyes)
if test x$want_moc = xyes; then
AC_DEFINE(MOC, 1, [Define if you want MOC support])
fi
dnl
dnl XMMS2
dnl
AC_ARG_ENABLE([xmms2],
AC_HELP_STRING([--enable-xmms2], [enable if you want XMMS2 support @<:@default=no@:>@]),
[want_xmms2="$enableval"], [want_xmms2=no])
AM_CONDITIONAL(BUILD_XMMS2, test x$want_xmms2 = xyes)
if test x$want_xmms2 = xyes; then
PKG_CHECK_MODULES([XMMS2], [xmms2-client])
CFLAGS="$CFLAGS $XMMS2_CFLAGS"
LIBS="$LIBS $XMMS2_LIBS"
AC_DEFINE(XMMS2, 1, [Define if you want XMMS2 support])
fi
dnl
dnl EVE Skill Monitor
dnl
AC_ARG_ENABLE([eve],
AC_HELP_STRING([--enable-eve], [Eve-Online skill monitor @<:@default=no@:>@]),
[want_eve="$enableval"], [want_eve=no])
AM_CONDITIONAL(BUILD_EVE, test x$want_eve = xyes)
if test x$want_eve = xyes; then
PKG_CHECK_MODULES([libxml2], libxml-2.0)
PKG_CHECK_MODULES([libcurl], libcurl)
CFLAGS="$CFLAGS $libxml2_CFLAGS $libcurl_CFLAGS"
LIBS="$LIBS $libxml2_LIBS $libcurl_LIBS"
AC_DEFINE(EVE, 1, [Define if you want Eve-Online Skill monitor support])
AC_DEFINE(EVEURL_TRAINING, "http://api.eve-online.com/char/SkillInTraining.xml.aspx", [Eve training URL])
AC_DEFINE(EVEURL_SKILLTREE, "http://api.eve-online.com/eve/Skilltree.xml.aspx", [Eve skilltree URL])
AC_DEFINE(MY_ENCODING, "ISO-8859-1", [Textencoding to use])
AC_DEFINE(EVE_OUTPUT_FORMAT, "%s %d in %s", [Eve output format])
fi
dnl
dnl RSS
dnl
AC_ARG_ENABLE([rss],
AC_HELP_STRING([--enable-rss], [enable if you want rss support @<:@default=no@:>@]),
[want_rss="$enableval"], [want_rss=no])
#
AM_CONDITIONAL(BUILD_RSS, test x$want_rss = xyes)
if test x$want_rss = xyes; then
WANT_GLIB=yes
PKG_CHECK_MODULES([libxml2], libxml-2.0)
PKG_CHECK_MODULES([libcurl], libcurl)
CFLAGS="$CFLAGS $libxml2_CFLAGS $libcurl_CFLAGS"
LIBS="$LIBS $libxml2_LIBS $libcurl_LIBS"
AC_DEFINE(RSS, 1, [Define if you want rss support])
fi
dnl
dnl Lua
dnl
AC_ARG_ENABLE([lua],
AC_HELP_STRING([--enable-lua], [enable if you want Lua scripting support @<:@default=yes@:>@]),
[want_lua="$enableval"], [want_lua=yes])
#
AM_CONDITIONAL(BUILD_LUA, test x$want_lua = xyes)
if test x$want_lua = xyes; then
PKG_CHECK_MODULES(LUA, lua >= 5.1, [ ],[
PKG_CHECK_MODULES(LUA51, lua-5.1 >= 5.1, [ ],[
PKG_CHECK_MODULES(LUA51, lua5.1 >= 5.1)
])
])
CFLAGS="$CFLAGS $LUA_CFLAGS $LUA51_CFLAGS"
LIBS="$LIBS $LUA_LIBS $LUA51_LIBS"
AC_DEFINE(HAVE_LUA, 1, [Define if you want Lua scripting support])
fi
dnl
dnl Wireless extensions
dnl
AC_ARG_ENABLE([wlan],
AC_HELP_STRING([--enable-wlan], [enable if you want wireless support @<:@default=no@:>@]),
[want_wlan="$enableval"], [want_wlan=no])
AM_CONDITIONAL(BUILD_WLAN, test x$want_wlan = xyes)
if test x$want_wlan = xyes; then
AC_CHECK_HEADERS([iwlib.h], [], AC_MSG_ERROR([iwlib.h header not found]))
AC_CHECK_LIB([iw], [iw_sockets_open], [LIBS="$LIBS -liw"], AC_MSG_ERROR([iw_sockets_open not found]))
AC_DEFINE(HAVE_IWLIB, 1, [Define if you want wireless support])
fi
dnl
dnl PORT_MONITORS
dnl
AC_ARG_ENABLE([portmon],
AC_HELP_STRING([--disable-portmon],
[disable if you do not want tcp (ip4) port monitoring @<:@default=yes@:>@]),
[want_portmon="$enableval"], [want_portmon=yes])
if test x"$want_portmon" = xyes; then
if test x"$uname" != xLinux; then
AC_MSG_NOTICE([port monitors not supported on $uname... disabling])
want_portmon=no
else
AC_CHECK_FUNCS([getnameinfo], [], AC_MSG_ERROR([getnameinfo function not found]))
AC_CHECK_HEADERS([netdb.h netinet/in.h netinet/tcp.h sys/socket.h arpa/inet.h], [],
[PORT_MONITORS_MISSING=yes])
if test x"$PORT_MONITORS_MISSING" = xyes; then
AC_MSG_ERROR([missing a needed network header for port monitoring])
fi
WANT_GLIB=yes
AC_DEFINE(TCP_PORT_MONITOR, 1, [Define if you want tcp port monitoring support])
fi
fi
AM_CONDITIONAL(BUILD_PORT_MONITORS, test x"$want_portmon" = xyes)
dnl
dnl ICONV
dnl
AM_ICONV
if test "$am_cv_func_iconv" != yes; then
AC_MSG_WARN([Could not find libiconv])
else
LIBS="$LIBS $LIBICONV"
fi
dnl
dnl X11
dnl
AC_ARG_ENABLE([x11],
AC_HELP_STRING([--disable-x11], [disable if you do not want X11 support @<:@default=yes@:>@]),
[want_x11="$enableval"], [want_x11=yes])
AM_CONDITIONAL(BUILD_X11, test x$want_x11 = xyes)
if test "x$want_x11" = "xyes"; then
if $PKG_CONFIG --exists x11; then
PKG_CHECK_MODULES([X11], [x11])
CFLAGS="$CFLAGS $X11_CFLAGS"
LIBS="$LIBS $X11_LIBS"
else
dnl non-modular X11 installations
AC_PATH_X
AC_PATH_XTRA
CFLAGS="$CFLAGS $X_CFLAGS"
LIBS="$LIBS $X_LIBS"
LDFLAGS="$LDFLAGS $LIBS $X_PRE_LIBS"
if test "x$no_x" = "xyes"; then
AC_MSG_ERROR([Can't locate your X11 installation])
fi
AC_CHECK_LIB([X11], [XOpenDisplay], [], AC_MSG_ERROR([Could not find XOpenDisplay in -lX11]))
fi
AC_DEFINE(X11, 1, [Define if you want to use X11])
fi
dnl
dnl Xext Double-buffering Extension
dnl
AC_ARG_ENABLE([double_buffer],
AC_HELP_STRING([--disable-double-buffer],
[disable for no Xdbe double-buffering support @<:@default=yes@:>@]),
[want_double_buffer="$enableval"], [want_double_buffer=yes])
if test "x$want_double_buffer" = "xyes"; then
if test "x$want_x11" != "xyes"; then
dnl silently disable if no x11
want_double_buffer=no
else
if $PKG_CONFIG --exists xext; then
PKG_CHECK_MODULES([Xext],[xext])
CFLAGS="$CFLAGS $Xext_CFLAGS"
LIBS="$LIBS $Xext_LIBS"
else
dnl non-modular X11 installation
AC_CHECK_LIB([Xext], [XdbeQueryExtension], [LIBS="$LIBS -lXext"],
AC_MSG_ERROR([Could not find XdbeQueryExtension in -lXext]))
fi
AC_DEFINE(HAVE_XDBE, 1, [Define for X11 double-buffering])
fi
fi
dnl
dnl Xdamage Extension
dnl
AC_ARG_ENABLE([xdamage],
AC_HELP_STRING([--disable-xdamage],
[disable if you do not want Xdamage support @<:@default=yes@:>@]),
[want_xdamage="$enableval"], [want_xdamage=yes])
if test "x$want_xdamage" = "xyes"; then
if test "x$want_x11" != "xyes"; then
dnl silently disable if no x11
want_xdamage=no
else
if $PKG_CONFIG --exists xdamage; then
PKG_CHECK_MODULES([XDamage],[xdamage])
CFLAGS="$CFLAGS $XDamage_CFLAGS"
LIBS="$LIBS $XDamage_LIBS"
else
dnl non-modular X11 installation
AC_CHECK_LIB([Xdamage], [XDamageQueryExtension], [LIBS="$LIBS -lXdamage"],
AC_MSG_ERROR([Could not find XDamageQueryExtension in -lXdamage]))
fi
AC_DEFINE(HAVE_XDAMAGE, 1, [Define for X11 Xdamage extension])
fi
fi
dnl
dnl Xft
dnl
AC_ARG_ENABLE([xft],
AC_HELP_STRING([--disable-xft], [disable if you do not want to use Xft @<:@default=yes@:>@]),
[want_xft="$enableval"], [want_xft=yes])
if test x$want_xft = "xyes"; then
if test "x$want_x11" != "xyes"; then
dnl silently disable if no x11
want_xft=no
else
PKG_CHECK_MODULES([Xft], [xft])
CFLAGS="$CFLAGS $Xft_CFLAGS"
LIBS="$LIBS $Xft_LIBS"
AC_DEFINE(XFT, 1, [Define for Xft support])
fi
fi
dnl
dnl IMLIB2
dnl
AC_ARG_ENABLE([imlib2],
AC_HELP_STRING([--enable-imlib2], [enable if you want Imlib2 support [[default=no]]]),
[want_imlib2="$enableval"], [want_imlib2=no])
if test x$want_imlib2 = xyes; then
if test "x$want_x11" != "xyes"; then
dnl silently disable if no x11
want_imlib2=no
else
PKG_CHECK_MODULES([Imlib2], [imlib2])
CFLAGS="$CFLAGS $Imlib2_CFLAGS"
LIBS="$LIBS $Imlib2_LIBS"
AC_DEFINE(IMLIB2, 1, [Define if you want Imlib2 support])
fi
fi
AM_CONDITIONAL(BUILD_IMLIB2, test x$want_imlib2 = xyes)
dnl
dnl NVIDIA libXNVCtrl support
dnl
AC_ARG_ENABLE([nvidia],
AC_HELP_STRING([--enable-nvidia], [enable if you want nvidia support @<:@default=no@:>@]),
[want_nvidia="$enableval"], [want_nvidia=no])
if test x$want_nvidia = xyes; then
if test "x$want_x11" != "xyes"; then
# do nada
want_nvidia=no
else
AC_CHECK_HEADERS([NVCtrl/NVCtrl.h], [], AC_MSG_ERROR([NVCtrl/NVCtrl.h header not found]))
dnl AC_CHECK_LIB([XNVCtrl], [XNVCTRLQueryVersion], [] ,[AC_MSG_ERROR([grrr])] )
dnl AC_CHECK_LIB([XNVCtrl], [XNVCTRLCheckTargetData], [], [AC_MSG_ERROR([grr])])
dnl ## am I Stupid ??
dnl ## it won't find the lib for some reason!?
LIBS="$LIBS -lXNVCtrl"
AC_DEFINE(NVIDIA, 1, [Define if you want nvidia support])
fi
fi
AM_CONDITIONAL(BUILD_NVIDIA, test x$want_nvidia = xyes)
dnl
dnl GLIB
dnl
if test x$WANT_GLIB = xyes; then
PKG_CHECK_MODULES([GLib2], [glib-2.0])
CFLAGS="$CFLAGS $GLib2_CFLAGS"
LIBS="$LIBS $GLib2_LIBS"
fi
dnl
dnl KVM
dnl
if test x$WANT_KVM = xyes; then
AC_CHECK_LIB(kvm, kvm_open,
LIBS="$LIBS -lkvm",
AC_MSG_ERROR([Could not find kvm_open in -lkvm.])
)
fi
dnl
dnl devstat
dnl
if test x$WANT_DEVSTAT = xyes; then
AC_CHECK_LIB(devstat, devstat_getversion,
LIBS="$LIBS -ldevstat",
AC_MSG_ERROR([Cound not find devstat_getversion in -ldevstat.])
)
fi
dnl
dnl OSSLIB for NetBSD/OpenBSD
dnl
if test x$WANT_OSSLIB = xyes; then
AC_CHECK_LIB(ossaudio, _oss_ioctl,
LIBS="$LIBS -lossaudio",
AC_MSG_ERROR([Could not find oss_ioctl in -lossaudio.])
)
fi
dnl
dnl ALSA for Linux
dnl
AC_ARG_ENABLE([alsa],
AC_HELP_STRING([--disable-alsa], [disable if you do not
want ALSA support @<:@default=yes@:>@]),
[want_alsa="$enableval"], [want_alsa=yes])
if test x$want_alsa = xyes; then
AC_CHECK_HEADER(alsa/asoundlib.h,, want_alsa=no)
fi
if test x$want_alsa = xyes; then
AC_CHECK_LIB(asound, snd_pcm_open,LIBS="$LIBS -lasound", want_alsa=no)
fi
if test x$want_alsa = xyes; then
AC_DEFINE(MIXER_IS_ALSA, 1, [Define if the mixers use ALSA])
fi
dnl
dnl Some headers
dnl
AC_CHECK_HEADERS([signal.h unistd.h sys/utsname.h sys/stat.h linux/soundcard.h alsa/asoundlib.h dirent.h mcheck.h \
sys/statfs.h sys/param.h pthread.h assert.h errno.h time.h])
AC_CHECK_HEADERS([sys/mount.h], [], [],
[#ifdef HAVE_SYS_PARAM_H
#include <sys/param.h>
#endif
])
# check if we have inotify support
AC_CHECK_HEADERS([sys/inotify.h])
dnl
dnl Some defines
dnl
AC_DEFINE(DEFAULTNETDEV, "eth0", [Default networkdevice])
AC_DEFINE(CONFIG_FILE, "$HOME/.conkyrc", [Configfile of the user])
AC_DEFINE(MAX_SPECIALS_DEFAULT, 512, [Default maximum number of special things, e.g. fonts, offsets, aligns, etc.])
AC_DEFINE(MAX_USER_TEXT_DEFAULT, 16384, [Default maximum size of config TEXT buffer, i.e. below TEXT line.])
AC_DEFINE(DEFAULT_TEXT_BUFFER_SIZE, 256, [Default size used for temporary, static text buffers])
dnl
dnl Some functions
dnl
AC_CHECK_FUNCS([calloc malloc free popen sysinfo getloadavg memrchr strndup gethostbyname_r])
AC_SEARCH_LIBS(clock_gettime, [rt],
[AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [Define if you have clock_gettime()])],
[AC_CHECK_FUNCS([gettimeofday], [], [AC_MSG_ERROR([gettimeofday() not available!])])], [])
dnl
dnl Structure checks
dnl
AC_CHECK_MEMBER([struct statfs.f_fstypename],
[AC_DEFINE(HAVE_STRUCT_STATFS_F_FSTYPENAME, 1, [Define if struct statfs has the f_fstypename member])],
[],
[#include <sys/statfs.h>])
dnl
dnl Check for zlib
dnl
AC_CHECK_HEADER(zlib.h,
[],
[AC_MSG_ERROR([zlib is missing; please install the headers first])])
dnl
dnl Check for OpenMP support
dnl
AC_ARG_ENABLE([openmp],
AC_HELP_STRING([--enable-openmp], [enable if you want OpenMP support @<:@default=no@:>@]),
[want_openmp="$enableval"], [want_openmp=no])
if test x$want_openmp = xyes; then
AX_OPENMP([
gcc_version=`$CC -dumpversion`
gcc_major=`echo $gcc_version | sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
gcc_minor=`echo $gcc_version | sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
dnl check that the gcc version is >=4.3, if we're using gcc
if test ! "x$GCC" = "xyes" -o $gcc_major -ge 4 -a $gcc_minor -ge 3; then
AC_DEFINE(HAVE_OPENMP,1,[Define if OpenMP is enabled])
CFLAGS="$CFLAGS $OPENMP_CFLAGS"
else
want_openmp=no
fi
])
fi
dnl
dnl Check doc stuff
dnl
AC_CHECK_PROGS(db2x_xsltproc_cmd, db2x_xsltproc)
AC_CHECK_PROGS(db2x_manxml_cmd, db2x_manxml)
AC_CHECK_PROGS(xsltproc_cmd, xsltproc)
if test x$db2x_xsltproc_cmd = "x" -o x$xsltproc_cmd = "x"; then
AM_CONDITIONAL(HAVE_DOCSTUFF, false)
else
AM_CONDITIONAL(HAVE_DOCSTUFF, true)
fi
dnl
dnl kstat in Solaris
dnl
if test x$WANT_KSTAT = xyes; then
dah=no
AC_CHECK_LIB([kstat], [kstat_open], [dah=yes], [])
if test x$dah = xyes; then
AC_DEFINE(HAVE_KSTAT, 1, [Define if you have kstat (Solaris)])
LDFLAGS="$LDFLAGS -lkstat"
fi
fi
AC_DEFUN([AM_LANGINFO_CODESET],
[
AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
[AC_TRY_LINK([#include <langinfo.h>],
[char* cs = nl_langinfo(CODESET);],
am_cv_langinfo_codeset=yes,
am_cv_langinfo_codeset=no)
])
if test $am_cv_langinfo_codeset = yes; then
AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
[Define if you have <langinfo.h> and nl_langinfo(CODESET).])
fi
])
dnl ************************
dnl * Linker optimizations *
dnl ************************
AC_MSG_CHECKING([if $LD accepts -O1])
case `$LD -O1 -v 2>&1 </dev/null` in
*GNU* | *BSD*)
LDFLAGS="$LDFLAGS -Wl,-O1"
AC_MSG_RESULT([yes])
;;
*)
AC_MSG_RESULT([no])
;;
esac
dnl Solve multiple definitions (only necessary when gnulib is used)
dnl LDFLAGS="$LDFLAGS -Xlinker -zmuldefs"
dnl
dnl Da.
dnl
CFLAGS="$CFLAGS -Wall -W"
dnl
dnl debug
dnl
AC_ARG_ENABLE([debug],
AC_HELP_STRING([--enable-debug], [compile with debug symbols @<:@default=no@:>@]),
[want_debug="$enableval"], [want_debug=no])
if test "x$want_debug" = "xyes" -a $ac_cv_c_compiler_gnu != no; then
CFLAGS="$CFLAGS -g3"
AC_DEFINE([DEBUG], 1, [Define for debugging])
fi
dnl
dnl testing
dnl
AC_ARG_ENABLE([testing],
AC_HELP_STRING([--enable-testing], [use strict compiler flags for testing @<:@default=no@:>@]),
[want_testing="$enableval"], [want_testing=no])
if test "x$want_testing" = "xyes" -a $ac_cv_c_compiler_gnu != no; then
if test "x$want_debug" = "xyes"; then
CFLAGS="$CFLAGS -Wextra -Wunused -Wdeclaration-after-statement -Wundef -Wendif-labels -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wold-style-definition -Winline -Wmissing-noreturn -Wmissing-format-attribute -Wredundant-decls -std=c99 -pedantic -Werror"
AC_DEFINE([TESTING], [], [Define for testing (enables strict compiler flags)])
else
CFLAGS="$CFLAGS -g3 -Wextra -Wunused -Wdeclaration-after-statement -Wundef -Wendif-labels -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wold-style-definition -Winline -Wmissing-noreturn -Wmissing-format-attribute -Wredundant-decls -std=c99 -pedantic -Werror"
AC_DEFINE([TESTING], [], [Define for testing (enables strict compiler flags)])
fi
fi
AC_SUBST(CFLAGS)
AC_SUBST(X11_LIBS)
AC_OUTPUT
dnl
dnl Print summary
dnl
cat << EOF
$PACKAGE $VERSION configured successfully:
Installing into: $prefix
System config dir: $sysconfdir
C compiler flags: $CFLAGS
Linker flags: $LDFLAGS
Libraries: $LIBS
* X11:
X11 support: $want_x11
XDamage support: $want_xdamage
XDBE support: $want_double_buffer
Xft support: $want_xft
* Music detection:
Audacious: $want_audacious
BMPx: $want_bmpx
MPD: $want_mpd
MOC: $want_moc
XMMS2: $want_xmms2
* General:
OpenMP: $want_openmp
math: $want_math
hddtemp: $want_hddtemp
portmon: $want_portmon
RSS: $want_rss
Lua: $want_lua
wireless: $want_wlan
IBM: $want_ibm
nvidia: $want_nvidia
eve-online: $want_eve
config-output: $want_config_output
Imlib2: $want_imlib2
ALSA mixer: $want_alsa
apcupsd: $want_apcupsd
I/O stats: $want_iostats
EOF