2002-11-02 10:39:31 +00:00
AC_PREREQ(2.50)
2001-06-02 04:14:18 +00:00
AC_INIT(src/display.c)
AM_CONFIG_HEADER(config.h)
2002-04-16 03:23:21 +00:00
# 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987
2004-06-16 23:29:05 +00:00
# we'll hold the 2.8.x versioning for GNOME 2.8, it was also used
# for GNOME 2.6, then after GNOME 2.8 we'll have the numbers synced
# with GNOME
AM_INIT_AUTOMAKE(metacity, 2.8.2)
2001-06-02 04:14:18 +00:00
2002-01-08 07:23:35 +00:00
# Honor aclocal flags
ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
2001-06-02 04:14:18 +00:00
GETTEXT_PACKAGE=metacity
AC_SUBST(GETTEXT_PACKAGE)
2002-12-08 19:17:17 +00:00
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[Name of default gettext domain])
2001-06-02 04:14:18 +00:00
AM_MAINTAINER_MODE
2002-05-27 15:45:26 +00:00
AC_PROG_INTLTOOL([0.21])
2001-06-02 04:14:18 +00:00
AC_PROG_CC
AC_ISC_POSIX
AC_HEADER_STDC
2003-04-19 07:19:04 +00:00
AC_LIBTOOL_WIN32_DLL
2001-06-02 04:14:18 +00:00
AM_PROG_LIBTOOL
2003-09-29 18:16:45 +00:00
#### Integer sizes
AC_CHECK_SIZEOF(char)
AC_CHECK_SIZEOF(short)
AC_CHECK_SIZEOF(long)
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(void *)
AC_CHECK_SIZEOF(long long)
AC_CHECK_SIZEOF(__int64)
2003-09-29 22:17:16 +00:00
## byte order
AC_C_BIGENDIAN
2003-09-29 18:16:45 +00:00
#### Warnings
2001-06-02 04:14:18 +00:00
changequote(,)dnl
if test "x$GCC" = "xyes"; then
case " $CFLAGS " in
*[\ \ ]-Wall[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wall" ;;
esac
2002-08-04 20:20:53 +00:00
# case " $CFLAGS " in
# *[\ \ ]-Wshadow[\ \ ]*) ;;
# *) CFLAGS="$CFLAGS -Wshadow" ;;
# esac
2002-02-07 03:07:56 +00:00
case " $CFLAGS " in
*[\ \ ]-Wchar-subscripts[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wchar-subscripts" ;;
esac
case " $CFLAGS " in
*[\ \ ]-Wmissing-declarations[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wmissing-declarations" ;;
esac
case " $CFLAGS " in
*[\ \ ]-Wmissing-prototypes[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wmissing-prototypes" ;;
esac
case " $CFLAGS " in
*[\ \ ]-Wnested-externs[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wnested-externs" ;;
esac
case " $CFLAGS " in
*[\ \ ]-Wpointer-arith[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wpointer-arith" ;;
esac
case " $CFLAGS " in
*[\ \ ]-Wcast-align[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wcast-align" ;;
esac
case " $CFLAGS " in
*[\ \ ]-Wsign-compare[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wsign-compare" ;;
esac
2001-06-02 04:14:18 +00:00
if test "x$enable_ansi" = "xyes"; then
case " $CFLAGS " in
*[\ \ ]-ansi[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -ansi" ;;
esac
case " $CFLAGS " in
*[\ \ ]-pedantic[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -pedantic" ;;
esac
fi
fi
changequote([,])dnl
2003-02-13 23:16:49 +00:00
METACITY_PC_MODULES='gtk+-2.0 >= 2.2.0 pango >= 1.2.0'
2002-12-08 19:17:17 +00:00
2003-01-11 09:32:31 +00:00
AC_ARG_ENABLE(config-dialog, [ --enable-config-dialog enable the config dialog that you need with GNOME 2.0 (obsolete with GNOME 2.2)],,enable_config_dialog=no)
2002-12-01 20:48:10 +00:00
AM_CONDITIONAL(BUILD_CONFIG_DIALOG, test x$enable_config_dialog = xyes)
if test x$enable_config_dialog = xyes; then
AC_DEFINE(BUILD_CONFIG_DIALOG,1,[Build configuration dialog])
fi
2002-07-23 19:12:02 +00:00
2003-01-11 09:32:31 +00:00
AC_ARG_ENABLE(gconf, [ --disable-gconf disable gconf usage, for embedded/size-sensitive non-GNOME builds],,enable_gconf=yes)
2002-12-08 19:17:17 +00:00
if test x$enable_gconf = xyes; then
AC_DEFINE(HAVE_GCONF,1,[Build with gconf support])
METACITY_PC_MODULES="$METACITY_PC_MODULES gconf-2.0 >= 1.2.0"
fi
2003-01-11 09:32:31 +00:00
AC_ARG_ENABLE(verbose-mode, [ --disable-verbose disable metacity's ability to do verbose logging, for embedded/size-sensitive custom builds],,enable_verbose_mode=yes)
2002-12-08 19:17:17 +00:00
if test x$enable_verbose_mode = xyes; then
AC_DEFINE(WITH_VERBOSE_MODE,1,[Build with verbose mode support])
fi
2003-01-11 09:32:31 +00:00
AC_ARG_ENABLE(sm, [ --disable-sm disable metacity's session management support, for embedded/size-sensitive custom non-GNOME builds],,enable_sm=auto)
2002-12-08 19:17:17 +00:00
2003-01-11 09:32:31 +00:00
AC_ARG_ENABLE(startup-notification, [ --disable-startup-notification disable metacity's startup notification support, for embedded/size-sensitive custom non-GNOME builds],,enable_startup_notification=auto)
2002-12-08 19:17:17 +00:00
2003-11-16 04:20:17 +00:00
AC_ARG_ENABLE(compositor, [ --disable-compositor disable metacity's compositing manager],,enable_compositor=auto)
2003-01-11 09:32:31 +00:00
AC_ARG_ENABLE(xsync, [ --disable-xsync disable metacity's use of the XSync extension],,enable_xsync=auto)
2002-12-10 03:23:04 +00:00
2003-01-11 18:09:12 +00:00
AC_ARG_ENABLE(shape, [ --disable-shape disable metacity's use of the shaped window extension],,enable_shape=auto)
2002-07-23 19:12:02 +00:00
## try definining HAVE_BACKTRACE
AC_CHECK_HEADERS(execinfo.h, [AC_CHECK_FUNCS(backtrace)])
2004-04-16 12:36:08 +00:00
ALL_LINGUAS="am ar az be bg bn ca cs cy da de el en_CA en_GB es et eu fa fi fr ga gl gu he hi hr hu id is it ja ko lt lv mk ml mn ms nl nn no pa pl pt pt_BR ro ru sl sk sq sr sr@Latn sv ta th tr uk vi wa zh_CN zh_TW"
2001-12-09 22:41:12 +00:00
AM_GLIB_GNU_GETTEXT
2001-06-02 04:14:18 +00:00
## here we get the flags we'll actually use
2003-02-13 23:16:49 +00:00
PKG_CHECK_MODULES(METACITY_MESSAGE, gtk+-2.0 >= 2.2.0)
PKG_CHECK_MODULES(METACITY_WINDOW_DEMO, gtk+-2.0 >= 2.2.0)
2002-12-08 19:17:17 +00:00
if test x$enable_config_dialog = xyes; then
2003-02-13 23:16:49 +00:00
PKG_CHECK_MODULES(METACITY_PROPS, gtk+-2.0 >= 2.2.0 gconf-2.0 >= 1.1.9 libglade-2.0)
fi
if $PKG_CONFIG --atleast-version 1.2.0 pangoxft; then
echo "pangoxft found"
else
AC_MSG_ERROR("Pango 1.2.0 or greater based on Xft2 is required")
2002-12-08 19:17:17 +00:00
fi
2001-06-02 04:14:18 +00:00
2004-07-01 19:38:03 +00:00
STARTUP_NOTIFICATION_VERSION=0.7
2002-12-08 19:17:17 +00:00
AC_MSG_CHECKING([Startup notification library >= $STARTUP_NOTIFICATION_VERSION])
2002-10-25 23:35:50 +00:00
if $PKG_CONFIG --atleast-version $STARTUP_NOTIFICATION_VERSION libstartup-notification-1.0; then
2002-12-08 19:17:17 +00:00
have_startup_notification=yes
else
have_startup_notification=no
fi
AC_MSG_RESULT($have_startup_notification)
if test x$enable_startup_notification = xyes; then
have_startup_notification=yes
echo "startup-notification support forced on"
elif test x$enable_startup_notification = xauto; then
true
else
have_startup_notification=no
fi
if test x$have_startup_notification = xyes; then
2002-10-25 23:35:50 +00:00
echo "Building with libstartup-notification"
2002-12-08 19:17:17 +00:00
METACITY_PC_MODULES="$METACITY_PC_MODULES libstartup-notification-1.0 >= $STARTUP_NOTIFICATION_VERSION"
AC_DEFINE(HAVE_STARTUP_NOTIFICATION, , [Building with startup notification support])
2002-10-25 23:35:50 +00:00
else
echo "Building without libstartup-notification"
fi
2003-11-16 04:20:17 +00:00
XCOMPOSITE_VERSION=1.0
AC_MSG_CHECKING([Xcomposite >= $XCOMPOSITE_VERSION])
if $PKG_CONFIG --atleast-version $XCOMPOSITE_VERSION xcomposite; then
have_xcomposite=yes
else
have_xcomposite=no
fi
AC_MSG_RESULT($have_xcomposite)
if test x$enable_compositor = xyes; then
have_xcomposite=yes
echo "CompositeExt support forced on"
elif test x$enable_compositor = xauto; then
true
else
have_xcomposite=no
fi
if test x$have_xcomposite = xyes; then
echo "Building with CompositeExt"
2003-11-21 02:32:05 +00:00
METACITY_PC_MODULES="$METACITY_PC_MODULES xcomposite >= $XCOMPOSITE_VERSION xfixes xrender xdamage"
AC_DEFINE(HAVE_COMPOSITE_EXTENSIONS, , [Building with compositing manager support])
2003-11-16 04:20:17 +00:00
else
echo "Building without compositing manager"
fi
2002-12-08 19:17:17 +00:00
PKG_CHECK_MODULES(METACITY, $METACITY_PC_MODULES)
2002-03-04 17:24:15 +00:00
AC_PATH_XTRA
2002-09-27 20:28:34 +00:00
ALL_X_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
# Check for Xinerama extension (Solaris impl or Xfree impl)
metacity_save_cppflags="$CPPFLAGS"
2002-07-24 14:47:52 +00:00
CPPFLAGS="$CPPFLAGS $X_CFLAGS"
2002-04-21 19:35:02 +00:00
2004-02-15 05:17:34 +00:00
AC_ARG_ENABLE(xinerama,[ --disable-xinerama disable metacity's use of the Xinerama extension],
2004-04-11 15:44:12 +00:00
try_xinerama=$enable_xinerama,try_xinerama=yes)
2004-02-15 05:17:34 +00:00
2002-10-25 23:35:50 +00:00
use_solaris_xinerama=no
use_xfree_xinerama=no
2004-02-15 05:17:34 +00:00
if test "${try_xinerama}" != no; then
case "$host" in
*-*-solaris*)
# Check for solaris
use_solaris_xinerama=yes
AC_CHECK_LIB(Xext, XineramaGetInfo,
use_solaris_xinerama=yes, use_solaris_xinerama=no,
$ALL_X_LIBS)
if test "x$use_solaris_xinerama" = "xyes"; then
AC_CHECK_HEADER(X11/extensions/xinerama.h,
if test -z "`echo $ALL_X_LIBS | grep "\-lXext" 2> /dev/null`"; then
X_EXTRA_LIBS="-lXext $X_EXTRA_LIBS"
fi
AC_DEFINE(HAVE_SOLARIS_XINERAMA, , [Have Solaris-style Xinerama])
AC_DEFINE(HAVE_XINERAMA, , [Have some version of Xinerama]),
use_solaris_xinerama=no,
[#include <X11/Xlib.h>])
fi
AC_MSG_CHECKING(for Xinerama support on Solaris)
AC_MSG_RESULT($use_solaris_xinerama);
;;
*)
# Check for XFree
use_xfree_xinerama=yes
AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
[AC_CHECK_HEADER(X11/extensions/Xinerama.h,
X_EXTRA_LIBS="-lXinerama $X_EXTRA_LIBS"
if test -z "`echo $ALL_X_LIBS | grep "\-lXext" 2> /dev/null`"; then
X_EXTRA_LIBS="-lXext $X_EXTRA_LIBS"
fi
AC_DEFINE(HAVE_XFREE_XINERAMA, , [Have XFree86-style Xinerama])
AC_DEFINE(HAVE_XINERAMA,, [Have some version of Xinerama]),
use_xfree_xinerama=no,
[#include <X11/Xlib.h>])],
use_xfree_xinerama=no, -lXext $ALL_X_LIBS)
AC_MSG_CHECKING(for Xinerama support on XFree86)
AC_MSG_RESULT($use_xfree_xinerama);
;;
esac
fi
2002-09-27 20:28:34 +00:00
CPPFLAGS="$metacity_save_cppflags"
2002-04-21 19:35:02 +00:00
2002-05-31 00:02:54 +00:00
SHAPE_LIBS=
2002-10-25 23:35:50 +00:00
found_shape=no
2002-05-31 00:02:54 +00:00
AC_CHECK_LIB(Xext, XShapeQueryExtension,
2002-10-27 15:15:27 +00:00
[AC_CHECK_HEADER(X11/extensions/shape.h,
SHAPE_LIBS=-lXext found_shape=yes)],
2002-09-27 20:28:34 +00:00
, $ALL_X_LIBS)
2002-05-31 00:02:54 +00:00
2003-01-11 18:09:12 +00:00
if test x$enable_shape = xno; then
found_shape=no
fi
if test x$enable_shape = xyes; then
if test "$found_shape" = "no"; then
AC_MSG_ERROR([--enable-shape forced and Shape not found])
exit 1
fi
fi
2002-10-27 15:15:27 +00:00
if test "x$found_shape" = "xyes"; then
2002-12-08 19:17:17 +00:00
AC_DEFINE(HAVE_SHAPE, , [Have the shape extension library])
2002-05-31 00:02:54 +00:00
fi
2003-01-28 15:07:43 +00:00
found_xkb=no
AC_CHECK_LIB(X11, XkbQueryExtension,
[AC_CHECK_HEADER(X11/XKBlib.h,
found_xkb=yes)],
, $ALL_X_LIBS)
if test "x$found_xkb" = "xyes"; then
AC_DEFINE(HAVE_XKB, , [Have keyboard extension library])
fi
2002-10-04 18:31:54 +00:00
RANDR_LIBS=
2002-10-25 23:35:50 +00:00
found_randr=no
2002-10-04 18:31:54 +00:00
AC_CHECK_LIB(Xrandr, XRRUpdateConfiguration,
2002-10-27 15:15:27 +00:00
[AC_CHECK_HEADER(X11/extensions/Xrandr.h,
RANDR_LIBS=-lXrandr found_randr=yes,,
[#include <X11/Xlib.h>])],
2003-09-29 23:23:46 +00:00
, -lXrender -lXext $ALL_X_LIBS)
2002-10-04 18:31:54 +00:00
2002-10-27 15:15:27 +00:00
if test "x$found_randr" = "xyes"; then
2002-12-08 19:17:17 +00:00
AC_DEFINE(HAVE_RANDR, , [Have the Xrandr extension library])
2002-10-04 18:31:54 +00:00
fi
2002-07-24 14:47:52 +00:00
2002-12-10 03:23:04 +00:00
XSYNC_LIBS=
found_xsync=no
AC_CHECK_LIB(Xext, XSyncQueryExtension,
[AC_CHECK_HEADER(X11/extensions/sync.h,
found_xsync=yes,,
[#include <X11/Xlib.h>])],
, $ALL_X_LIBS)
if test x$enable_xsync = xno; then
found_xsync=no
fi
if test x$enable_xsync = xyes; then
if test "$found_xsync" = "no"; then
AC_MSG_ERROR([--enable-xsync forced and XSync not found])
exit 1
fi
fi
if test "x$found_xsync" = "xyes"; then
XSYNC_LIBS=-lXext
AC_DEFINE(HAVE_XSYNC, , [Have the Xsync extension library])
fi
METACITY_LIBS="$XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS $METACITY_LIBS"
2002-05-03 11:40:04 +00:00
METACITY_MESSAGE_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS $METACITY_MESSAGE_LIBS"
METACITY_WINDOW_DEMO_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS $METACITY_WINDOW_DEMO_LIBS"
2002-05-29 11:54:12 +00:00
METACITY_PROPS_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS $METACITY_PROPS_LIBS"
2002-03-04 17:24:15 +00:00
2002-10-25 23:35:50 +00:00
found_sm=no
2001-06-22 06:21:44 +00:00
case "$METACITY_LIBS" in
*-lSM*)
2002-10-25 23:35:50 +00:00
found_sm=yes
2001-06-22 06:21:44 +00:00
;;
*)
AC_CHECK_LIB(SM, SmcSaveYourselfDone,
2001-11-20 23:51:13 +00:00
[AC_CHECK_HEADERS(X11/SM/SMlib.h,
2002-10-25 23:35:50 +00:00
METACITY_LIBS="-lSM -lICE $METACITY_LIBS" found_sm=no)],
2001-06-22 06:21:44 +00:00
, $METACITY_LIBS)
;;
esac
2002-12-08 19:17:17 +00:00
if test x$enable_sm = xno; then
found_sm=no
fi
if test x$enable_sm = xyes; then
if test "$found_sm" = "no"; then
AC_MSG_ERROR([--enable-sm forced and -lSM not found])
exit 1
fi
fi
2002-10-25 23:35:50 +00:00
if test "$found_sm" = "yes"; then
2002-12-08 19:17:17 +00:00
AC_DEFINE(HAVE_SM, , [Building with SM support])
2001-06-22 06:21:44 +00:00
fi
2002-10-25 23:35:50 +00:00
AM_CONDITIONAL(HAVE_SM, test "$found_sm" = "yes")
2001-09-16 00:30:45 +00:00
2001-06-03 01:33:27 +00:00
HOST_ALIAS=$host_alias
AC_SUBST(HOST_ALIAS)
2001-09-17 04:42:37 +00:00
AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
if test x"$GDK_PIXBUF_CSOURCE" = xno; then
AC_MSG_ERROR([gdk-pixbuf-csource executable not found in your path - should be installed with GTK])
fi
AC_SUBST(GDK_PIXBUF_CSOURCE)
2001-10-13 04:15:25 +00:00
## hack to work with old GTK versions for now
save_LDFLAGS=$LDFLAGS
LDFLAGS="$METACITY_LIBS $LDFLAGS"
AC_CHECK_FUNCS(gdk_pixbuf_new_from_stream)
LDFLAGS=$save_LDFLAGS
2002-12-08 19:17:17 +00:00
if test x$enable_gconf = xyes; then
AC_PATH_PROG(GCONFTOOL, gconftool-2, no)
if test x"$GCONFTOOL" = xno; then
AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf])
fi
2001-12-09 22:41:12 +00:00
2002-12-08 19:17:17 +00:00
AM_GCONF_SOURCE_2
2001-12-09 22:41:12 +00:00
fi
2001-06-02 04:14:18 +00:00
AC_OUTPUT([
Makefile
2002-11-20 04:57:47 +00:00
doc/Makefile
2001-06-02 04:14:18 +00:00
src/Makefile
2001-08-03 04:20:27 +00:00
src/wm-tester/Makefile
2002-11-07 22:09:59 +00:00
src/libmetacity-private.pc
2001-10-15 04:14:58 +00:00
src/tools/Makefile
2002-02-07 03:07:56 +00:00
src/themes/Makefile
2002-02-08 06:50:09 +00:00
po/Makefile.in
2001-06-02 04:14:18 +00:00
])
2002-10-25 23:35:50 +00:00
2002-12-08 19:17:17 +00:00
if test x$enable_gconf = xno; then
echo "*** WARNING WARNING WARNING WARNING WARNING"
echo "*** Building without GConf"
echo "*** This means there's no way to change prefs except"
echo "*** hacking source code, at least for now."
echo "*** Also, some prefs may have broken defaults."
echo "*** Patches needed for a simple no-gconf config file."
echo "*** This is intended for embedded systems etc., not for normal use."
fi
if test x$enable_verbose_mode = xno; then
echo "*** WARNING WARNING WARNING WARNING WARNING"
echo "*** Building without verbose mode"
echo "*** This means there's no way to debug metacity problems."
echo "*** Please build normal desktop versions of metacity"
echo "*** with verbose mode enabled so users can use it when they report bugs."
fi
2002-10-25 23:35:50 +00:00
dnl ==========================================================================
echo "
metacity-$VERSION:
2002-12-01 20:48:10 +00:00
prefix: ${prefix}
source code location: ${srcdir}
compiler: ${CC}
2002-12-08 19:17:17 +00:00
GConf: ${enable_gconf}
2002-12-01 20:48:10 +00:00
XFree86 Xinerama: ${use_xfree_xinerama}
Solaris Xinerama: ${use_solaris_xinerama}
2002-12-08 19:17:17 +00:00
Startup notification: ${have_startup_notification}
2003-11-16 04:20:17 +00:00
Compositing manager: ${have_xcomposite}
2002-12-01 20:48:10 +00:00
Session management: ${found_sm}
Shape extension: ${found_shape}
Resize-and-rotate: ${found_randr}
2002-12-10 03:23:04 +00:00
Xsync: ${found_xsync}
2002-12-01 20:48:10 +00:00
Deprecated config dialog: ${enable_config_dialog}
2002-10-25 23:35:50 +00:00
"
2004-06-16 23:29:05 +00:00
echo "This is the UNSTABLE branch of metacity, use 2.8.1.x for stable (gnome-2-6 branch in CVS)"