nautilus/configure.in
Ramiro Estrugo 3d2a9e54d5 Remove nautilusclist cut-n-paste code.
* configure.in:
	Remove nautilusclist cut-n-paste code.

	* cut-n-paste-code/widgets/Makefile.am:
	* cut-n-paste-code/widgets/nautilusclist/.cvsignore:
	* cut-n-paste-code/widgets/nautilusclist/Makefile.am:
	* cut-n-paste-code/widgets/nautilusclist/nautilusclist.c:
	* cut-n-paste-code/widgets/nautilusclist/nautilusclist.h:
	Remove nautilusclist cut-n-paste code.

	* libnautilus-extensions/nautilus-file-dnd.h:
	* libnautilus-extensions/nautilus-file-dnd.c:
	New file with Drag and Drop code that operated on NautilusFile
	objects.

	* libnautilus-extensions/Makefile.am:
	* libnautilus-extensions/nautilus-list-column-title.c:
	* libnautilus-extensions/nautilus-list-column-title.h:
	* libnautilus-extensions/nautilus-list.c:
	* libnautilus-extensions/nautilus-list.h:
	* libnautilus-extensions/nautilus-ctree.c:
	* libnautilus-extensions/nautilus-ctree.h:
	* libnautilus-extensions/nautilus-drag.c:
	* libnautilus-extensions/nautilus-drag.h:
	Move these widget into eel.

	* libnautilus-extensions/nautilus-icon-dnd.h:
	* libnautilus-extensions/nautilus-icon-dnd.c:
	Update for eel dnd code move.

	* nautilus-installer/install-lib/Makefile.am:
	* nautilus-installer/libtrilobite/Makefile.am:
	Remove some voodoo that was needed for cut-n-paste code in
	trilobite that no longer is among us.

	* components/help/hyperbola-nav-tree.c:
	* components/music/nautilus-music-view.c:
	* components/rpmview/nautilus-rpm-verify-window.c:
	* components/rpmview/nautilus-rpm-view-private.h:
	* components/rpmview/nautilus-rpm-view.c:
	* components/tree/nautilus-tree-view-dnd.c:
	* components/tree/nautilus-tree-view-dnd.h:
	* components/tree/nautilus-tree-view-private.h:
	* components/tree/nautilus-tree-view.c:
	* src/file-manager/fm-directory-view.c:
	* src/file-manager/fm-list-view.c: (fm_list_view_initialize),
	* src/nautilus-sidebar.c:
	Update for clist, ctree, list and dnd code that now lives in eel.
	Also do more #include cleanup.
2001-04-04 15:51:58 +00:00

1200 lines
34 KiB
Plaintext

AC_INIT(src)
dnl ==========================================================================
dnl
dnl If you add a version number here, you *must* add an AC_SUBST line for
dnl it too, or it will never make it into the spec file!
dnl
dnl ==========================================================================
GNOME_REQUIRED=1.2.8
GNOME_LIBS_REQUIRED=1.2.11
GTK_REQUIRED=1.2.9
GLIB_REQUIRED=1.2.9
BONOBO_REQUIRED=0.33
OAF_REQUIRED=0.6.2
GCONF_REQUIRED=0.12
GDK_PIXBUF_REQUIRED=0.10.0
CONTROL_CENTER_REQUIRED=1.2.3
IMLIB_REQUIRED=1.9.8
LIBXML_REQUIRED=1.8.10
ORBIT_REQUIRED=0.5.6
GNOME_VFS_REQUIRED=1.1
POPT_REQUIRED=1.5
FREETYPE_REQUIRED=2.0.1
FREETYPE_LIBRARY_REQUIRED=6.1.0
MEDUSA_REQUIRED=0.2.2
ESOUND_REQUIRED=0.2
LIBGHTTP_REQUIRED=1.0.9
SCROLLKEEPER_REQUIRED=0.1.4
AMMONITE_REQUIRED=0.8.7
LIBRSVG_REQUIRED=0.0.1
EEL_REQUIRED=0.0.1
AC_SUBST(IMLIB_REQUIRED)
AC_SUBST(LIBXML_REQUIRED)
AC_SUBST(ORBIT_REQUIRED)
AC_SUBST(GNOME_VFS_REQUIRED)
AC_SUBST(POPT_REQUIRED)
AC_SUBST(FREETYPE_REQUIRED)
AC_SUBST(MEDUSA_REQUIRED)
AC_SUBST(ESOUND_REQUIRED)
AC_SUBST(LIBGHTTP_REQUIRED)
AC_SUBST(SCROLLKEEPER_REQUIRED)
AC_SUBST(LIBRSVG_REQUIRED)
AC_SUBST(EEL_REQUIRED)
dnl ===========================================================================
dnl EAZEL_VERSION_CANON(version)
dnl 1
AC_DEFUN(EAZEL_VERSION_CANON, [`
dnl Assumes that there are no more than 999 revisions at a level,
dnl no more than three levels of revision.
dnl
dnl Any more than that, and test starts messing up the numeric
dnl comparisons because its integers overflow, and there's no
dnl way to do string comparisons in the shell. Grr.
dnl
dnl Must come up with some way to fix this.
echo "$1" |
tr . '\012' |
sed -e 's/^/000/' -e 's/^.*\(...\)/\1/' |
tr -d '\012' |
sed 's/$/000000000/
s/^\(.........\).*/\1/'
`])
dnl EAZEL_VERSION_INSIST(package, get-version-cmd, operator, want-version-var)
dnl 1 2 3 4
AC_DEFUN(EAZEL_VERSION_INSIST, [
ez_want_version=[$]$4
case "$3" in
">") ez_operator=-gt ;;
">=") ez_operator=-ge ;;
"<") ez_operator=-lt ;;
"<=") ez_operator=-le ;;
"=") ez_operator=-eq ;;
"!=") ez_operator=-ne ;;
*) AC_ERROR(Unknown operator $3 in configure script) ;;
esac
AC_MSG_CHECKING(for $1 $3 [$ez_want_version])
if ez_installed_version="`$2`"
then
AC_MSG_RESULT([$ez_installed_version])
else
AC_ERROR($2 failed)
fi
if test "EAZEL_VERSION_CANON([$ez_installed_version])" "$ez_operator" \
"EAZEL_VERSION_CANON([$ez_want_version])"
then
:
AC_SUBST($4)
else
AC_ERROR($1 version [$ez_want_version] is required.)
fi
])
dnl ===========================================================================
if test -n "$GNOME2_PATH"; then
PATH="$GNOME2_PATH/bin:$PATH"
export PATH
fi
AM_INIT_AUTOMAKE(nautilus, 1.0.1.1)
AM_CONFIG_HEADER(config.h)
AM_MAINTAINER_MODE
AM_DISABLE_STATIC
AM_PROG_LIBTOOL
AM_PROG_XML_I18N_TOOLS
AM_SANITY_CHECK
AC_PROG_CC
AC_PROG_CPP
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
AC_ISC_POSIX
AM_PATH_ESD
dnl ORBit
AM_PATH_ORBIT
dnl ====================================
dnl = Begin profiling support
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/PROFILE/lib/libprofiler.so -lpthread"
fi
AC_SUBST(ENABLE_PROFILER)
AM_CONDITIONAL(ENABLE_PROFILER, test "x$ENABLE_PROFILER" = "x1")
dnl ====================================
dnl = End profiling support
dnl ====================================
dnl ====================================
dnl = Check for different mount systems
dnl ====================================
echo "
Determining mount system properties:
"
AC_CHECK_FUNCS( setmntent endmntent )
AC_CHECK_HEADERS( mntent.h sys/mnttab.h sys/vfstab.h sys/cdio.h )
echo "
"
dnl ====================================
dnl = Method for changing environment
dnl ====================================
AC_CHECK_FUNCS( setenv unsetenv putenv )
dnl ====================================
dnl = Use x86 optimized music routines?
dnl ====================================
_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 = Optionally build the installer
dnl ====================================
ENABLE_INSTALLER=
AC_ARG_ENABLE(installer,
[ --enable-installer Create Nautilus installer],
ENABLE_INSTALLER=1
AC_DEFINE(ENABLE_INSTALLER))
AC_SUBST(ENABLE_INSTALLER)
AM_CONDITIONAL(ENABLE_INSTALLER, test "x$ENABLE_INSTALLER" = "x1")
dnl ====================================
dnl = Begin tests for eazel-services
dnl ====================================
AC_ARG_ENABLE(
[eazel-services],
[ --enable-eazel-services Enable support for Eazel Services (default is no)],
[ EAZEL_SERVICES_ENABLED=$enableval ],
[ EAZEL_SERVICES_ENABLED=no ])
AC_SUBST(EAZEL_SERVICES)
if test x"$EAZEL_SERVICES_ENABLED" = xyes; then
AC_DEFINE(EAZEL_SERVICES)
fi
AM_CONDITIONAL(EAZEL_SERVICES, test "x$EAZEL_SERVICES_ENABLED" = "xyes")
dnl =======================
dnl = End tests for eazel-services
dnl =======================
dnl ====================================
dnl = Begin tests for FreeType2
dnl ====================================
FREETYPE2_CFLAGS=
FREETYPE2_LIBS=
_found_freetype2_lib="no"
_found_freetype2_header="no"
_found_freetype2="no"
AC_ARG_WITH(freetype2-libraries,
[ --with-freetype2-libraries=PATH freetype2 library path],
freetype2_lib_prefix=$withval)
AC_ARG_WITH(freetype2-includes,
[ --with-freetype2-includes=PATH freetype2 include path],
freetype2_include_prefix=$withval)
AC_ARG_WITH(freetype2-prefix,
[ --with-freetype2-prefix=PATH freetype2 installation prefix],
freetype2_prefix=$withval, freetype2_prefix="/usr")
if test -z "$freetype2_include_prefix"; then
freetype2_include_prefix="${freetype2_prefix}/include/freetype2"
fi
if test -z "$freetype2_lib_prefix"; then
freetype2_lib_prefix="${freetype2_prefix}/lib"
fi
_save_cpp="$CPP"
_save_ldflags="$LDFLAGS"
CPP="$_save_cpp -I$freetype2_include_prefix"
LDFLAGS="$_save_ldflags -L$freetype2_lib_prefix"
AC_CHECK_HEADER(freetype/freetype.h, _found_freetype2_header="yes")
AC_CHECK_LIB(freetype, FT_Init_FreeType, [_found_freetype2_lib="yes"])
CPP="$_save_cpp"
LDFLAGS="$_save_ldflags"
if test "x$_found_freetype2_lib" = "xyes" -a \
"x$_found_freetype2_header" = "xyes"
then
_found_freetype2="yes"
fi
if test "x$_found_freetype2" != "xyes"
then
AC_MSG_ERROR([
*** FreeType2 is required. You can obtain a packaged version of FreeType2
*** over here: http://developer.eazel.com/eazel-hacking/updates/freetype2
*** source versions are available from ftp://ftp.freetype.org])
fi
if test -n "$freetype2_prefix"; then
FREETYPE_CONFIG="$freetype2_prefix/bin/freetype-config"
else
FREETYPE_CONFIG="freetype-config"
fi
dnl check for the necessary library version
EAZEL_VERSION_INSIST(freetype library, $FREETYPE_CONFIG --version | tr : ., >=, FREETYPE_LIBRARY_REQUIRED)
FREETYPE2_CFLAGS="-I$freetype2_include_prefix"
FREETYPE2_LIBS="-L$freetype2_lib_prefix -lfreetype"
AC_SUBST(FREETYPE2_CFLAGS)
AC_SUBST(FREETYPE2_LIBS)
dnl =======================
dnl = End tests for FreeType2
dnl =======================
dnl ====================================
dnl = Beging authenticate helper
dnl ====================================
BUILD_AUTHENTICATE_HELPER=
AC_CHECK_LIB(pam, pam_authenticate,
[BUILD_AUTHENTICATE_HELPER=1
AC_DEFINE(HAVE_PAM)
AC_CHECK_LIB(pam_misc, pam_misc_setenv,
[PAM_LIBS="-ldl -lpam -lpam_misc"], [PAM_LIBS="-ldl -lpam"], -ldl -lpam) ], [PAM_LIBS=], -ldl)
AC_SUBST(PAM_LIBS)
AM_CONDITIONAL(BUILD_AUTHENTICATE_HELPER, test "x$BUILD_AUTHENTICATE_HELPER" = "x1")
dnl ====================================
dnl = End authenticate helper
dnl ====================================
dnl ====================================
dnl = mozilla embedded component support
dnl =
dnl = The following voodoo does detection of mozilla libraries needed by
dnl = the nautilus mozilla component.
dnl =
dnl = The nautilus mozilla component is only built if these libraries are found
dnl =
dnl = --disable-mozilla-component can be used to disable building of the
dnl = mozilla component even if the mozilla development libraries are
dnl = detected.
dnl ====================================
mozilla_component_disabled="no"
AC_ARG_ENABLE(mozilla-component,
[ --disable-mozilla-component= Disable the mozilla component],
mozilla_component_disabled="yes")
dnl Dont build the mozilla component for profiled builds cause the c++ compiler
dnl used for mozilla rpms is not binary compatible with the one used for profiling.
if test "x$ENABLE_PROFILER" = "x1"
then
mozilla_component_disabled="yes"
fi
found_mozilla=false
if test "x$mozilla_component_disabled" = "xno"
then
BUILD_MOZILLA_COMPONENT=
MOZILLA_COMPONENT_CFLAGS=
MOZILLA_COMPONENT_LDFLAGS=
MOZILLA_COMPONENT_LIBS=
_mozilla_lib_place=/usr/lib/mozilla
_mozilla_include_place=/usr/include/mozilla
dnl Add a flag to override the default mozilla lib dir
AC_ARG_WITH(mozilla-lib-place,
[ --with-mozilla-lib-place Set mozilla 'lib' place ],
[ _mozilla_lib_place="$withval" ])
dnl Add a flag to override the default mozilla include dir
AC_ARG_WITH(mozilla-include-place,
[ --with-mozilla-include-place Set mozilla 'include' place ],
[ _mozilla_include_place="$withval" ])
_mozilla_nspr_libs=
_mozilla_plc_libs=
_mozilla_plds_libs=
_mozilla_xpcom_libs=
_mozilla_gtk_moz_embed_libs=
_mozilla_gtk_super_win_libs=
dnl Save flags and compiler
_save_cflags="$CFLAGS"
_save_ldflags="$LDFLAGS"
_save_cc="$CC"
dnl Hack flags to find the mozilla stuff
CFLAGS="$_save_cflags -I$_mozilla_include_place"
LDFLAGS="$_save_ldflags -L$_mozilla_lib_place"
dnl Check for nspr and friends
AC_CHECK_LIB(nspr4, PR_Init, [_mozilla_nspr_libs="-lnspr4"])
LDFLAGS="$LDFLAGS $_mozilla_nspr_libs"
AC_CHECK_LIB(plc4, PL_strcmp, [_mozilla_plc_libs="-lplc4"])
AC_CHECK_LIB(plds4, PL_NewHashTable, [_mozilla_plds_libs="-lplds4"])
_mozilla_all_nspr_flags="$_mozilla_nspr_libs $_mozilla_plc_libs $_mozilla_plds_libs"
dnl Now check for the evil c++ ones "by hand"
CC="g++"
LDFLAGS="$_save_ldflags -L$_mozilla_lib_place $_mozilla_all_nspr_flags -lxpcom"
AC_MSG_CHECKING(for xpcom)
AC_CACHE_VAL(have_xpcom,
[AC_TRY_COMPILE([extern "C" int NS_RegistryGetFactory(void**);]
[],
[NS_RegistryGetFactory(0); return 0;],
[have_xpcom=true],
[have_xpcom=false])])
if test "$have_xpcom" = "true" ; then
_mozilla_xpcom_libs="-lxpcom"
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
dnl The next two are pure from evil
CC="$_save_cc"
dnl gtk superwin library
LDFLAGS="$_save_ldflags -L$_mozilla_lib_place $_mozilla_all_nspr_flags -lgtksuperwin"
AC_CHECK_LIB(gtksuperwin, gdk_superwin_get_type, [_mozilla_gtk_super_win_libs="-lgtksuperwin"])
dnl gtk moz embed library
LDFLAGS="$_save_ldflags -L$_mozilla_lib_place $_mozilla_all_nspr_flags -lgtkembedmoz $_mozilla_xpcom_libs"
AC_CHECK_LIB(gtkembedmoz, gtk_moz_embed_get_type, [_mozilla_gtk_moz_embed_libs="-lgtkembedmoz"])
dnl Restore the flags and compiler
CFLAGS="$_save_cflags"
LDFLAGS="$_save_ldflags"
CC="$_save_cc"
dnl Now make sure all the libraries are good
AC_MSG_CHECKING(for Mozilla)
if test -n "$_mozilla_nspr_libs" -a \
-n "$_mozilla_plc_libs" -a \
-n "$_mozilla_plds_libs" -a \
-n "$_mozilla_xpcom_libs" -a \
-n "$_mozilla_gtk_super_win_libs" -a \
-n "$_mozilla_gtk_moz_embed_libs"
then
AC_MSG_RESULT(yes)
AC_PROG_CXX
found_mozilla=true
MOZILLA_COMPONENT_RPATH_FLAGS=-Wl,-rpath=$_mozilla_lib_place
MOZILLA_COMPONENT_CFLAGS="-I$_mozilla_include_place -fno-rtti -fno-exceptions"
MOZILLA_COMPONENT_LDFLAGS=-L$_mozilla_lib_place
MOZILLA_COMPONENT_LIBS="$_mozilla_gtk_moz_embed_libs \
$_mozilla_gtk_super_win_libs \
$_mozilla_xpcom_libs \
$_mozilla_nspr_libs \
$_mozilla_plc_libs \
$_mozilla_plds_libs"
AC_SUBST(MOZILLA_COMPONENT_RPATH_FLAGS)
AC_SUBST(MOZILLA_COMPONENT_CFLAGS)
AC_SUBST(MOZILLA_COMPONENT_LDFLAGS)
AC_SUBST(MOZILLA_COMPONENT_LIBS)
else
AC_MSG_RESULT(no)
found_mozilla=false
fi
fi
AM_CONDITIONAL(BUILD_MOZILLA_COMPONENT, test "x$found_mozilla" = "xtrue")
dnl
dnl EVIL1:
dnl
dnl The mozilla milestone version checks are very un-scientific.
dnl They are based on thing that I know changed between milestones,
dnl but are likely to not be right in the future. Unfortunately, there
dnl doesnt seem to be anything in mozilla (such as #define MOZILLA_VERSION)
dnl thing that we can check. -re
dnl
dnl EVIL2:
dnl
dnl The DEBUG check is a most evil hack. The problem im trying to solve
dnl is that we dont know whether the mozilla binaries we are using are built
dnl in debug mode or not (DEBUG). We need to know this so that we set
dnl appropiate compile flags in the mozilla component. Otherwise we get
dnl undefined symbols. Specifically, the undefined symbols are some
dnl destrcutors (nsCOMPtr_base::~nsCOMPtr_base) which are implemented only
dnl if the debug flag DEBUG is set a certain way.
dnl
if test "x$found_mozilla" = "xtrue"
then
dnl EVIL1:
grep -w gtk_moz_embed_set_profile_path $_mozilla_include_place/gtkmozembed.h > /dev/null 2>&1
if test $? -eq 0
then
MOZILLA_MILESTONE=VERSION_0_8
MOZILLA_PROFILES_CFLAGS="-DMOZILLA_HAVE_PROFILES_SUPPORT"
AC_SUBST(MOZILLA_PROFILES_CFLAGS)
else
grep -w GetName $_mozilla_include_place/nsIRequest.h > /dev/null 2>&1
if test $? -eq 0
then
MOZILLA_MILESTONE=VERSION_0_7
else
MOZILLA_MILESTONE=MILESTONE_17
fi
fi
AC_SUBST(MOZILLA_MILESTONE)
dnl EVIL2:
_xpcom_lib=$_mozilla_lib_place/libxpcom.so
_symbol="nsCOMPtr_base::~nsCOMPtr_base"
_num_symbols=`nm $_xpcom_lib 2> /dev/null | wc -l`
if test $_num_symbols -ne 0
then
nm --demangle $_xpcom_lib | grep $_symbol > /dev/null 2>&1
if test $? -eq 1
then
MOZILLA_COMPONENT_DEBUG_FLAGS="-DDEBUG"
fi
fi
AC_SUBST(MOZILLA_COMPONENT_DEBUG_FLAGS)
if test "$MOZILLA_MILESTONE" != "VERSION_0_8"
then
AC_MSG_ERROR([
*** Mozilla 0.8 or greater is required to build the Nautilus Mozilla component.
*** Mozilla packages for RedHat 6.x and 7.x are available here:
*** http://developer.eazel.com/eazel-hacking/updates/redhat62/mozilla/
*** http://developer.eazel.com/eazel-hacking/updates/redhat70/mozilla/.])
fi
fi
dnl ====================================
dnl = End mozilla hacks
dnl ====================================
dnl ====================================
dnl = Bzip2
dnl ====================================
BZ_LIBS=
AC_CHECK_LIB(bz2, bzread, [AC_DEFINE(HAVE_LIBBZ2)
BZ_LIBS="-lbz2"])
dnl <= Check for bzip2 > 1.0.0
AC_CHECK_LIB(bz2, BZ2_bzread, [AC_DEFINE(HAVE_LIBBZ2)
BZ_LIBS="-lbz2"
dnl <= define the wrapper-functions to get the Bzip2 stuff working .. =>
AC_DEFINE(bzread,BZ2_bzread)
AC_DEFINE(bzopen,BZ2_bzopen)
AC_DEFINE(bzdopen,BZ2_bzdopen)
AC_DEFINE(bzwrite,BZ2_bzwrite)
AC_DEFINE(bzerror,BZ2_bzerror)
AC_DEFINE(bzclose,BZ2_bzclose)
AC_DEFINE(bzflush,BZ2_bzflush)
AC_DEFINE(bzCompress,BZ2_bzCompress)
AC_DEFINE(bzCompressInit,BZ2_bzCompressInit)
AC_DEFINE(bzDecompress,BZ2_bzDecompress)
AC_DEFINE(bzDecompressInit,BZ2_bzDecompressInit)
])
dnl =>
AC_SUBST(BZ_LIBS)
dnl ====================================
dnl = cdda module support
dnl ====================================
AM_CONDITIONAL(HAVE_CDDA, false);
AC_CHECK_HEADERS(cdda_interface.h cdda_paranoia.h, [
CDDA_LIBS="$CDDA_LIBS -lcdda_paranoia, -lcdda_interface";
AM_CONDITIONAL(HAVE_CDDA, true);
])
dnl ====================================
dnl = rpmview component support
dnl ====================================
if test "x$EAZEL_SERVICES_ENABLED" = "xyes" ;
then
rpm_libs=$BZ_LIBS
rpm_xlibs=
have_rpm=no
AC_CHECK_LIB(popt, poptParseArgvString, [rpm_libs="$rpm_libs -lpopt"])
AC_CHECK_FUNC(dbopen, [],
AC_CHECK_LIB(db-3.1, __db185_open, [rpm_libs="$rpm_libs -ldb-3.1"],
AC_CHECK_LIB(db-3, __db185_open, [rpm_libs="$rpm_libs -ldb-3"],
AC_CHECK_LIB(db2, dbopen, [rpm_libs="$rpm_libs -ldb2"],
AC_CHECK_LIB(db1, dbopen, [rpm_libs="$rpm_libs -ldb1"],
AC_CHECK_LIB(db, dbopen, [rpm_libs="$rpm_libs -ldb"],
AC_MSG_ERROR([sorry rpm requires a db-1.85 API]))))))
)
AC_CHECK_LIB(rpmio, Fdopen, [rpm_xlibs="-lrpmio"],[rpm_xlibs=""],$rpm_libs)
AC_CHECK_LIB(rpm, rpmRunTransactions,[have_rpm=yes],
[have_rpm=no], [$rpm_libs $rpm_xlibs])
if test "x$have_rpm" = "xyes" ; then
dnl FIXME
dnl Ideally I should check for rpm and where it is
AC_MSG_CHECKING([rpm version])
RPM_VERSION=`rpm --version | awk '{ print $3; }'`
AM_CONDITIONAL(COMPILE_RPM_30, false)
AM_CONDITIONAL(COMPILE_RPM_40, false)
case $RPM_VERSION in
3.0.5|3.0.6)
AC_DEFINE(HAVE_RPM_30)
_found_valid_rpm="yes"
AM_CONDITIONAL(COMPILE_RPM_30, true)
dnl if automake conditionals hadn't been a joke, I
dnl wouldn't need this shite.
PACKAGESYSTEM="libeazelpackagesystem-rpm3.la"
AC_SUBST(PACKAGESYSTEM)
PACKAGE_SYSTEM_OBJECT="eazel-package-system-rpm3.o"
AC_SUBST(PACKAGE_SYSTEM_OBJECT)
PACKAGE_SYSTEM_SOURCE="eazel-package-system-rpm3.c"
AC_SUBST(PACKAGE_SYSTEM_SOURCE)
;;
4.*)
AC_DEFINE(HAVE_RPM_40)
_found_valid_rpm="yes"
AM_CONDITIONAL(COMPILE_RPM_40, true)
PACKAGESYSTEM="libeazelpackagesystem-rpm4.la"
AC_SUBST(PACKAGESYSTEM)
PACKAGE_SYSTEM_OBJECT="eazel-package-system-rpm4.o eazel-package-system-rpm3.o"
AC_SUBST(PACKAGE_SYSTEM_OBJECT)
PACKAGE_SYSTEM_SOURCE="eazel-package-system-rpm4.c eazel-package-system-rpm3.c"
AC_SUBST(PACKAGE_SYSTEM_SOURCE)
;;
esac
if test "x$_found_valid_rpm" = "xyes"; then
AC_MSG_RESULT([found $RPM_VERSION, yes])
AC_DEFINE(HAVE_RPM)
RPM_LIBS="-lrpm -lz $rpm_xlibs $rpm_libs"
AC_SUBST(RPM_VERSION)
build_rpmview=yes
rpmversion="$RPM_VERSION"
else
AC_MSG_RESULT([no])
AC_MSG_WARN([RPM 3.0.5 or higher required, $RPM_VERSION found])
build_rpmview=no
fi
fi
AC_SUBST(RPM_LIBS)
else
build_rpmview=no
fi
AM_CONDITIONAL(BUILD_RPM_COMPONENTS, test "x$build_rpmview" = "xyes")
dnl ====================================
dnl = End rpmview checks
dnl ====================================
dnl Checks for libraries.
AM_PATH_GLIB($GLIB_REQUIRED,,
AC_MSG_ERROR([
*** GLIB $GLIB_REQUIRED or better is required. The latest version of GLIB
*** is always available from ftp://ftp.gtk.org/.]))
AC_SUBST(GLIB_REQUIRED)
AM_PATH_GTK($GTK_REQUIRED,,
AC_MSG_ERROR([
*** Gtk+ $GTK_REQUIRED or better is required. The latest version of GTK
*** is always available from ftp://ftp.gtk.org/.]))
AC_SUBST(GTK_REQUIRED)
AM_PATH_GNOME($GNOME_REQUIRED,,AC_MSG_ERROR([*** GNOME $GNOME_REQUIRED or better is required.]), gnomecanvaspixbuf bonobo bonobox bonobox_print vfs idl librsvg eel)
AC_SUBST(GNOME_REQUIRED)
AC_PATH_PROG(GNOME_CONFIG,gnome-config,no)
if test x$GNOME_CONFIG = xno; then
AC_MSG_ERROR(Couldn't find gnome-config. Please install the GNOME package)
fi
EAZEL_VERSION_INSIST(gnome-libs, $GNOME_CONFIG --version | awk '{print $2}', >=, GNOME_LIBS_REQUIRED)
dnl check for gnome_canvas_set_dither existence
_libs="$LIBS"
LIBS=$GNOMEUI_LIBS
AC_CHECK_FUNCS(gnome_canvas_set_dither)
LIBS="$_libs"
dnl control center
EAZEL_VERSION_INSIST(control-center, gnomecc --version | awk '{print $3}', >=, CONTROL_CENTER_REQUIRED)
dnl Bonobo
EAZEL_VERSION_INSIST(bonobo, $GNOME_CONFIG --modversion bonobo | awk -F- '{print $2}', >=, BONOBO_REQUIRED)
AC_SUBST(GNOMECANVASPIXBUF_LIBS)
AC_SUBST(GNOMECANVASPIXBUF_INCLUDEDIR)
AC_SUBST(BONOBO_CFLAGS)
AC_SUBST(BONOBO_LIBS)
AC_SUBST(BONOBOX_CFLAGS)
AC_SUBST(BONOBOX_LIBS)
AC_SUBST(BONOBO_PRINT_CFLAGS)
AC_SUBST(BONOBO_PRINT_LIBS)
AC_SUBST(VFS_CFLAGS)
AC_SUBST(VFS_LIBS)
AC_SUBST(LIBRSVG_LIBS)
AC_SUBST(LIBRSVG_INCLUDEDIR)
AC_SUBST(EEL_LIBS)
AC_SUBST(EEL_INCLUDEDIR)
dnl Bug 7315: Rediscover CFLAGS for GTK, because gnome-config won't know
dnl all the necessary flags if GTK has been upgraded more recently than
dnl it has.
AC_PATH_PROG(GTK_CONFIG,gtk-config,false)
AC_MSG_CHECKING(for gtk-config cflags)
GTK_CFLAGS=`$GTK_CONFIG --cflags`
AC_MSG_RESULT($GTK_CFLAGS)
GNOMEUI_CFLAGS="$GNOMEUI_CFLAGS $GTK_CFLAGS"
AC_SUBST(GNOMEUI_CFLAGS)
IDL_CFLAGS="${IDL_CFLAGS} -I\$(top_srcdir) -I\$(top_builddir)"
echo "IDL_CFLAGS: $IDL_CFLAGS"
AC_SUBST(IDL_CFLAGS)
AM_PATH_OAF($OAF_REQUIRED)
AC_SUBST(OAF_REQUIRED)
AM_PATH_GCONF($GCONF_REQUIRED,,,gconf-gtk)
AC_SUBST(GCONF_REQUIRED)
AC_PATH_PROG(XML_CONFIG,xml-config,no)
if test x$XML_CONFIG = xno; then
AC_MSG_ERROR(Couldn't find xml-config please install the gnome-xml package)
fi
XML_VERSION="`$XML_CONFIG --version`"
case "$XML_VERSION" in
1.*)
:
;;
*)
AC_ERROR(Nautilus needs gnome-xml version 1.x not $XML_VERSION)
;;
esac
XML_LIBS=`$XML_CONFIG --libs`
XML_CFLAGS=`$XML_CONFIG --cflags`
AC_SUBST(XML_LIBS)
AC_SUBST(XML_CFLAGS)
dnl ====================================
dnl = Begin tests for scrollkeeper
dnl ====================================
AC_PATH_PROG(SCROLLKEEPER_CONFIG, scrollkeeper-config,no)
if test x$SCROLLKEEPER_CONFIG = xno; then
AC_MSG_ERROR(Couldn't find scrollkeeper-config, please install the scrollkeeper packaga)
fi
dnl =======================
dnl = End tests for scrollkeeper
dnl =======================
dnl ====================================
dnl = begin gnome-http checks
dnl ====================================
AC_MSG_CHECKING(for gnome-http)
if gnome-config --libs ghttp > /dev/null 2>&1; then
ghttp_ok=true
else
ghttp_ok=false
fi
if $ghttp_ok; then
GHTTP_LIBS=`gnome-config --libs ghttp`
GHTTP_CFLAGS=`gnome-config --cflags ghttp`
AC_SUBST(GHTTP_LIBS)
AC_SUBST(GHTTP_CFLAGS)
AC_MSG_RESULT(found)
else
AC_MSG_ERROR(gnome-http is required to compile Nautilus)
fi
dnl ====================================
dnl = End ghttp checks
dnl ====================================
dnl ====================================
dnl = begin applet checks
dnl ====================================
AC_MSG_CHECKING(for applets)
APPLETS_CFLAGS=
APPLETS_LIBS=
HAVE_APPLETS="no"
gnome-config | grep applets > /dev/null 2>&1
if test $? -eq 0
then
HAVE_APPLETS="yes"
APPLETS_CFLAGS=`gnome-config --cflags applets`
APPLETS_LIBS=`gnome-config --libs applets`
AC_MSG_RESULT(yes)
else
HAVE_APPLETS="no"
AC_MSG_RESULT(no)
fi
AM_CONDITIONAL(HAVE_APPLETS, test "x$HAVE_APPLETS" = "xyes")
AC_SUBST(HAVE_APPLETS)
AC_SUBST(APPLETS_CFLAGS)
AC_SUBST(APPLETS_LIBS)
dnl ====================================
dnl = begin applet checks
dnl ====================================
dnl ====================================
dnl = begin eazel-logos check
dnl ====================================
if test -d eazel-logos
then
HAVE_EAZEL_LOGOS=yes
EAZEL_LOGOS_PNG='%{prefix}/share/pixmaps/nautilus/eazel-logos/*.png'
EAZEL_LOGOS_XML='%{prefix}/share/pixmaps/nautilus/eazel-logos/*.xml'
EAZEL_LOGOS_LICENSE='%{prefix}/share/pixmaps/nautilus/eazel-logos/LICENSE'
EAZEL_LOGOS_THROB='%{prefix}/share/pixmaps/nautilus/eazel-logos/throbber/*.png'
fi
AM_CONDITIONAL(HAVE_EAZEL_LOGOS, test "x$HAVE_EAZEL_LOGOS" = "xyes")
AC_SUBST(EAZEL_LOGOS_PNG)
AC_SUBST(EAZEL_LOGOS_XML)
AC_SUBST(EAZEL_LOGOS_LICENSE)
AC_SUBST(EAZEL_LOGOS_THROB)
dnl ====================================
dnl = end eazel-logos check
dnl ====================================
dnl ====================================
dnl = begin gdk-pixbuf checks
dnl ====================================
AM_PATH_GDK_PIXBUF($GDK_PIXBUF_REQUIRED,,
AC_MSG_ERROR([*** gdk_pixbuf $GDK_PIXBUF_REQUIRED or better is required.]))
AC_SUBST(GDK_PIXBUF_REQUIRED)
dnl ====================================
dnl = end gdk-pixbuf checks
dnl ====================================
AC_CHECK_LIB(z, gzopen, [Z_LIBS=-lz
AC_SUBST(Z_LIBS)], AC_MSG_ERROR([*** zlib is required]))
dnl ====================================
dnl = Begin tests for medusa
dnl ====================================
AC_MSG_CHECKING(for Medusa)
case "`medusa-config --libs 2>/dev/null | cut -d ' ' -f1`" in
'')
MEDUSA_CFLAGS=""
MEDUSA_LIBS=""
AC_MSG_RESULT(no)
AC_MSG_WARN(Could not find medusa library. Please get it from GNOME's cvs.)
;;
*)
MEDUSA_CFLAGS=`medusa-config --cflags`
MEDUSA_LIBS=`medusa-config --libs`
AC_DEFINE(HAVE_MEDUSA)
AC_MSG_RESULT(yes)
;;
esac
AC_SUBST(MEDUSA_CFLAGS)
AC_SUBST(MEDUSA_LIBS)
dnl =======================
dnl = End tests for medusa
dnl =======================
dnl ====================================
dnl = Begin tests for ammonite (--enable-eazel-services only)
dnl ====================================
if test "x$EAZEL_SERVICES_ENABLED" = "xyes" ;
then
EAZEL_VERSION_INSIST(ammonite, $GNOME_CONFIG --modversion ammonite | awk -F- '{print $2}', >=, AMMONITE_REQUIRED)
AMMONITE_CFLAGS=`$GNOME_CONFIG --cflags ammonite`
AMMONITE_LIBS=`$GNOME_CONFIG --libs ammonite`
AC_SUBST(AMMONITE_CFLAGS)
AC_SUBST(AMMONITE_LIBS)
fi
dnl =======================
dnl = End tests for ammonite
dnl =======================
dnl ====================================
dnl = Begin tests for libpng
dnl ====================================
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 = End tests for libpng
dnl =======================
dnl =======================
dnl = Set up for library directories
dnl =======================
NAUTILUS_LIBS="-lnautilus `gnome-config --libs bonobox gnomeui gtk vfs`"
NAUTILUS_LIBDIR='-L${libdir}'
NAUTILUS_INCLUDEDIR='-I${includedir} '" `gnome-config --cflags bonobox gnomeui gtk vfs`"
AC_SUBST(NAUTILUS_LIBDIR)
AC_SUBST(NAUTILUS_INCLUDEDIR)
AC_SUBST(NAUTILUS_LIBS)
dnl =======================
dnl = End set up for library directories
dnl =======================
dnl Checks for i18n
ALL_LINGUAS="az ca da de el en_GB es fi fr ga gl hu it ja ko lt nl nn no pl pt_BR ru sk sl sv ta tr uk zh_TW.Big5"
AM_GNOME_GETTEXT
# AM_GNOME_GETTEXT above substs $DATADIRNAME
# this is the directory where the *.{mo,gmo} files are installed
gnomelocaledir='${prefix}/${DATADIRNAME}/locale'
AC_SUBST(gnomelocaledir)
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_C_BIGENDIAN
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="$CFLAGS $VFS_CFLAGS $option"
AC_MSG_CHECKING([whether gcc understands $option])
AC_TRY_COMPILE([], [],
has_option=yes,
has_option=no,)
CFLAGS="$SAVE_CFLAGS"
if test $has_option = yes; then
VFS_CFLAGS="$VFS_CFLAGS $option"
fi
AC_MSG_RESULT($has_option)
unset has_option
unset SAVE_CFLAGS
done
unset option
else
AC_MSG_RESULT(no)
fi
dnl
dnl Define the build message (used in the Nautilus about box)
dnl CVSVERSION overrides
dnl
NAUTILUS_BUILD_MESSAGE=""
AC_ARG_WITH(build-message, [ --with-build-message=MESSAGE Build (about box) message], NAUTILUS_BUILD_MESSAGE=$withval)
if test -n "$is_cvs_version"
then
NAUTILUS_BUILD_MESSAGE="Development Build"
fi
AC_DEFINE_UNQUOTED(NAUTILUS_BUILD_MESSAGE, "$NAUTILUS_BUILD_MESSAGE")
NAUTILUS_SOURCE_DIRECTORY=`(cd $srcdir && pwd)`
AC_DEFINE_UNQUOTED(NAUTILUS_SOURCE_DIRECTORY, "$NAUTILUS_SOURCE_DIRECTORY")
dnl
dnl Define the build timestamp if given in the environment.
dnl
if test -n "$EAZEL_BUILD_TIMESTAMP"
then
AC_DEFINE_UNQUOTED(EAZEL_BUILD_TIMESTAMP,"$EAZEL_BUILD_TIMESTAMP")
fi
AC_OUTPUT([
nautilus.spec
nautilus-installer.spec
Makefile
helper-utilities/Makefile
helper-utilities/authenticate/Makefile
helper-utilities/error-dialog/Makefile
helper-utilities/xml-migrate/Makefile
helper-scripts/Makefile
icons/Makefile
icons/ardmore/Makefile
icons/arlo/Makefile
icons/arlo/sidebar_tab_pieces/Makefile
icons/arlo/backgrounds/Makefile
icons/arlo/throbber/Makefile
icons/crux_eggplant/Makefile
icons/crux_eggplant/backgrounds/Makefile
icons/crux_eggplant/sidebar_tab_pieces/Makefile
icons/crux_eggplant/throbber/Makefile
icons/gnome/Makefile
icons/gnome/throbber/Makefile
icons/sidebar_tab_pieces/Makefile
icons/throbber/Makefile
icons/villanova/Makefile
data/Makefile
data/patterns/Makefile
data/emblems/Makefile
data/linksets/Makefile
cut-n-paste-code/Makefile
cut-n-paste-code/widgets/Makefile
cut-n-paste-code/widgets/e-paned/Makefile
cut-n-paste-code/widgets/gimphwrapbox/Makefile
libnautilus/Makefile
libnautilus-adapter/Makefile
libnautilus-extensions/Makefile
nautilus-installer/Makefile
nautilus-installer/package-list.xml
nautilus-installer/libtrilobite/Makefile
nautilus-installer/install-lib/Makefile
nautilus-installer/src/Makefile
src/Makefile
src/file-manager/Makefile
components/Makefile
components/adapter/Makefile
components/hardware/Makefile
components/hardware/icons/Makefile
components/history/Makefile
components/help/Makefile
components/help/converters/Makefile
components/help/converters/gnome-db2html2/Makefile
components/help/converters/gnome-info2html2/Makefile
components/help/converters/gnome-man2html2/Makefile
components/image-viewer/Makefile
components/music/Makefile
components/notes/Makefile
components/rpmview/Makefile
components/sample/Makefile
components/mozilla/Makefile
components/services/Makefile
components/services/trilobite/Makefile
components/services/trilobite/idl/Makefile
components/services/trilobite/libtrilobite/Makefile
components/services/trilobite/libtrilobite/makefile.staticlib
components/services/trilobite/utils/Makefile
components/services/trilobite/sample/Makefile
components/services/trilobite/sample/idl/Makefile
components/services/trilobite/sample/lib/Makefile
components/services/trilobite/sample/service/Makefile
components/services/trilobite/sample/command-line/Makefile
components/services/trilobite/sample/nautilus-view/Makefile
components/services/trilobite/sample/nautilus-view/icons/Makefile
components/services/trilobite/helper/Makefile
components/services/nautilus-dependent-shared/Makefile
components/services/nautilus-dependent-shared/icons/Makefile
components/services/install/Makefile
components/services/install/lib/Makefile
components/services/install/lib/makefile.staticlib
components/services/install/idl/Makefile
components/services/install/server/Makefile
components/services/install/command-line/Makefile
components/services/inventory/Makefile
components/services/install-view/Makefile
components/services/clone/Makefile
components/services/inventory-view/Makefile
components/services/login/Makefile
components/services/login/nautilus-view/Makefile
components/services/summary/Makefile
components/services/summary/icons/Makefile
components/text/Makefile
components/text/services/Makefile
components/throbber/Makefile
components/loser/Makefile
components/loser/content/Makefile
components/loser/sidebar/Makefile
components/tree/Makefile
po/Makefile.in
intl/Makefile
test/Makefile
user-guide/Makefile
user-guide/gnufdl/Makefile
user-guide/gnugpl/Makefile
help/Makefile
help/nautilus-user-manual/Makefile
help/nautilus-user-manual/C/Makefile
help/nautilus-user-manual/es/Makefile
help/nautilus-user-manual/ko/Makefile
help/nautilus-quick-reference/Makefile
help/nautilus-quick-reference/C/Makefile
help/nautilus-quick-reference/no/Makefile
help/nautilus-quick-reference/es/Makefile
help/nautilus-quick-reference/sv/Makefile
help/nautilus-quick-reference/ko/Makefile
help/nautilus-release-notes/Makefile
help/nautilus-release-notes/C/Makefile
applets/Makefile
applets/launcher/Makefile
applets/preferences-applet/Makefile
omf-install/Makefile
])
dnl <= Configuration summary =>
echo "Nautilus configuration summary:"
echo ""
dnl <= CFLAGS and LDFLAGS =>
echo "CFLAGS : $CFLAGS" | tr -s [:blank:] " "
echo "LDFLAGS : $LDFLAGS"
echo ""
dnl <= Rpm-view integrated? =>
case x$build_rpmview in
xyes)
echo "RPM view component : YES ($rpmversion)"
;;
*)
echo "RPM view component : NO"
;;
esac
dnl <= Mozilla component integrated? =>
case $found_mozilla in
t*)
echo "Mozilla component : YES"
echo " mozilla libraries : $_mozilla_lib_place"
echo " mozilla includes : $_mozilla_include_place"
echo " MOZILLA_MILESTONE : $MOZILLA_MILESTONE"
echo " MOZILLA_PROFILES_CFLAGS : $MOZILLA_PROFILES_CFLAGS"
echo " MOZILLA_COMPONENT_RPATH_FLAGS : $MOZILLA_COMPONENT_RPATH_FLAGS"
echo " MOZILLA_COMPONENT_DEBUG_FLAGS : $MOZILLA_COMPONENT_DEBUG_FLAGS"
;;
*)
echo "Mozilla component : NO"
;;
esac
dnl <= Do we want Eazel Services =>
case "X$EAZEL_SERVICES_ENABLED" in
Xyes)
echo "Eazel Services : YES"
;;
*)
echo "Eazel Services : NO"
;;
esac
dnl <= Profile support? =>
case "X$ENABLE_PROFILER" in
X1)
echo "Enable profiler : YES"
;;
*)
echo "Enable profiler : NO"
;;
esac
dnl <= FreeType2 =>
echo "FREETYPE2_CFLAGS : $FREETYPE2_CFLAGS"
echo "FREETYPE2_LIBS : $FREETYPE2_LIBS"
dnl <= Snapshot things =>
echo "EAZEL_BUILD_TIMESTAMP : $EAZEL_BUILD_TIMESTAMP"
echo "NAUTILUS_BUILD_MESSAGE : $NAUTILUS_BUILD_MESSAGE"
echo "NAUTILUS_SOURCE_DIRECTORY : $NAUTILUS_SOURCE_DIRECTORY"
echo "HAVE_APPLETS : $HAVE_APPLETS"
dnl <= End of configuration summary =>