Skip to content
Snippets Groups Projects
configure.ac.in 7.19 KiB
Newer Older
Nick Schermer's avatar
Nick Schermer committed
dnl
dnl Copyright (c) 2004 - 2008 The Xfce development team
dnl
dnl 2005-2007 Jasper Huijsmans <jasper@xfce.org>
dnl 2006-2008 Nick Schermer <nick@xfce.org>
dnl

dnl ***************************
dnl *** Version information ***
dnl ***************************
m4_define([libxfce4panel_verinfo], [3:0:0]) dnl current:revision:age
m4_define([libxfce4panel_version_api], [1.0])
Nick Schermer's avatar
Nick Schermer committed
m4_define([xfce4_panel_version_major], [4])
m4_define([xfce4_panel_version_minor], [7])
m4_define([xfce4_panel_version_micro], [0])
m4_define([xfce4_panel_version_nano],  []) dnl leave this empty to have no nano version
Nick Schermer's avatar
Nick Schermer committed
m4_define([xfce4_panel_version_build], [@REVISION@])
m4_define([xfce4_panel_version_tag],   [git])
m4_define([xfce4_panel_version], [xfce4_panel_version_major().xfce4_panel_version_minor().xfce4_panel_version_micro()ifelse(xfce4_panel_version_nano(), [], [], [.xfce4_panel_version_nano()])ifelse(xfce4_panel_version_tag(), [git], [xfce4_panel_version_tag()-xfce4_panel_version_build()], [xfce4_panel_version_tag()])])
Nick Schermer's avatar
Nick Schermer committed

dnl *******************************************
dnl *** Debugging support for GIT snapshots ***
Nick Schermer's avatar
Nick Schermer committed
dnl *******************************************
m4_define([panel_debug_default], [ifelse(xfce4_panel_version_tag(), [git], [yes], [minimum])])
Nick Schermer's avatar
Nick Schermer committed

dnl ***************************
dnl *** Initialize autoconf ***
dnl ***************************
AC_COPYRIGHT([Copyright (c) 2002 - 2008
        The Xfce development team. All rights reserved.

Written for Xfce by Jasper Huijsmans <jasper@xfce.org>
and Nick Schermer <nick@xfce.org>.])
AC_INIT([xfce4-panel], [xfce4_panel_version], [http://bugzilla.xfce.org/], [xfce4-panel])
AC_PREREQ([2.50])
AC_REVISION([xfce4_panel_version_build])
Nick Schermer's avatar
Nick Schermer committed

dnl ***************************
dnl *** Initialize automake ***
dnl ***************************
AM_CONFIG_HEADER([config.h])
AM_INIT_AUTOMAKE([1.8 dist-bzip2 tar-ustar])
AM_MAINTAINER_MODE()
Nick Schermer's avatar
Nick Schermer committed
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
Nick Schermer's avatar
Nick Schermer committed

dnl *******************************
dnl *** Check for UNIX variants ***
dnl *******************************
AC_AIX()
AC_ISC_POSIX()

dnl ********************************
dnl *** Check for basic programs ***
dnl ********************************
AC_PROG_CC()
Nick Schermer's avatar
Nick Schermer committed
AC_PROG_LD()
AC_PROG_INSTALL()
AC_PROG_INTLTOOL()
Nick Schermer's avatar
Nick Schermer committed

dnl **************************
dnl *** Initialize libtool ***
dnl **************************
AC_DISABLE_STATIC()
AC_PROG_LIBTOOL()
AC_CHECK_PROGS([PERL], [perl5 perl])
Nick Schermer's avatar
Nick Schermer committed

dnl **************************************
dnl *** Substitute version information ***
dnl **************************************
LIBXFCE4PANEL_VERINFO=libxfce4panel_verinfo()
AC_SUBST([LIBXFCE4PANEL_VERINFO])

dnl **************************
dnl *** Substitute version ***
dnl **************************
LIBXFCE4PANEL_VERSION_API=libxfce4panel_version_api()
LIBXFCE4PANEL_VERSION_MAJOR=xfce4_panel_version_major()
LIBXFCE4PANEL_VERSION_MINOR=xfce4_panel_version_minor()
LIBXFCE4PANEL_VERSION_MICRO=xfce4_panel_version_micro()
AC_SUBST([LIBXFCE4PANEL_VERSION_API])
AC_SUBST([LIBXFCE4PANEL_VERSION_MAJOR])
AC_SUBST([LIBXFCE4PANEL_VERSION_MINOR])
AC_SUBST([LIBXFCE4PANEL_VERSION_MICRO])

Nick Schermer's avatar
Nick Schermer committed
dnl **********************************
dnl *** Check for standard headers ***
dnl **********************************
AC_HEADER_STDC()
AC_CHECK_HEADERS([stdlib.h unistd.h locale.h stdio.h errno.h time.h string.h \
                  math.h sys/types.h sys/wait.h memory.h signal.h sys/prctl.h])
Nick Schermer's avatar
Nick Schermer committed

dnl ******************************
dnl *** Check for i18n support ***
dnl ******************************
XDT_I18N([@LINGUAS@])

dnl *******************************
dnl *** Check for X11 installed ***
dnl *******************************
XDT_CHECK_LIBX11_REQUIRE()

dnl ***********************************
dnl *** Check for required packages ***
dnl ***********************************
XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.6.0])
XDT_CHECK_PACKAGE([GARCON], [garcon-1], [0.0.1])
XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-1], [4.7.0])
XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.6.0])
XDT_CHECK_PACKAGE([EXO], [exo-1], [0.5.1])
XDT_CHECK_PACKAGE([GTK], [gtk+-2.0], [2.14.0])
XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.18.0])
XDT_CHECK_PACKAGE([GMODULE], [gmodule-2.0], [2.18.0])
XDT_CHECK_PACKAGE([DBUS], [dbus-glib-1], [0.73])
Nick Schermer's avatar
Nick Schermer committed
XDT_CHECK_PACKAGE([CAIRO], [cairo], [1.0.0])
XDT_CHECK_PACKAGE([LIBWNCK], [libwnck-1.0], [2.22])
Nick Schermer's avatar
Nick Schermer committed

dnl *************************
dnl *** Check for gtk-doc ***
dnl *************************
GTK_DOC_CHECK([1.9])
Nick Schermer's avatar
Nick Schermer committed

dnl ***********************************
dnl *** Check for debugging support ***
dnl ***********************************
XDT_FEATURE_DEBUG([panel_debug_default])

dnl **************************************
dnl *** Check for linker optimizations ***
dnl **************************************
XDT_FEATURE_LINKER_OPTS()
Nick Schermer's avatar
Nick Schermer committed

dnl ****************************************
dnl *** Check for ELF visibility support ***
dnl ****************************************
AC_ARG_ENABLE([visibility], AC_HELP_STRING([--disable-visibility], [Do not use ELF visibility attributes]), [], [enable_visibility=yes])
have_gnuc_visibility=no
if test x"$enable_visibility" != x"no"; then
  dnl Check whether the compiler supports the visibility attribute
  save_CFLAGS="$CFLAGS"
  CFLAGS="$CFLAGS -Wall -Werror"
  AC_MSG_CHECKING([whether $CC supports the GNUC visibility attribute])
  AC_COMPILE_IFELSE(AC_LANG_SOURCE(
  [
    void test_default (void);
    void test_hidden (void);

    void __attribute__ ((visibility("default"))) test_default (void) {}
    void __attribute__ ((visibility("hidden"))) test_hidden (void) {}

    int main (int argc, char **argv) { test_default (); test_hidden (); return 0; }
  ]),
  [
    have_gnuc_visibility=yes
    AC_MSG_RESULT([yes])
  ],
  [
    AC_MSG_RESULT([no])
  ])
  CFLAGS="$save_CFLAGS"
fi
if test x"$have_gnuc_visibility" = x"yes"; then
  CPPFLAGS="$CPPFLAGS -DHAVE_GNUC_VISIBILITY"
fi
AM_CONDITIONAL([HAVE_GNUC_VISIBILITY], [test x"$have_gnuc_visibility" = x"yes"])

dnl *************************************
dnl *** Compensate for broken gtk-doc ***
dnl *************************************
XDT_SUPPORTED_FLAGS([GTK_DOC_EXTRA_CFLAGS], [-Wno-sign-compare])
AC_SUBST([GTK_DOC_EXTRA_CFLAGS])

Nick Schermer's avatar
Nick Schermer committed
dnl *********************************
dnl *** Substitute platform flags ***
dnl *********************************
AC_MSG_CHECKING([PLATFORM_CPPFLAGS])
AC_MSG_RESULT([$PLATFORM_CPPFLAGS])
AC_SUBST([PLATFORM_CPPFLAGS])
AC_MSG_CHECKING([PLATFORM_CFLAGS])
AC_MSG_RESULT([$PLATFORM_CFLAGS])
AC_SUBST([PLATFORM_CFLAGS])
AC_MSG_CHECKING([PLATFORM_LDFLAGS])
AC_MSG_RESULT([$PLATFORM_LDFLAGS])
AC_SUBST([PLATFORM_LDFLAGS])

AC_OUTPUT([
Makefile
docs/Makefile
docs/references/Makefile
docs/references/version.xml
Nick Schermer's avatar
Nick Schermer committed
libxfce4panel/Makefile
libxfce4panel/libxfce4panel-1.0.pc
libxfce4panel/libxfce4panel-config.h
migrate/Makefile
Nick Schermer's avatar
Nick Schermer committed
panel/Makefile
wrapper/Makefile
plugins/Makefile
plugins/actions/Makefile
Nick Schermer's avatar
Nick Schermer committed
plugins/clock/Makefile
plugins/launcher/Makefile
plugins/pager/Makefile
plugins/separator/Makefile
plugins/showdesktop/Makefile
Nick Schermer's avatar
Nick Schermer committed
plugins/systray/Makefile
plugins/tasklist/Makefile
Nick Schermer's avatar
Nick Schermer committed
po/Makefile.in
])

dnl ***************************
dnl *** Print configuration ***
dnl ***************************
echo
echo "Build Configuration:"
echo
echo "* Debug Support:        $enable_debug"
echo "* GNU Visibility:       $have_gnuc_visibility"
echo