dnl dnl Copyright (c) 2004 - 2021 The Xfce development team dnl dnl 2005-2007 Jasper Huijsmans dnl 2006-2008 Nick Schermer dnl dnl *************************** dnl *** Version information *** dnl *************************** m4_define([libxfce4panel_verinfo], [4:0:0]) dnl current:revision:age m4_define([libxfce4panel_version_api], [2.0]) m4_define([xfce4_panel_config_version], [2]) m4_define([xfce4_panel_version_major], [4]) m4_define([xfce4_panel_version_minor], [17]) m4_define([xfce4_panel_version_micro], [0]) m4_define([xfce4_panel_version_nano], []) dnl leave this empty to have no nano version 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()])]) dnl ******************************************* dnl *** Debugging support for GIT snapshots *** dnl ******************************************* m4_define([panel_debug_default], [ifelse(xfce4_panel_version_tag(), [git], [yes], [minimum])]) dnl *************************** dnl *** Initialize autoconf *** dnl *************************** AC_COPYRIGHT([Copyright (c) 2002 - 2021 The Xfce development team. All rights reserved. Written for Xfce by Jasper Huijsmans and Nick Schermer .]) AC_INIT([xfce4-panel],[xfce4_panel_version],[https://gitlab.xfce.org/xfce/xfce4-panel/-/issues],[xfce4-panel]) AC_PREREQ([2.69]) AC_REVISION([xfce4_panel_version_build]) dnl *************************** dnl *** Initialize automake *** dnl *************************** AC_CONFIG_HEADERS([config.h]) AM_INIT_AUTOMAKE([1.8 no-dist-gzip dist-bzip2 tar-ustar foreign]) AM_MAINTAINER_MODE() AC_CONFIG_MACRO_DIRS([m4]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) dnl ****************************** dnl *** Set helper path prefix *** dnl ****************************** AC_ARG_WITH([helper-path-prefix], [AC_HELP_STRING([--with-helper-path-prefix=PATH], [Path prefix under which helper executables will be installed (default: $libdir)])], [HELPER_PATH_PREFIX="$withval"], [HELPER_PATH_PREFIX="$libdir"]) AC_SUBST([HELPER_PATH_PREFIX]) dnl ******************************* dnl *** Check for UNIX variants *** dnl ******************************* AC_USE_SYSTEM_EXTENSIONS dnl ******************************** dnl *** Check for basic programs *** dnl ******************************** AC_PROG_CC() AM_PROG_CC_C_O() LT_PATH_LD([]) AC_PROG_INSTALL() IT_PROG_INTLTOOL([0.35.0]) AC_CHECK_PROGS([PERL], [perl5 perl]) m4_ifdef([AC_PROG_SED], [AC_PROG_SED], [AC_CHECK_PROG(SED, sed, sed)]) dnl ************************** dnl *** Initialize libtool *** dnl ************************** LT_PREREQ([2.2.6]) LT_INIT([disable-static]) dnl ************************************** dnl *** Substitute version information *** dnl ************************************** LIBXFCE4PANEL_VERINFO=libxfce4panel_verinfo() AC_SUBST([LIBXFCE4PANEL_VERINFO]) dnl ************************** dnl *** Substitute version *** dnl ************************** LIBXFCE4PANEL_VERSION=xfce4_panel_version() 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_DEFINE([LIBXFCE4PANEL_VERSION_API], "libxfce4panel_version_api()", [libxfce4panel api version]) AC_SUBST([LIBXFCE4PANEL_VERSION]) AC_SUBST([LIBXFCE4PANEL_VERSION_API]) AC_SUBST([LIBXFCE4PANEL_VERSION_MAJOR]) AC_SUBST([LIBXFCE4PANEL_VERSION_MINOR]) AC_SUBST([LIBXFCE4PANEL_VERSION_MICRO]) dnl ********************************* dnl *** Substitute config version *** dnl ********************************* XFCE4_PANEL_CONFIG_VERSION=xfce4_panel_config_version() AC_DEFINE([XFCE4_PANEL_CONFIG_VERSION], xfce4_panel_config_version(), [config migration version]) AC_SUBST([XFCE4_PANEL_CONFIG_VERSION]) 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 \ libintl.h]) AC_CHECK_FUNCS([bind_textdomain_codeset]) 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 gdbus-codegen *** dnl *********************************** AC_ARG_VAR([GDBUS_CODEGEN], [D-Bus code and documentation generator from XML D-Bus interface definitions]) AC_PATH_PROG([GDBUS_CODEGEN], [gdbus-codegen], [no]) if test x"$GDBUS_CODEGEN" = x"no"; then AC_MSG_ERROR([could not find gdbus-codegen in \$PATH. You can run ./configure GDBUS_CODEGEN=/path/to/gdbus-codegen to define a custom location for it.]) fi dnl *********************************** dnl *** Check for required packages *** dnl *********************************** XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.15.6]) XDT_CHECK_PACKAGE([GARCON], [garcon-1], [0.5.0]) XDT_CHECK_PACKAGE([GARCON_GTK3], [garcon-gtk3-1], [0.5.0]) XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-2], [4.17.1]) XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.13.2]) XDT_CHECK_PACKAGE([GTK], [gtk+-3.0], [3.22.0]) XDT_CHECK_PACKAGE([EXO], [exo-2], [0.11.2]) XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.50.0]) XDT_CHECK_PACKAGE([GIO], [gio-2.0], [2.50.0]) PKG_CHECK_MODULES([GIO_UNIX], [gio-unix-2.0 >= 2.50.0]) XDT_CHECK_PACKAGE([GMODULE], [gmodule-2.0], [2.50.0]) XDT_CHECK_PACKAGE([CAIRO], [cairo], [1.0.0]) XDT_CHECK_PACKAGE([LIBWNCK], [libwnck-3.0], [3.0]) dnl ********************************************* dnl *** Optional DBUSMENU for StatusNotifiers *** dnl ********************************************* XDT_CHECK_OPTIONAL_PACKAGE([DBUSMENU], [dbusmenu-gtk3-0.4], [16.04.0], [dbusmenu-gtk3], [dbusmenu features]) dnl ********************************** dnl *** Optional GIO UNIX features *** dnl ********************************** XDT_CHECK_OPTIONAL_PACKAGE([GIO_UNIX], [gio-unix-2.0], [2.50.0], [gio-unix], [GIO UNIX features]) dnl *************************************** dnl *** Check for gobject-introspection *** dnl *************************************** GOBJECT_INTROSPECTION_CHECK([1.30.0]) dnl ************************* dnl *** Check for vapigen *** dnl ************************* VAPIGEN_CHECK() dnl ************************* dnl *** Check for gtk-doc *** dnl ************************* GTK_DOC_CHECK([1.9]) dnl *********************************** dnl *** Check for debugging support *** dnl *********************************** XDT_FEATURE_DEBUG([panel_debug_default]) dnl ************************************** dnl *** Check for linker optimizations *** dnl ************************************** XDT_FEATURE_LINKER_OPTS() 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]) 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_CONFIG_FILES([ Makefile common/Makefile docs/Makefile docs/reference/Makefile icons/Makefile icons/16x16/Makefile icons/24x24/Makefile icons/32x32/Makefile icons/48x48/Makefile icons/128x128/Makefile icons/scalable/Makefile libxfce4panel/Makefile libxfce4panel/libxfce4panel-2.0.pc libxfce4panel/libxfce4panel-config.h migrate/Makefile migrate/default.xml panel/Makefile wrapper/Makefile plugins/Makefile plugins/actions/Makefile plugins/actions/actions.desktop.in plugins/applicationsmenu/Makefile plugins/applicationsmenu/applicationsmenu.desktop.in plugins/clock/Makefile plugins/clock/clock.desktop.in plugins/directorymenu/Makefile plugins/directorymenu/directorymenu.desktop.in plugins/launcher/Makefile plugins/launcher/launcher.desktop.in plugins/pager/Makefile plugins/pager/pager.desktop.in plugins/separator/Makefile plugins/separator/separator.desktop.in plugins/showdesktop/Makefile plugins/showdesktop/showdesktop.desktop.in plugins/systray/Makefile plugins/systray/systray.desktop.in plugins/tasklist/Makefile plugins/tasklist/tasklist.desktop.in plugins/windowmenu/Makefile plugins/windowmenu/windowmenu.desktop.in po/Makefile.in ]) AC_OUTPUT dnl *************************** dnl *** Print configuration *** dnl *************************** echo echo "Build Configuration:" echo echo "* Debug Support: $enable_debug" echo "* GNU Visibility: $have_gnuc_visibility" echo