[nautilus-actions/file-manager-actions] Have a review of m4 macros
- From: Pierre Wieser <pwieser src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [nautilus-actions/file-manager-actions] Have a review of m4 macros
- Date: Wed, 20 May 2015 17:23:55 +0000 (UTC)
commit d5a6eaa93275e6ecb0bd1cdece89de5beae7af7b
Author: Pierre Wieser <pwieser trychlos org>
Date: Wed Apr 29 18:57:06 2015 +0200
Have a review of m4 macros
ChangeLog | 19 +++++++
INSTALL | 8 ++--
NEWS | 23 +++++++--
configure.ac | 111 +++++++++++++++++++--------------------
m4/na-check-for-gconf.m4 | 77 +++++++++++----------------
m4/na-check-for-gdbus.m4 | 69 -------------------------
m4/na-check-module.m4 | 42 +++++++--------
m4/na-file-manager.m4 | 90 ++++++++++++++++++++++++++++++++
maintainer/run-autogen.sh | 3 +-
src/plugin-tracker/Makefile.am | 11 ----
src/utils/Makefile.am | 11 ----
11 files changed, 237 insertions(+), 227 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index eae85ef..e3bd56c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,25 @@
+2015-02-25 Pierre Wieser <pwieser trychlos org>
+
+ * maintainer/run-autogen.sh: defaults to enable nautilus.
+
+ * m4/na-check-module.m4: remove Gtk2 vs. Gtk3 checks.
+
+ * m4/na-check-for-gconf.m4: GConf defaults to be disabled.
+
+ * m4/na-check-for-gdbus.m4,
+ * m4/na-check-for-gtk.m4: removed files.
+
+ * m4/na-file-manager.m4: new file.
+
+ * src/plugin-tracker/Makefile.am,
+ * src/utils/Makefile.am: updated accordingly.
+
2015-02-24 Pierre Wieser <pwieser trychlos org>
Start with File-Manager Actions.
+
+ * configure.ac:
+ - bump next release version.
* ChangeLog-2014: copied from ChangeLog, which is reset.
diff --git a/INSTALL b/INSTALL
index a1e89e1..007e939 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,7 +1,7 @@
Installation Instructions
*************************
-Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
+Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
Inc.
Copying and distribution of this file, with or without modification,
@@ -309,9 +309,10 @@ causes the specified `gcc' to be used as the C compiler (unless it is
overridden in the site shell script).
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
-an Autoconf bug. Until the bug is fixed you can use this workaround:
+an Autoconf limitation. Until the limitation is lifted, you can use
+this workaround:
- CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
+ CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
`configure' Invocation
======================
@@ -367,4 +368,3 @@ operates.
`configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details.
-
diff --git a/NEWS b/NEWS
index 741067c..2b05f27 100644
--- a/NEWS
+++ b/NEWS
@@ -3,10 +3,25 @@ Version 3.4
Release date
- The work on this version started on february 2015. At this date,
- we target to support:
- - Debian 7.0 Wheezy, published on 2013-05-04
- - Unbuntu 12.04 LTS The Precise Pangolin, published on 2012-04-26.
+ Libraries supported versions:
+
+ The work on this version started on february 2015. At this date,
+ we target to support:
+ - Debian 7.0 Wheezy, published on 2013-05-04
+ - Unbuntu 12.04 LTS The Precise Pangolin, published on 2012-04-16.
+
+ What's new here:
+
+ GConf is more and more deprecated.
+ GConf support, which provides the GConf I/O Provider, is no more
+ automatically built, but defaults to be disabled. It must be
+ explicitely enabled from configure in order the GConf I/O Provider
+ to be built.
+
+ As we target now Gtk+ 3.4, support for Gtk+2 is removed.
+
+ As we target now GLib 2.32, support for legacy compatibility
+ layers is removed: dbus-glib-1, libICE, libSM.
Version 3.2.4
=============
diff --git a/configure.ac b/configure.ac
index df7e422..b3291e7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -60,45 +60,31 @@ NA_MAINTAINER_CHECK_MODE
# libtool
AM_PROG_LIBTOOL
-# localization
-# note that this same version is also required by autogen.sh
-IT_PROG_INTLTOOL([0.35.5])
-GETTEXT_PACKAGE=${PACKAGE}
-AC_SUBST([GETTEXT_PACKAGE])
-AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["${GETTEXT_PACKAGE}"],[gettext package])
-AM_GLIB_GNU_GETTEXT
-
-# a counter of fatal warnings emitted
-let na_fatal_count=0
-
# we are using pkgconfig for all development libraries we need
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
if test "${PKG_CONFIG}" = "no"; then
AC_MSG_ERROR([You need to install pkg-config])
fi
-# Have and want GConf support ?
-NA_CHECK_FOR_GCONF
+# Oldest supported distribution as of Feb. 2015: Ubuntu 12.04 LTS
+glib_required=2.32.1
+gtk_required=3.4.1
+intltool_required=0.50.2
-# Oldest supported distribution as of Apr. 2013: Ubuntu 10 LTS (Gnome 2.30)
-glib_required=2.24.0
-gtk_required=2.20.0
-NA_CHECK_FOR_GTK
-NA_CHECK_MODULE([GLIB], [glib-2.0 >= ${glib_required}])
-NA_CHECK_MODULE([GMODULE], [gmodule-2.0 >= ${glib_required}])
+nautilus_required=3.4.1
-# GDBus comes in GIO with 2.26
-# so uses GDBus if present, or fallback into dbus-glib-1
-NA_CHECK_FOR_GDBUS
+# localization
+# note that this same intltool version is also required by autogen.sh
+# and thus set in maintainer/run-autogen.sh script
+IT_PROG_INTLTOOL([${intltool_required}])
+GETTEXT_PACKAGE=${PACKAGE}
+AC_SUBST([GETTEXT_PACKAGE])
+AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["${GETTEXT_PACKAGE}"],[gettext package])
+AM_GLIB_GNU_GETTEXT
-# other required libraries
-dnl aclocal complains if the comma is not just after the square bracket
-NA_CHECK_MODULE([GIO_UNIX],[gio-unix-2.0])
-NA_CHECK_MODULE([GTOP], [libgtop-2.0 >= 2.23.1])
-NA_CHECK_MODULE([LIBXML], [libxml-2.0 >= 2.6])
-NA_CHECK_MODULE([SM], [sm >= 1.0])
-NA_CHECK_MODULE([ICE], [ice])
-NA_CHECK_MODULE([UUID], [uuid])
+# a counter of fatal warnings emitted
+let na_fatal_count=0
+na_fatal_list=""
# GLib marshaling
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal, no)
@@ -106,22 +92,25 @@ if test "${GLIB_GENMARSHAL}" = "no"; then
AC_MSG_WARN([glib2-devel installed, but glib-genmarshal not found])
let na_fatal_count+=1
fi
+# Have and want GConf support ?
+# As of 3.4 release, we are deprecating GConf, disabled it by default.
+# We only search for the libraries when explicitely required from
+# configure. This is a first step deprecation; in a second step, we
+# will emit a warning.
+NA_CHECK_FOR_GCONF
-##
-## Nautilus file-manager
-##
-NA_CHECK_MODULE([NAUTILUS_EXTENSION],[libnautilus-extension >= 2.16])
-#
-# when working in a test environment, nautilus extensions are typically
-# installed in a non-standard location ; lets specify this location here
-NA_NAUTILUS_EXTDIR
-#
-# Check for menu update function
-AC_CHECK_LIB([nautilus-extension],[nautilus_menu_item_new])
-AC_CHECK_FUNCS([nautilus_menu_provider_emit_items_updated_signal])
-#
-# starting with 2.91.90, Nautilus no more allows extensions to add toolbar items
-AC_CHECK_FUNCS([nautilus_menu_provider_get_toolbar_items])
+# As of 3.4 release, remove Gtk+2 support, only allowing for Gtk+3
+dnl aclocal complains if the comma is not just after the square bracket
+NA_CHECK_MODULE([GTK3], [gtk+-3.0], [${gtk_required}])
+NA_CHECK_MODULE([GLIB], [glib-2.0], [${glib_required}])
+NA_CHECK_MODULE([GMODULE], [gmodule-2.0],[${glib_required}])
+NA_CHECK_MODULE([GIO_UNIX],[gio-unix-2.0])
+NA_CHECK_MODULE([GTOP], [libgtop-2.0],[2.23.1])
+NA_CHECK_MODULE([LIBXML], [libxml-2.0], [2.6])
+NA_CHECK_MODULE([UUID], [uuid])
+
+# target a file manager (nautilus, nemo, ...)
+NA_TARGET_FILE_MANAGER
AC_SUBST([NAUTILUS_ACTIONS_CFLAGS])
AC_SUBST([NAUTILUS_ACTIONS_LIBS])
@@ -129,6 +118,9 @@ AC_SUBST([NAUTILUS_ACTIONS_LIBS])
# defines a log domain for each component
NA_LOG_DOMAINS
+# print the debug output be printed to the console
+AC_DEFINE([NAUTILUS_ACTIONS_DEBUG],["NAUTILUS_ACTIONS_DEBUG"],[Debug environment variable])
+
# add --with-default-io-provider option
NA_SET_DEFAULT_IO_PROVIDER([io-desktop])
@@ -186,10 +178,6 @@ GNOME_DOC_INIT(,,[gdu_cv_have_gdu=no])
# add --enable-html-manuals and --enable-pdf-manuals configure options
NA_ENABLE_MANUALS
-# define NA_MAINTAINER_MODE variable
-NA_MAINTAINER_CHECK_MODE
-AC_DEFINE([NAUTILUS_ACTIONS_DEBUG],["NAUTILUS_ACTIONS_DEBUG"],[Debug environment variable])
-
# display and keep configuration informations
config_options="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
AC_DEFINE_UNQUOTED([NA_CONFIG_OPTIONS],["$0 ${config_options}"],["Configure options"])
@@ -197,25 +185,34 @@ AC_DEFINE_UNQUOTED([NA_CONFIG_OPTIONS],["$0 ${config_options}"],["Configure opti
AC_OUTPUT
msg_gtk_doc=`if test "x${enable_gtk_doc}" = "xno"; then echo "disabled"; else echo "enabled"; fi`
-msg_gtk_version=""
-if test "${have_gtk3}" = "yes"; then msg_gtk_version="Gtk+ 3.0";
- elif test "${have_gtk2}" = "yes"; then msg_gtk_version="Gtk+ 2.0"; fi
$as_echo "
${PACKAGE_STRING} configuration summary:
Installation prefix ${prefix}
Build system type ${ac_cv_build}
- Nautilus extensions directory ${with_nautilus_extdir}
- Gtk+ version ${msg_gtk_version}
+ Gtk+ version ${GTK3_msg_version}
+ GLib version ${GLIB_msg_version}
Default I/O provider ${with_default_io_provider}
+ Targeted file-manager ${enable_file_manager}"
+if test "${enable_file_manager}" = "nautilus"; then
+ $as_echo " Nautilus extensions directory ${with_nautilus_extdir}"
+fi
+$as_echo " GConf enabled ${enable_gconf}"
+if test "${enable_gconf}" = "yes"; then
+ $as_echo " GConf schemas installation ${msg_schemas_install}"
+fi
+$as_echo " Maintainer mode ${msg_maintainer_mode}
Enable deprecated functions ${enable_deprecated}
- GConf enabled ${enable_gconf}
- GConf schemas installation ${msg_schemas_install}
- Maintainer mode ${msg_maintainer_mode}
API Reference generation ${msg_gtk_doc}
HTML User's Manuals generation ${msg_html_manuals}
PDF User's Manuals generation ${msg_pdf_manuals}
"
+if test ${na_fatal_count} -gt 0; then
+ $as_echo "${na_fatal_list}
+"
+ exit 1
+fi
+
# Preprocessor flags ${AM_CPPFLAGS}
# Compiler flags ${AM_CFLAGS} ${NAUTILUS_ACTIONS_CFLAGS}
# Linker flags ${NAUTILUS_ACTIONS_LIBS}
diff --git a/m4/na-check-for-gconf.m4 b/m4/na-check-for-gconf.m4
index bfb1413..cbd0c93 100644
--- a/m4/na-check-for-gconf.m4
+++ b/m4/na-check-for-gconf.m4
@@ -25,84 +25,69 @@
# Pierre Wieser <pwieser trychlos org>
# ... and many others (see AUTHORS)
-# serial 2 review the macro behavior
+# serial 3 GConf is deprecated, and thus disabled by default
dnl let the user choose whether to compile with GConf enabled
dnl --enable-gconf
dnl
-dnl defaults to automatically enable GConf if it is present on the
-dnl compiling system, or disable it if it is absent
-dnl if --enable-gconf is specified, then GConf subsystem must be present
+dnl defaults to disabling GConf, only searching for a GConf subsystem
+dnl when the '--enable-gconf' option is specified.
dnl
dnl Please note that, from the packager point of view, we should have
dnl both GConf2 and GConf2-devel package, in order to be able to build
dnl and distribute the 'na-gconf' I/O provider
+dnl
+dnl Define the HAVE_GCONF conditional
AC_DEFUN([NA_CHECK_FOR_GCONF],[
- AC_REQUIRE([_AC_NA_ARG_GCONF])dnl
- AC_REQUIRE([_AC_NA_CHECK_GCONF])dnl
+ AC_REQUIRE([_AC_NA_GCONF_ARG])dnl
+ AC_REQUIRE([_AC_NA_GCONF_CHECK])dnl
])
-AC_DEFUN([_AC_NA_ARG_GCONF],[
+AC_DEFUN([_AC_NA_GCONF_ARG],[
AC_ARG_ENABLE(
[gconf],
AC_HELP_STRING(
[--enable-gconf],
- [whether to enable GConf subsystem @<:@auto@:>@]),
+ [whether to enable GConf subsystem @<:@no@:>@]),
[enable_gconf=$enableval],
- [enable_gconf="auto"])
+ [enable_gconf="no"])
])
-AC_DEFUN([_AC_NA_CHECK_GCONF],[
- AC_MSG_CHECKING([whether GConf is enabled])
+AC_DEFUN([_AC_NA_GCONF_CHECK],[
+ AC_MSG_CHECKING([whether GConf is required])
AC_MSG_RESULT([${enable_gconf}])
compile_with_gconf="no"
- dnl if --enable-gconf is not specified, then we make the choice
- dnl based on the presence of GConf subsystem (and development
- dnl libraries)
- if test "${enable_gconf}" = "auto"; then
- AC_PATH_PROG([have_gconf],[gconftool-2],[yes],[no])
- if test "${have_gconf}" = "yes"; then
- compile_with_gconf="yes"
- fi
-
- dnl if --enable-gconf is set to yes, then check that the subsystem
- dnl is installed
- else
- if test "${enable_gconf}" = "yes"; then
- AC_PATH_PROG([have_gconf],[gconftool-2],[yes],[no])
- if test "${have_gconf}" = "no"; then
- AC_MSG_WARN([GConf2 subsystem is missing])
- let na_fatal_count+=1
- else
- compile_with_gconf="yes"
- fi
- fi
- fi
+ dnl as of 3.4, GConf is disabled if --enable-gconf is not specified
+ if test "${enable_gconf}" = "yes"; then
+ AC_PATH_PROG([have_gconftool],[gconftool-2],[yes],[no])
- dnl if want to compile with GConf, then check that we have the
- dnl development libraries
+ dnl this is not fatal to not have GConf (even if required)
+ dnl just the GConf I/O provider will not be built
+ if test "${have_gconftool}" != "yes"; then
+ AC_MSG_WARN([GConf2 subsystem (gconftool-2) is missing])
- if test "${compile_with_gconf}" = "yes"; then
- PKG_CHECK_MODULES([GCONF],
- [gconf-2.0 >= 2.8.0],[have_gconf_devel="yes"],[have_gconf_devel="no"])
- if test "${have_gconf_devel}" = "no"; then
- if test "${enable_gconf}" != "auto"; then
+ dnl if want to compile with GConf, then check that we have the
+ dnl development libraries
+ else
+ PKG_CHECK_MODULES([GCONF],
+ [gconf-2.0 >= 2.8.0],[have_gconf_devel="yes"],[have_gconf_devel="no"])
+ if test "${have_gconf_devel}" = "no"; then
AC_MSG_WARN([GConf2 development libraries are missing. Please install
GConf2-devel package])
- let na_fatal_count+=1
+
+ else
+ compile_with_gconf="yes"
fi
- compile_with_gconf="no"
- else
- msg_gconf2_version=$(pkg-config --modversion gconf-2.0)
fi
fi
if test "${compile_with_gconf}" = "yes"; then
+ gconf_msg_version=$(pkg-config --modversion gconf-2.0)
AC_SUBST([AM_CPPFLAGS],["${AM_CPPFLAGS} -DHAVE_GCONF"])
NAUTILUS_ACTIONS_CFLAGS="${NAUTILUS_ACTIONS_CFLAGS} ${GCONF_CFLAGS}"
NAUTILUS_ACTIONS_LIBS="${NAUTILUS_ACTIONS_LIBS} ${GCONF_LIBS}"
- AC_DEFINE_UNQUOTED([HAVE_GCONF],[1],[Whether we compile against the GConf library])
+ AC_DEFINE_UNQUOTED([HAVE_GCONF],[1],[Whether we compile against the GConf library (and build
the GConf I/O Provider)])
fi
_NA_GCONF_SOURCE_2(["${compile_with_gconf}"])
@@ -170,5 +155,5 @@ AC_DEFUN([_NA_GCONF_SOURCE_2],
msg_schemas_install="enabled in ${GCONF_SCHEMA_FILE_DIR}"
fi
- AM_CONDITIONAL([GCONF_SCHEMAS_INSTALL], [test "$enable_schemas_install" != no -a "$1" = "yes"])
+ AM_CONDITIONAL([GCONF_SCHEMAS_INSTALL], [test "$enable_schemas_install" != "no" -a "$1" = "yes"])
])
diff --git a/m4/na-check-module.m4 b/m4/na-check-module.m4
index 85d058c..30afd3e 100644
--- a/m4/na-check-module.m4
+++ b/m4/na-check-module.m4
@@ -25,18 +25,21 @@
# Pierre Wieser <pwieser trychlos org>
# ... and many others (see AUTHORS)
-# serial 1 creation
+# serial 2 remove Gtk2 vs. Gtk3 check
-dnl usage: NA_CHECK_MODULE(var,condition[,error])
+dnl usage: NA_CHECK_MODULE(var,module[,[version],[error]])
dnl
-dnl this macro checks that gtk+-2.0 and gtk+-3.0 libraries are not mixed
+dnl if 'error' = 'no', then only displays on information message, making
+dnl the lack of library non fatal.
dnl
-dnl if 'error' != 'no', then displays an error message if condition is
-dnl not met.
# translit($1, 'a-z', 'A-Z'),
AC_DEFUN([NA_CHECK_MODULE],[
- PKG_CHECK_MODULES([$1],[$2],[have_$1="yes"],[have_$1="no"])
+ _cond="$2"
+ if test "$3" != ""; then
+ _cond="$2 >= $3"
+ fi
+ PKG_CHECK_MODULES([$1],[${_cond}],[have_$1="yes"],[have_$1="no"])
#echo "have_gtk2=$have_gtk2 have_gtk3=$have_gtk3"
#echo "$1_CFLAGS='${$1_CFLAGS}'"
@@ -45,32 +48,25 @@ AC_DEFUN([NA_CHECK_MODULE],[
#echo "against Gtk3: $(echo ${$1_LIBS} | grep -E 'gtk-@<:@^-@:>@+-3\.0')"
if test "${have_$1}" = "yes"; then
- if test "${have_gtk3}" = "yes"; then
- if echo ${$1_LIBS} | grep -qE 'gtk-@<:@^-@:>@+-2\.0'; then
- _NA_CHECK_MODULE_MSG([$3],[$1: compiling with Gtk+-3 but adresses Gtk+-2
libraries])
- have_$1="no"
- fi
- elif test "${have_gtk2}" = "yes"; then
- if echo ${$1_LIBS} | grep -qE 'gtk-@<:@^-@:>@+-3.0'; then
- _NA_CHECK_MODULE_MSG([$3],[$1: compiling with Gtk+-2 but adresses Gtk+-3
libraries])
- have_$1="no"
- fi
- fi
- else
- _NA_CHECK_MODULE_MSG([$3],[$1: condition $2 not satisfied])
- fi
-
- if test "${have_$1}" = "yes"; then
+ $1_msg_version=$(pkg-config --modversion $2)
NAUTILUS_ACTIONS_CFLAGS="${NAUTILUS_ACTIONS_CFLAGS} ${$1_CFLAGS}"
NAUTILUS_ACTIONS_LIBS="${NAUTILUS_ACTIONS_LIBS} ${$1_LIBS}"
+ else
+ _NA_CHECK_MODULE_MSG([$4],[$1: condition ${_cond} not satisfied])
fi
])
+dnl what to do when the searched for library is missing: it is a fatal
+dnl error, or no ?
+
AC_DEFUN([_NA_CHECK_MODULE_MSG],[
if test "$1" = "no"; then
AC_MSG_RESULT([warning: $2])
else
- AC_MSG_WARN([$2])
let na_fatal_count+=1
+ AC_MSG_WARN([$2 (fatal_count=${na_fatal_count})])
+ if test "${na_fatal_list}" != ""; then na_fatal_list="${na_fatal_list}
+"; fi
+ na_fatal_list="${na_fatal_list}$2"
fi
])
diff --git a/m4/na-file-manager.m4 b/m4/na-file-manager.m4
new file mode 100644
index 0000000..8371eee
--- /dev/null
+++ b/m4/na-file-manager.m4
@@ -0,0 +1,90 @@
+# Nautilus-Actions
+# A Nautilus extension which offers configurable context menu actions.
+#
+# Copyright (C) 2005 The GNOME Foundation
+# Copyright (C) 2006-2008 Frederic Ruaudel and others (see AUTHORS)
+# Copyright (C) 2009-2014 Pierre Wieser and others (see AUTHORS)
+#
+# Nautilus-Actions is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of
+# the License, or (at your option) any later version.
+#
+# Nautilus-Actions is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Nautilus-Actions; see the file COPYING. If not, see
+# <http://www.gnu.org/licenses/>.
+#
+# Authors:
+# Frederic Ruaudel <grumz grumz net>
+# Rodrigo Moya <rodrigo gnome-db org>
+# Pierre Wieser <pwieser trychlos org>
+# ... and many others (see AUTHORS)
+
+# serial 1 let the user choose a target file-manager
+
+dnl defaults to nautilus
+
+AC_DEFUN([NA_TARGET_FILE_MANAGER],[
+
+ AC_ARG_ENABLE([file-manager],
+ AC_HELP_STRING(
+ [--enable-file-manager=@<:@nautilus|nemo@:>@],
+ [the targeted file manager @<:@nautilus@:>@]),
+ [enable_file_manager=$withval],
+ [enable_file_manager="nautilus"])
+
+ if test "${enable_file_manager}" = "nautilus"; then
+ AC_MSG_NOTICE([targeting Nautilus file-manager])
+ AC_REQUIRE([_AC_NA_FILE_MANAGER_NAUTILUS])dnl
+
+ elif test "${enable_file_manager}" = "nemo"; then
+ AC_MSG_NOTICE([targeting Nemo file-manager])
+ fi
+])
+
+# target file manager: nautilus
+# when working in a test environment, nautilus extensions are typically
+# installed in a non-standard location; lets specify this location here
+# --with-nautilus-extdir=<dir>
+
+AC_DEFUN([_AC_NA_FILE_MANAGER_NAUTILUS],[
+
+ AC_ARG_WITH(
+ [nautilus-extdir],
+ AC_HELP_STRING(
+ [--with-nautilus-extdir=DIR],
+ [nautilus plugins extension directory @<:@auto@:>@]),
+ [with_nautilus_extdir=$withval],
+ [with_nautilus_extdir=""])
+
+ if test "${with_nautilus_extdir}" = ""; then
+ if test "{PKG_CONFIG}" != ""; then
+ with_nautilus_extdir=`${PKG_CONFIG} --variable=extensiondir libnautilus-extension`
+ fi
+ fi
+ if test "${with_nautilus_extdir}" = ""; then
+ AC_MSG_ERROR([Unable to determine nautilus extension folder, please use
--with-nautilus-extdir option])
+ else
+ AC_MSG_NOTICE([installing plugins in ${with_nautilus_extdir}])
+ AC_SUBST([NAUTILUS_EXTENSIONS_DIR],[${with_nautilus_extdir}])
+ AC_DEFINE_UNQUOTED([NA_NAUTILUS_EXTENSIONS_DIR],[${with_nautilus_extdir}],[Nautilus
extensions directory])
+ fi
+
+ NA_CHECK_MODULE([NAUTILUS_EXTENSION],[libnautilus-extension],[${nautilus_required}])
+
+ # Check for menu update function
+ AC_CHECK_LIB([nautilus-extension],[nautilus_menu_item_new])
+ AC_CHECK_FUNCS([nautilus_menu_provider_emit_items_updated_signal])
+
+ # starting with 2.91.90, Nautilus no more allows extensions to
+ # add toolbar items
+ AC_CHECK_FUNCS([nautilus_menu_provider_get_toolbar_items])
+])
+
+AC_DEFUN([_AC_NA_FILE_MANAGER_NEMO],[
+])
diff --git a/maintainer/run-autogen.sh b/maintainer/run-autogen.sh
index 747c84e..d638b2d 100755
--- a/maintainer/run-autogen.sh
+++ b/maintainer/run-autogen.sh
@@ -142,9 +142,8 @@ conf_cmd="\${top_srcdir}/configure"
conf_args="${conf_args}"
conf_args="\${conf_args} --prefix=\${heredir}/_install"
conf_args="\${conf_args} --sysconfdir=/etc"
+conf_args="\${conf_args} --enable-file-manager=nautilus"
conf_args="\${conf_args} --with-nautilus-extdir=\${heredir}/_install/lib/nautilus"
-conf_args="\${conf_args} --disable-schemas-install"
-conf_args="\${conf_args} --disable-scrollkeeper"
conf_args="\${conf_args} --enable-maintainer-mode"
conf_args="\${conf_args} $*"
conf_args="\${conf_args} \$*"
diff --git a/src/plugin-tracker/Makefile.am b/src/plugin-tracker/Makefile.am
index 65bb71e..8e47335 100644
--- a/src/plugin-tracker/Makefile.am
+++ b/src/plugin-tracker/Makefile.am
@@ -38,7 +38,6 @@ nautilus_extension_LTLIBRARIES = libnautilus-actions-tracker.la
BUILT_SOURCES =
-if HAVE_GDBUS
BUILT_SOURCES += \
na-tracker-gdbus.c
\
na-tracker-gdbus.h
\
@@ -55,16 +54,6 @@ na-tracker-gdbus.c na-tracker-gdbus.h: na-tracker-gdbus.xml
DISTCLEANFILES = \
na-tracker-gdbus-docs-org.nautilus_actions.DBus.Tracker.Properties1.xml
-endif
-
-if HAVE_DBUS_GLIB
-BUILT_SOURCES += \
- na-tracker-dbus-glib.h \
- $(NULL)
-
-na-tracker-dbus-glib.h: na-tracker-dbus-glib.xml
- dbus-binding-tool --mode=glib-server --prefix=na_tracker_dbus $< > $@
-endif
nodist_libnautilus_actions_tracker_la_SOURCES = \
$(BUILT_SOURCES)
\
diff --git a/src/utils/Makefile.am b/src/utils/Makefile.am
index 89c12fd..d5d60d3 100644
--- a/src/utils/Makefile.am
+++ b/src/utils/Makefile.am
@@ -71,7 +71,6 @@ nautilus_actions_print_LDADD = \
BUILT_SOURCES =
-if HAVE_GDBUS
BUILT_SOURCES += \
nautilus-actions-run-bindings.c \
nautilus-actions-run-bindings.h \
@@ -84,16 +83,6 @@ nautilus-actions-run-bindings.c nautilus-actions-run-bindings.h: $(top_srcdir)/s
--c-namespace NA_Tracker \
--c-generate-object-manager \
$<
-endif
-
-if HAVE_DBUS_GLIB
-BUILT_SOURCES += \
- nautilus-actions-run-bindings.h \
- $(NULL)
-
-nautilus-actions-run-bindings.h: $(top_srcdir)/src/plugin-tracker/na-tracker-dbus-glib.xml
- dbus-binding-tool --mode=glib-client $< > $@
-endif
nodist_nautilus_actions_run_SOURCES = \
$(BUILT_SOURCES)
\
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]