nautilus/configure.in
Dave Camp cec1840cd9 Check for and include X libraries explicitly.
2002-03-28  Dave Camp  <dave@ximian.com>

	* configure.in: Check for and include X libraries explicitly.
2002-03-28 19:54:40 +00:00

429 lines
13 KiB
Text

AC_INIT(src)
dnl ===========================================================================
ART_REQUIRED=2.3.6
BONOBO_ACTIVATION_REQUIRED=0.9.3
BONOBO_REQUIRED=1.113
BONOBO_UI_REQUIRED=1.110.2
EEL_REQUIRED=1.1.9
ESOUND_REQUIRED=0.2.23
GLIB_REQUIRED=2
GNOME_CANVAS_REQUIRED=1.105
GNOME_DESKTOP_REQUIRED=1.5.11
GNOME_REQUIRED=1.105
GNOME_UI_REQUIRED=1.110.1
GNOME_VFS_REQUIRED=1.1
GTK_REQUIRED=2
MEDUSA_REQUIRED=0.5.1
RSVG_REQUIRED=1.1.5
XML_REQUIRED=2.4.7
AC_SUBST(EEL_REQUIRED)
AC_SUBST(GNOME_VFS_REQUIRED)
AC_SUBST(MEDUSA_REQUIRED)
AC_SUBST(RSVG_REQUIRED)
AC_SUBST(XML_REQUIRED)
dnl ===========================================================================
AM_INIT_AUTOMAKE(nautilus, 1.1.11)
AM_CONFIG_HEADER(config.h)
AM_SANITY_CHECK
AM_MAINTAINER_MODE
AC_C_BIGENDIAN
AC_C_CONST
AC_ISC_POSIX
AC_PROG_CC
AC_PROG_CPP
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
AM_DISABLE_STATIC
AM_PROG_LIBTOOL
AM_PATH_ORBIT2
PKG_CHECK_MODULES(ALL, \
esound >= $ESOUND_REQUIRED \
bonobo-activation-2.0 >= $BONOBO_ACTIVATION_REQUIRED \
eel-2.0 >= $EEL_REQUIRED \
glib-2.0 >= $GLIB_REQUIRED \
gnome-desktop-2.0 >= $GNOME_DESKTOP_REQUIRED \
gnome-vfs-2.0 >= $GNOME_VFS_REQUIRED \
gtk+-2.0 >= $GTK_REQUIRED \
libart-2.0 >= $ART_REQUIRED \
libbonobo-2.0 >= $BONOBO_REQUIRED \
libbonoboui-2.0 >= $BONOBO_UI_REQUIRED \
libgnome-2.0 >= $GNOME_REQUIRED \
libgnomecanvas-2.0 >= $GNOME_CANVAS_REQUIRED \
libgnomeui-2.0 >= $GNOME_UI_REQUIRED \
librsvg-2.0 >= $RSVG_REQUIRED \
libxml-2.0 >= $XML_REQUIRED)
dnl ==========================================================================
ALL_LINGUAS="az ca cs da de el en_GB es fi fr ga gl hu it ja ko lt lv ms nl nn no pl pt pt_BR ro ru sk sl sv ta tr uk zh_CN zh_TW"
GETTEXT_PACKAGE=nautilus
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE")
AM_GLIB_GNU_GETTEXT
AC_PROG_INTLTOOL
dnl ==========================================================================
ENABLE_PROFILER=
AC_ARG_ENABLE(profiler,
[ --enable-profiler Enable profiler],
ENABLE_PROFILER=1
AC_DEFINE(ENABLE_PROFILER))
if test "x$ENABLE_PROFILER" = "x1"
then
CFLAGS="-g -O -gdwarf-2 -finstrument-functions -D__NO_STRING_INLINES"
LDFLAGS="/gnome/GNOME2/lib/libprofiler.so -lpthread"
fi
AC_SUBST(ENABLE_PROFILER)
AM_CONDITIONAL(ENABLE_PROFILER, test "x$ENABLE_PROFILER" = "x1")
dnl ==========================================================================
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal)
dnl ==========================================================================
AC_CHECK_FUNCS(setmntent endmntent hasmntopt)
AC_CHECK_HEADERS(mntent.h sys/mnttab.h sys/vfstab.h sys/cdio.h)
dnl ==========================================================================
AC_CHECK_FUNCS(setenv unsetenv putenv)
dnl ==========================================================================
dnl FAM
FAM_MISSING_WARNING="Nautilus depends on FAM to provide notification when files are altered (either through filesystem polling, or a kernel notification mechanism). If Nautilus is built without FAM support, directories viewed with Nautilus will not remain in synch with the actual filesystem when they are altered by external processes. Particularly if you are a distributor please compile Nautilus with FAM support. FAM is available from http://oss.sgi.com/projects/fam/. A patch to add Linux Kernel 2.4 directory notify support to FAM (highly desirable) is available from http://people.redhat.com/alexl/files/"
FAM_LIBS=
AC_CHECK_LIB(fam, FAMOpen,
[AC_CHECK_HEADERS(fam.h,
[AC_DEFINE(HAVE_LIBFAM)
FAM_LIBS="-lfam"],
AC_MSG_WARN(*** FAM support will not be built (header files not found) $FAM_MISSING_WARNING ***))],
AC_MSG_WARN(*** FAM support will not be built (FAM library not found) $FAM_MISSING_WARNING ***))
AC_SUBST(FAM_LIBS)
dnl ==========================================================================
dnl x86 checks (used by audio routines in music component)
_system_is_x86="no"
AC_CHECK_HEADER( asm/vm86.h, _system_is_x86="yes" )
AM_CONDITIONAL(X86_OPTIMIZED, test "x$_system_is_x86" = "xyes")
dnl ==========================================================================
dnl X
x_libs="`$PKG_CONFIG --libs pangox`"
case x_libs in
*-lX11*) pango_omitted_x_deps=no ;;
*) pango_omitted_x_deps=yes ;;
esac
x_cflags="`$PKG_CONFIG --cflags pangox`"
x_extra_libs=
if test $pango_omitted_x_deps = yes ; then
AC_PATH_XTRA
if test x$no_x = xyes ; then
AC_MSG_ERROR([X development libraries not found])
fi
x_libs="$X_LIBS -lX11 $X_EXTRA_LIBS"
fi
## Strip the .la files
x_libs_for_checks=$x_libs
#for I in $x_libs ; do
# case $I in
# *.la) ;;
# *) x_libs_for_checks="$x_libs_for_checks $I" ;;
# esac
#done
AC_CHECK_LIB(X11, XOpenDisplay, :,
AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]),
$x_libs_for_checks)
dnl ==========================================================================
dnl cdda
AM_CONDITIONAL(HAVE_CDDA, false)
AC_CHECK_HEADERS(cdda_interface.h cdda_paranoia.h, [
CDDA_LIBS="-lcdda_paranoia -lcdda_interface"
AM_CONDITIONAL(HAVE_CDDA, true)
])
dnl ==========================================================================
dnl jw (for doc build)
AC_PATH_PROG(JW,jw,no)
if test x$JW = xno; then
HAVE_JW="no"
else
HAVE_JW="yes"
fi
AM_CONDITIONAL(HAVE_JW, test "x$HAVE_JW" = "xyes")
AC_SUBST(HAVE_JW)
dnl ==========================================================================
dnl medusa checking
AC_MSG_CHECKING(for Medusa)
PKG_CHECK_MODULES(MEDUSA, medusa-2.0 >= $MEDUSA_REQUIRED, have_medusa=yes, have_medusa=no)
if test "x$have_medusa" = "xyes"; then
AC_DEFINE(HAVE_MEDUSA,1)
EXTRA_CORE_MODULES="$EXTRA_CORE_MODULES medusa-2.0"
fi
dnl ==========================================================================
dnl libpng
if test -z "$LIBPNG"; then
AC_CHECK_LIB(png, png_read_info,
[AC_CHECK_HEADER(png.h,
png_ok=yes,
png_ok=no)],
AC_MSG_ERROR(*** (PNG library not found) ***), -lz -lm)
if test "$png_ok" = yes; then
AC_MSG_CHECKING([for png_structp in png.h])
AC_TRY_COMPILE([#include <png.h>],
[png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
png_ok=yes,
png_ok=no)
AC_MSG_RESULT($png_ok)
if test "$png_ok" = yes; then
PNG='png'; LIBPNG='-lpng -lz'
else
AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
fi
else
AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
fi
fi
AC_SUBST(LIBPNG)
dnl ==========================================================================
dnl libjpeg
if test -z "$LIBJPEG"; then
AC_CHECK_LIB(jpeg, jpeg_start_decompress,
[AC_CHECK_HEADER(jpeglib.h,
jpeg_ok=yes,
jpeg_ok=no)],
AC_MSG_WARN(*** (jpeg library not found) ***), -lm)
if test "$jpeg_ok" = yes; then
JPEG='jpeg'; LIBJPEG='-ljpeg'
AC_DEFINE(HAVE_LIBJPEG)
else
AC_MSG_WARN(*** JPEG loader will not be built (jpeg header file not found) ***)
fi
fi
AC_SUBST(LIBJPEG)
dnl ==========================================================================
dnl Turn on the additional warnings last, so -Werror doesn't affect other tests.
AC_ARG_ENABLE(more-warnings,
[ --enable-more-warnings Maximum compiler warnings],
set_more_warnings="$enableval",[
if test -f $srcdir/CVSVERSION; then
is_cvs_version=true
set_more_warnings=yes
else
set_more_warnings=no
fi
])
AC_MSG_CHECKING(for more warnings, including -Werror)
if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
AC_MSG_RESULT(yes)
CFLAGS="\
-Wall \
-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes \
-Wnested-externs -Wpointer-arith \
-Wcast-align -Wsign-compare \
-Werror \
$CFLAGS"
for option in -Wsign-promo -Wno-sign-compare; do
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$option $CFLAGS"
AC_MSG_CHECKING([whether gcc understands $option])
AC_TRY_COMPILE([], [],
has_option=yes,
has_option=no,)
if test $has_option = no; then
CFLAGS="$SAVE_CFLAGS"
fi
AC_MSG_RESULT($has_option)
unset has_option
unset SAVE_CFLAGS
done
unset option
else
AC_MSG_RESULT(no)
fi
dnl ==========================================================================
dnl gimphwrapbox
GIMPHWRAPBOX_MODULES="gtk+-2.0"
GIMPHWRAPBOX_CFLAGS="`$PKG_CONFIG --cflags $GIMPHWRAPBOX_MODULES`"
AC_SUBST(GIMPHWRAPBOX_CFLAGS)
dnl libnautilus (must list bonobo-activation and libbonobo because idldir does not respect "requires")
LIBNAUTILUS_MODULES="eel-2.0 bonobo-activation-2.0 libbonobo-2.0 libbonoboui-2.0"
LIBNAUTILUS_CFLAGS="`$PKG_CONFIG --cflags $LIBNAUTILUS_MODULES`"
AC_SUBST(LIBNAUTILUS_CFLAGS)
LIBNAUTILUS_LIBS="`$PKG_CONFIG --libs $LIBNAUTILUS_MODULES`"
AC_SUBST(LIBNAUTILUS_LIBS)
LIBNAUTILUS_IDL_INCLUDES="`$PKG_CONFIG --variable=idldir $LIBNAUTILUS_MODULES | $srcdir/add-include-prefix`"
AC_SUBST(LIBNAUTILUS_IDL_INCLUDES)
dnl core nautilus (must list bonobo-activation and libbonobo because idldir does not respect "requires")
CORE_MODULES="eel-2.0 librsvg-2.0 bonobo-activation-2.0 libbonobo-2.0 libbonoboui-2.0 esound gnome-desktop-2.0 $EXTRA_CORE_MODULES"
CORE_CFLAGS="`$PKG_CONFIG --cflags $CORE_MODULES` $x_cflags"
AC_SUBST(CORE_CFLAGS)
CORE_LIBS="`$PKG_CONFIG --libs $CORE_MODULES` $CDDA_LIBS $FAM_LIBS $LIBJPEG $x_libs"
AC_SUBST(CORE_LIBS)
CORE_IDL_INCLUDES="`$PKG_CONFIG --variable=idldir $CORE_MODULES | $srcdir/add-include-prefix`"
AC_SUBST(CORE_IDL_INCLUDES)
dnl typical components
COMPONENT_MODULES="eel-2.0 libbonoboui-2.0 gnome-vfs-module-2.0"
COMPONENT_CFLAGS="`$PKG_CONFIG --cflags $COMPONENT_MODULES`"
AC_SUBST(COMPONENT_CFLAGS)
COMPONENT_LIBS="`$PKG_CONFIG --libs $COMPONENT_MODULES`"
AC_SUBST(COMPONENT_LIBS)
dnl music component
MUSIC_COMPONENT_MODULES="$COMPONENT_MODULES esound"
MUSIC_COMPONENT_CFLAGS="`$PKG_CONFIG --cflags $MUSIC_COMPONENT_MODULES`"
AC_SUBST(MUSIC_COMPONENT_CFLAGS)
MUSIC_COMPONENT_LIBS="`$PKG_CONFIG --libs $MUSIC_COMPONENT_MODULES`"
AC_SUBST(MUSIC_COMPONENT_LIBS)
DISABLE_DEPRECATED_CFLAGS=" \
-DG_DISABLE_DEPRECATED \
-DGDK_DISABLE_DEPRECATED \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
-DGTK_DISABLE_DEPRECATED \
-DGNOME_DISABLE_DEPRECATED \
-DBONOBO_DISABLE_DEPRECATED"
AC_SUBST(DISABLE_DEPRECATED_CFLAGS)
dnl libbackground
PKG_CHECK_MODULES(CAPPLET, "gtk+-2.0 gconf-2.0 libgnomeui-2.0 libbonoboui-2.0")
dnl ==========================================================================
dnl ==============================================
dnl Special GConf section
dnl ==============================================
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
AM_GCONF_SOURCE_2
AC_OUTPUT([
Makefile
components/Makefile
components/adapter/Makefile
components/hardware/Makefile
components/hardware/icons/Makefile
components/history/Makefile
components/loser/Makefile
components/loser/content/Makefile
components/loser/sidebar/Makefile
components/music/Makefile
components/news/Makefile
components/notes/Makefile
components/sample/Makefile
components/text/Makefile
components/text/services/Makefile
components/throbber/Makefile
components/tree/Makefile
cut-n-paste-code/Makefile
cut-n-paste-code/widgets/Makefile
cut-n-paste-code/widgets/gimphwrapbox/Makefile
data/Makefile
data/emblems/Makefile
data/patterns/Makefile
docs/Makefile
help/Makefile
help/nautilus-quick-reference/C/Makefile
help/nautilus-quick-reference/Makefile
help/nautilus-quick-reference/es/Makefile
help/nautilus-quick-reference/ko/Makefile
help/nautilus-quick-reference/no/Makefile
help/nautilus-quick-reference/sv/Makefile
help/nautilus-release-notes/C/Makefile
help/nautilus-release-notes/Makefile
help/nautilus-screenshot-guidelines/C/Makefile
help/nautilus-screenshot-guidelines/Makefile
help/nautilus-user-manual/C/Makefile
help/nautilus-user-manual/Makefile
icons/Makefile
icons/crux_eggplant/Makefile
icons/crux_eggplant/backgrounds/Makefile
icons/crux_eggplant/sidebar_tab_pieces/Makefile
icons/crux_eggplant/throbber/Makefile
icons/crux_teal/Makefile
icons/crux_teal/backgrounds/Makefile
icons/crux_teal/sidebar_tab_pieces/Makefile
icons/crux_teal/throbber/Makefile
icons/default/Makefile
icons/gnome/Makefile
icons/gnome/sidebar_tab_pieces/Makefile
icons/gnome/throbber/Makefile
icons/sidebar_tab_pieces/Makefile
icons/sierra/Makefile
icons/tahoe/Makefile
icons/throbber/Makefile
libbackground/Makefile
libnautilus-adapter/Makefile
libnautilus-private/Makefile
libnautilus/Makefile
libnautilus/libnautilus.pc
nautilus.spec
omf-install/Makefile
po/Makefile.in
src/Makefile
src/file-manager/Makefile
test/Makefile
user-guide/Makefile
user-guide/gnufdl/Makefile
user-guide/gnugpl/Makefile
])
dnl ==========================================================================