-dnl $Id$
+dnl $Id$
dnl major, minor and micro version macros.
m4_define([conky_version_major], [1])
-m4_define([conky_version_minor], [4])
-m4_define([conky_version_micro], [6])
-m4_define([conky_version_tag], [svn]) dnl [] for releases
-m4_define([conky_version_revision],[r@REVISION@])
-m4_define([conky_version],
+m4_define([conky_version_minor], [5])
+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(), [svn],
- [-conky_version_tag()-conky_version_revision()],
- [ifelse(conky_version_tag(), [], [], [-conky_version_tag()])])])
+ conky_version_tag(), [pre],
+ [conky_version_revision()],
+ [ifelse(conky_version_tag(), [], [], [conky_version_tag()])])])
AC_INIT([Conky], [conky_version()], [brenden1@users.sourceforge.net])
if test x"$HAVE_PKGCONFIG" = x"no"; then
AC_MSG_ERROR([pkg-config is required!])
fi
-PKG_PROG_PKG_CONFIG([0.17.2])
+PKG_PROG_PKG_CONFIG([0.19])
AC_CONFIG_FILES(
Makefile
+ data/Makefile
doc/Makefile
src/Makefile
src/build.h
Linux*)
WANT_SYSINFO=yes
;;
- FreeBSD*)
+ FreeBSD*|GNU/kFreeBSD*)
WANT_KVM=yes
WANT_DEVSTAT=yes
;;
# WANT_OSSLIB=yes
# ;;
-# OpenBSD*)
-# WANT_KVM=yes
-# WANT_OSSLIB=yes
-# ;;
+ OpenBSD*)
+ WANT_KVM=yes
+ WANT_OSSLIB=yes
+ ;;
# Solaris doesn't work at all right now
# SunOS*)
AM_CONDITIONAL(BUILD_LINUX, test x$uname = xLinux)
#AM_CONDITIONAL(BUILD_SOLARIS, test x$uname = xSunOS)
-AM_CONDITIONAL(BUILD_FREEBSD, test x$uname = xFreeBSD)
+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)
+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))"
dnl
AC_ARG_ENABLE([own_window],
- AC_HELP_STRING([--disable-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])
dnl
AC_ARG_ENABLE([audacious],
- AC_HELP_STRING([--enable-audacious], [enable audacious player support @<:@default=no@:>@]),
+ 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)
+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 >= 0.1])
- CFLAGS="$CFLAGS $AUDACIOUS_CFLAGS"
- LIBS="$LIBS $AUDACIOUS_LIBS"
+ 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
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"
+ 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
AC_ARG_ENABLE([hddtemp],
- AC_HELP_STRING([--disable-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
- AC_DEFINE(HDDTEMP, 1, [Define if you want hddtemp support])
+ 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
AC_DEFINE(XMMS2, 1, [Define if you want XMMS2 support])
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 SMAPI
+dnl
+
+AC_ARG_ENABLE([smapi],
+ AC_HELP_STRING([--enable-smapi], [enable if you want smapi support @<:@default=no@:>@]),
+ [want_smapi="$enableval"], [want_smapi=no])
+
+AM_CONDITIONAL(BUILD_SMAPI, test x$want_smapi = xyes)
+if test x$want_smapi = xyes; then
+ AC_DEFINE(SMAPI, 1, [Define if you want smapi 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 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])
+AM_CONDITIONAL(BUILD_NVIDIA, test x$want_nvidia = xyes)
+if test x$want_nvidia = xyes; then
+ 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
dnl
dnl IMLIB2
dnl
AC_ARG_ENABLE([portmon],
- AC_HELP_STRING([--disable-portmon],
+ AC_HELP_STRING([--disable-portmon],
[disable if you do not want tcp (ip4) port monitoring @<:@default=yes@:>@]),
[want_portmon="$enableval"], [want_portmon=yes])
-AM_CONDITIONAL(BUILD_PORT_MONITORS, test x$want_portmon = xyes)
-if test x$want_portmon = xyes; then
- if test "x$uname" != xLinux; then
+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_HEADERS([netdb.h netinet/in.h netinet/tcp.h sys/socket.h arpa/inet.h], [],
+ 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
+ if test x"$PORT_MONITORS_MISSING" = xyes; then
AC_MSG_ERROR([missing a needed network header for port monitoring])
fi
- PKG_CHECK_MODULES([GLIB], [glib-2.0])
- CFLAGS="$CFLAGS $GLIB_CFLAGS"
- LIBS="$LIBS $GLIB_LIBS"
- AC_DEFINE(TCP_PORT_MONITOR, 1, [Define if you want tcp port monitoring support])
+ 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
fi
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], [], [Define for debugging])
-fi
-
-dnl
dnl X11
dnl
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],
+ 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_x11" != "xyes"; then
dnl silently disable if no x11
want_double_buffer=no
- else
+ else
if $PKG_CONFIG --exists xext; then
- PKG_CHECK_MODULES([XEXT],[xext])
- CFLAGS="$CFLAGS $XEXT_CFLAGS"
- LIBS="$LIBS $XEXT_LIBS"
+ 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_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])
dnl
AC_ARG_ENABLE([xdamage],
- AC_HELP_STRING([--disable-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_x11" != "xyes"; then
dnl silently disable if no x11
want_xdamage=no
- else
+ else
if $PKG_CONFIG --exists xdamage; then
- PKG_CHECK_MODULES([XDAMAGE],[xdamage])
- CFLAGS="$CFLAGS $XDAMAGE_CFLAGS"
- LIBS="$LIBS $XDAMAGE_LIBS"
+ 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"],
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"
+ 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 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 Some functions
dnl
-AC_CHECK_FUNCS([calloc malloc free popen sysinfo getloadavg memrchr])
-AC_SEARCH_LIBS(clock_gettime, [rt],
+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
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 -Werror"
+ AC_DEFINE([DEBUG], [], [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"
+ AC_DEFINE([TESTING], [], [Define for testing (enables strict compiler flags)])
+ else
+ CFLAGS="$CFLAGS -g3 -Werror -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"
+ AC_DEFINE([TESTING], [], [Define for testing (enables strict compiler flags)])
+ fi
+fi
+
AC_SUBST(CFLAGS)
AC_SUBST(X11_LIBS)
$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
+ * 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
- xmms2: $want_xmms2
+ * Music detection:
+ Audacious: $want_audacious
+ BMPx: $want_bmpx
+ MPD: $want_mpd
+ XMMS2: $want_xmms2
- * general:
+ * General:
hddtemp: $want_hddtemp
- portmon: $want_portmon
+ portmon: $want_portmon
+ RSS: $want_rss
+ wireless: $want_wlan
+ SMAPI: $want_smapi
+ nvidia: $want_nvidia
EOF