[gedit/wip/non-recursive-make: 1/7] Make plugins non-recursive



commit d661bd6a28a1e854357b53a091bdb272795b5f29
Author: Jesse van den Kieboom <jessevdk gmail com>
Date:   Sun Jan 12 15:28:23 2014 +0100

    Make plugins non-recursive

 Makefile.am                                     |   32 +++-
 configure.ac                                    |   21 ---
 plugins/Makefile.am                             |   90 +++++------
 plugins/checkupdate/Makefile.am                 |   52 +++----
 plugins/docinfo/Makefile.am                     |   48 ++----
 plugins/externaltools/Makefile.am               |   34 +++--
 plugins/externaltools/data/Makefile.am          |   79 ++++-----
 plugins/externaltools/scripts/Makefile.am       |    4 -
 plugins/externaltools/tools/Makefile.am         |   38 ++---
 plugins/filebrowser/Makefile.am                 |  202 +++++++++++------------
 plugins/modelines/Makefile.am                   |   42 ++----
 plugins/pythonconsole/Makefile.am               |   32 ++--
 plugins/pythonconsole/pythonconsole/Makefile.am |   15 --
 plugins/quickopen/Makefile.am                   |   20 +-
 plugins/quickopen/quickopen/Makefile.am         |   12 --
 plugins/snippets/Makefile.am                    |   68 +++++++-
 plugins/snippets/data/Makefile.am               |   34 ----
 plugins/snippets/data/lang/Makefile.am          |    9 -
 plugins/sort/Makefile.am                        |   47 ++----
 plugins/spell/Makefile.am                       |  115 ++++++-------
 plugins/time/Makefile.am                        |   60 +++-----
 plugins/zeitgeist/Makefile.am                   |   34 ++--
 22 files changed, 473 insertions(+), 615 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index b2c1a09..a6f22d9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,7 +1,7 @@
 ## Process this file with automake to produce Makefile.in
 ACLOCAL_AMFLAGS = -I m4 -I libgd ${ACLOCAL_FLAGS}
 
-SUBDIRS = libgd gedit po plugins docs
+SUBDIRS = libgd gedit po docs
 
 if !OS_OSX
 SUBDIRS += help
@@ -77,30 +77,44 @@ MAINTAINERCLEANFILES =              \
        po/*.header             \
        po/*.sin
 
-CLEANFILES =
-
 DISTCHECK_CONFIGURE_FLAGS = --disable-scrollkeeper --enable-gtk-doc
 
-gsettings_SCHEMAS =
+GRESDEPS = $(srcdir)/$1 $(shell $(GLIB_COMPILE_RESOURCES) --generate-dependencies --sourcedir 
$(srcdir)/$(dir $1) $(srcdir)/$1)
+
+GRESGEN = $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target="$@" --sourcedir="$(dir $<)" --generate-source "$<"
+
+GSETTINGS_ENUMS_GEN = $(AM_V_GEN) $(GLIB_MKENUMS) --comments "<!-- @comment@ -->" --fhead "<schemalist>" 
--vhead "  <@type@ id='$(subst .enums.xml,,$(notdir $@))  EnumName@'>" --vprod "    <value nick='@valuenick@' 
value='@valuenum@'/>" --vtail "  </@type@>" --ftail "</schemalist>" $^ > $@
+
+noinst_LTLIBRARIES        =
+noinst_PROGRAMS                  =
+gsettings_SCHEMAS         =
+gsettings_ENUMS           =
 dist_gsettingsschema_DATA =
-TESTS =
-noinst_PROGRAMS        =
+TESTS                     =
+BUILT_SOURCES             =
+CLEANFILES                =
+
+ GSETTINGS_RULES@
 
 include data/Makefile.am
 include pixmaps/Makefile.am
 include win32/Makefile.am
 include osx/Makefile.am
 include tests/Makefile.am
+include plugins/Makefile.am
+
+override gsettings__enum_file = $(gsettings_ENUMS)
+BUILT_SOURCES += $(gsettings_ENUMS)
 
 EXTRA_DIST += $(gsettings_SCHEMAS:.gschema.xml=.gschema.xml.in)
-CLEANFILES += $(gsettings_SCHEMAS)
-DISTCLEANFILES += $(gsettings_SCHEMAS)
+CLEANFILES += $(gsettings_SCHEMAS) $(BUILT_SOURCES)
+DISTCLEANFILES += $(gsettings_SCHEMAS) $(BUILT_SOURCES)
 MAINTAINERCLEANFILES += $(gsettings_SCHEMAS:.xml=.valid)
+
 noinst_PROGRAMS += $(TESTS)
 
 @INTLTOOL_DESKTOP_RULE@
 @INTLTOOL_XML_RULE@
- GSETTINGS_RULES@
 
 CHANGELOG_START = GEDIT_2_26_1
 
diff --git a/configure.ac b/configure.ac
index 4daadca..8f98831 100644
--- a/configure.ac
+++ b/configure.ac
@@ -445,32 +445,11 @@ docs/reference/Makefile
 gedit/Makefile
 help/Makefile
 libgd/Makefile
-plugins/Makefile
 plugins/checkupdate/org.gnome.gedit.plugins.checkupdate.gschema.xml.in
-plugins/checkupdate/Makefile
-plugins/externaltools/data/Makefile
-plugins/externaltools/Makefile
 plugins/externaltools/org.gnome.gedit.plugins.externaltools.gschema.xml.in
-plugins/externaltools/scripts/Makefile
-plugins/externaltools/tools/Makefile
-plugins/docinfo/Makefile
 plugins/filebrowser/org.gnome.gedit.plugins.filebrowser.gschema.xml.in
-plugins/filebrowser/Makefile
-plugins/modelines/Makefile
-plugins/pythonconsole/Makefile
 plugins/pythonconsole/org.gnome.gedit.plugins.pythonconsole.gschema.xml.in
-plugins/pythonconsole/pythonconsole/Makefile
-plugins/quickopen/Makefile
-plugins/quickopen/quickopen/Makefile
-plugins/snippets/data/lang/Makefile
-plugins/snippets/data/Makefile
-plugins/snippets/Makefile
-plugins/snippets/snippets/Makefile
-plugins/sort/Makefile
-plugins/spell/Makefile
 plugins/time/org.gnome.gedit.plugins.time.gschema.xml.in
-plugins/time/Makefile
-plugins/zeitgeist/Makefile
 po/Makefile.in
 win32/gedit.iss
 osx/Info.plist])
diff --git a/plugins/Makefile.am b/plugins/Makefile.am
index 98611a2..cfaee57 100644
--- a/plugins/Makefile.am
+++ b/plugins/Makefile.am
@@ -1,47 +1,43 @@
-DIST_SUBDIRS = \
-       checkupdate     \
-       docinfo         \
-       externaltools   \
-       filebrowser     \
-       modelines       \
-       pythonconsole   \
-       quickopen       \
-       snippets        \
-       sort            \
-       spell           \
-       time            \
-       zeitgeist
-
-SUBDIRS = \
-       docinfo         \
-       filebrowser     \
-       modelines       \
-       sort            \
-       time
-
-if ENABLE_PYTHON
-SUBDIRS += \
-       pythonconsole   \
-       quickopen       \
-       snippets
-endif
-
-if !OS_WIN32
-if ENABLE_PYTHON
-SUBDIRS      += externaltools
-endif
-endif
-
-if ENABLE_ENCHANT
-SUBDIRS      += spell
-endif
-
-if ENABLE_UPDATER
-SUBDIRS      += checkupdate
-endif
-
-if ENABLE_ZEITGEIST
-SUBDIRS      += zeitgeist
-endif
-
--include $(top_srcdir)/git.mk
+plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+
+plugin_in_files               =
+dist_plugin_in_files          =
+plugin_LTLIBRARIES            =
+plugin_gsettings_SCHEMAS      =
+dist_plugin_gsettings_SCHEMAS =
+
+include plugins/checkupdate/Makefile.am
+include plugins/docinfo/Makefile.am
+include plugins/externaltools/Makefile.am
+include plugins/filebrowser/Makefile.am
+include plugins/modelines/Makefile.am
+include plugins/pythonconsole/Makefile.am
+include plugins/quickopen/Makefile.am
+include plugins/snippets/Makefile.am
+include plugins/sort/Makefile.am
+include plugins/spell/Makefile.am
+include plugins/time/Makefile.am
+include plugins/zeitgeist/Makefile.am
+
+gsettings_SCHEMAS += $(plugin_gsettings_SCHEMAS)
+
+%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po)
+       $(AM_V_GEN) \
+       $(MKDIR_P) "$(dir $@)"; \
+       $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
+
+GENERATED_PLUGIN_FILES = $(plugin_in_files:.plugin.desktop.in=.plugin)
+
+plugin_DATA = $(GENERATED_PLUGIN_FILES)
+
+DISTCLEANFILES +=                      \
+       $(GENERATED_PLUGIN_FILES)
+
+CLEANFILES +=                          \
+       $(GENERATED_PLUGIN_FILES)
+
+EXTRA_DIST +=                                                                  \
+       $(plugin_in_files)                                                      \
+       $(dist_plugin_in_files)                                                 \
+       $(plugin_gsettings_SCHEMAS:%.gschema.xml=%.gschema.xml.in.in)           \
+       $(dist_plugin_gsettings_SCHEMAS:%.gschema.xml=%.gschema.xml.in.in)
diff --git a/plugins/checkupdate/Makefile.am b/plugins/checkupdate/Makefile.am
index 470ed61..1b82065 100644
--- a/plugins/checkupdate/Makefile.am
+++ b/plugins/checkupdate/Makefile.am
@@ -1,40 +1,30 @@
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+if ENABLE_UPDATER
 
-AM_CPPFLAGS = \
-       -I$(top_srcdir)                                                 \
-       $(GEDIT_CFLAGS)                                                 \
-       $(LIBSOUP_CFLAGS)                                               \
-       $(WARN_CFLAGS)                                                  \
-       $(DISABLE_DEPRECATED_CFLAGS)
-
-plugin_LTLIBRARIES = libcheckupdate.la
-
-libcheckupdate_la_SOURCES = \
-       gedit-check-update-plugin.h     \
-       gedit-check-update-plugin.c
-
-libcheckupdate_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
-libcheckupdate_la_LIBADD = $(GEDIT_LIBS) $(LIBSOUP_LIBS)
+plugin_LTLIBRARIES += plugins/checkupdate/libcheckupdate.la
 
-plugin_in_files = checkupdate.plugin.desktop.in
+plugins_checkupdate_libcheckupdate_la_SOURCES =                        \
+       plugins/checkupdate/gedit-check-update-plugin.h         \
+       plugins/checkupdate/gedit-check-update-plugin.c
 
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
-
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
-
-gsettings_SCHEMAS = org.gnome.gedit.plugins.checkupdate.gschema.xml
+plugins_checkupdate_libcheckupdate_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
+plugins_checkupdate_libcheckupdate_la_LIBADD = $(GEDIT_LIBS) $(LIBSOUP_LIBS)
+plugins_checkupdate_libcheckupdate_la_CPPFLAGS = -I$(top_srcdir)
+plugins_checkupdate_libcheckupdate_la_CFLAGS = \
+       $(GEDIT_CFLAGS)                         \
+       $(LIBSOUP_CFLAGS)                       \
+       $(WARN_CFLAGS)                          \
+       $(DISABLE_DEPRECATED_CFLAGS)
 
- INTLTOOL_XML_NOMERGE_RULE@
- GSETTINGS_RULES@
+plugin_in_files += plugins/checkupdate/checkupdate.plugin.desktop.in
 
-EXTRA_DIST = \
-       $(plugin_in_files)      \
-       org.gnome.gedit.plugins.checkupdate.gschema.xml.in.in
+plugin_gsettings_SCHEMAS +=                                                    \
+       plugins/checkupdate/org.gnome.gedit.plugins.checkupdate.gschema.xml
 
-CLEANFILES = $(plugin_DATA) $(gsettings_SCHEMAS)
+else
 
-DISTCLEANFILES = $(plugin_DATA) $(gsettings_SCHEMAS)
+dist_plugin_in_files += plugins/checkupdate/checkupdate.plugin.desktop.in
 
-MAINTAINERCLEANFILES = $(gsettings_SCHEMAS:.xml=.valid)
+dist_plugin_gsettings_SCHEMAS +=                                               \
+       plugins/checkupdate/org.gnome.gedit.plugins.checkupdate.gschema.xml
 
--include $(top_srcdir)/git.mk
+endif
diff --git a/plugins/docinfo/Makefile.am b/plugins/docinfo/Makefile.am
index 49a1e53..817a60c 100644
--- a/plugins/docinfo/Makefile.am
+++ b/plugins/docinfo/Makefile.am
@@ -1,39 +1,23 @@
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+plugin_LTLIBRARIES += plugins/docinfo/libdocinfo.la
 
-AM_CPPFLAGS = \
-       -I$(top_srcdir)                                 \
+plugins_docinfo_libdocinfo_la_SOURCES =                        \
+       plugins/docinfo/gedit-docinfo-plugin.h          \
+       plugins/docinfo/gedit-docinfo-plugin.c          \
+       plugins/docinfo/gedit-docinfo-resources.c
+
+plugins_docinfo_libdocinfo_la_LDFLAGS  = $(PLUGIN_LIBTOOL_FLAGS)
+plugins_docinfo_libdocinfo_la_LIBADD   = $(GEDIT_LIBS)
+plugins_docinfo_libdocinfo_la_CPPFLAGS = -I$(top_srcdir)
+plugins_docinfo_libdocinfo_la_CFLAGS   =               \
        $(GEDIT_CFLAGS)                                 \
        $(WARN_CFLAGS)                                  \
        $(DISABLE_DEPRECATED_CFLAGS)
 
-plugin_LTLIBRARIES = libdocinfo.la
-
-BUILT_SOURCES = \
-       gedit-docinfo-resources.c
-
-libdocinfo_la_SOURCES = \
-       gedit-docinfo-plugin.h  \
-       gedit-docinfo-plugin.c  \
-       $(BUILT_SOURCES)
-
-libdocinfo_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
-libdocinfo_la_LIBADD  = $(GEDIT_LIBS)
-
-gedit-docinfo-resources.c: gedit-docinfo.gresource.xml $(shell $(GLIB_COMPILE_RESOURCES) 
--sourcedir=$(srcdir) --generate-dependencies $(srcdir)/gedit-docinfo.gresource.xml)
-       $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate-source 
$(srcdir)/gedit-docinfo.gresource.xml
-
-plugin_in_files = docinfo.plugin.desktop.in
-
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
-
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
-
-EXTRA_DIST = \
-       $(plugin_in_files) \
-       gedit-docinfo.gresource.xml \
-       gedit-docinfo-plugin.ui
+docinfo_resources_deps = $(call GRESDEPS,plugins/docinfo/gedit-docinfo.gresource.xml)
+plugins/docinfo/gedit-docinfo-resources.c: $(docinfo_resources_deps)
+       $(GRESGEN)
 
-CLEANFILES = $(BUILT_SOURCES) $(plugin_DATA)
-DISTCLEANFILES = $(BUILT_SOURCES) $(plugin_DATA)
+plugin_in_files += plugins/docinfo/docinfo.plugin.desktop.in
 
--include $(top_srcdir)/git.mk
+BUILT_SOURCES += plugins/docinfo/gedit-docinfo-resources.c
+EXTRA_DIST += $(docinfo_resources_deps)
diff --git a/plugins/externaltools/Makefile.am b/plugins/externaltools/Makefile.am
index 342f96c..93f1f83 100644
--- a/plugins/externaltools/Makefile.am
+++ b/plugins/externaltools/Makefile.am
@@ -1,20 +1,28 @@
-# External Tools plugin
-SUBDIRS = tools data scripts
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+if !OS_WIN32
+if ENABLE_PYTHON
 
-plugin_in_files = externaltools.plugin.desktop.in
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
+include plugins/externaltools/tools/Makefile.am
+include plugins/externaltools/data/Makefile.am
 
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
+EXTRA_DIST += plugins/externaltools/scripts/gedit-tool-merge.pl
 
-gsettings_SCHEMAS = org.gnome.gedit.plugins.externaltools.gschema.xml
+plugin_in_files += plugins/externaltools/externaltools.plugin.desktop.in
+plugin_gsettings_SCHEMAS +=                                                    \
+       plugins/externaltools/org.gnome.gedit.plugins.externaltools.gschema.xml
 
- INTLTOOL_XML_NOMERGE_RULE@
- GSETTINGS_RULES@
+else
 
-EXTRA_DIST = $(plugin_in_files) org.gnome.gedit.plugins.externaltools.gschema.xml.in.in
+dist_plugin_in_files += plugins/externaltools/externaltools.plugin.desktop.in
+dist_plugin_gsettings_SCHEMAS +=                                               \
+       plugins/externaltools/org.gnome.gedit.plugins.externaltools.gschema.xml
 
-CLEANFILES = $(plugin_DATA) $(gsettings_SCHEMAS)
-DISTCLEANFILES = $(plugin_DATA) $(gsettings_SCHEMAS)
 
--include $(top_srcdir)/git.mk
+endif
+
+else
+
+dist_plugin_in_files += plugins/externaltools/externaltools.plugin.desktop.in
+dist_plugin_gsettings_SCHEMAS +=                                               \
+       plugins/externaltools/org.gnome.gedit.plugins.externaltools.gschema.xml
+
+endif
diff --git a/plugins/externaltools/data/Makefile.am b/plugins/externaltools/data/Makefile.am
index ae3a1c6..bafa78f 100644
--- a/plugins/externaltools/data/Makefile.am
+++ b/plugins/externaltools/data/Makefile.am
@@ -1,65 +1,60 @@
-TOOL_MERGE=$(top_srcdir)/plugins/externaltools/scripts/gedit-tool-merge.pl
+EXTERNALTOOLS_TOOL_MERGE = $(top_srcdir)/plugins/externaltools/scripts/gedit-tool-merge.pl
 
-tools_in_files = \
-       build.tool.in \
-       remove-trailing-spaces.tool.in
+externaltools_tools_in_files =                                         \
+       plugins/externaltools/data/build.tool.in                        \
+       plugins/externaltools/data/remove-trailing-spaces.tool.in
 
-tools_in_linux = \
-       open-terminal-here.tool.in \
-       run-command.tool.in
+externaltools_tools_in_linux =                                         \
+       plugins/externaltools/data/open-terminal-here.tool.in           \
+       plugins/externaltools/data/run-command.tool.in
 
-tools_in_osx = \
-       open-terminal-here-osx.tool.in
+externaltools_tools_in_osx =                                           \
+       plugins/externaltools/data/open-terminal-here-osx.tool.in
 
-tools_in_win32 =
+externaltools_tools_in_win32 =
 
-install_tools_in_files = $(tools_in_files)
+externaltools_install_tools_in_files = $(tools_in_files)
 
 if PLATFORM_OSX
-install_tools_in_files += $(tools_in_osx)
+externaltools_install_tools_in_files += $(tools_in_osx)
 else
 if PLATFORM_WIN32
-install_tools_in_files += $(tools_in_win32) 
+externaltools_install_tools_in_files += $(tools_in_win32)
 else
-install_tools_in_files += $(tools_in_linux)
+externaltools_install_tools_in_files += $(tools_in_linux)
 endif
 endif
 
-desktop_in_files = $(install_tools_in_files:.tool.in=.desktop.in)
-desktop_files    = $(install_tools_in_files:.tool.in=.desktop)
+externaltools_desktop_in_files = $(externaltools_install_tools_in_files:.tool.in=.desktop.in)
+externaltools_desktop_files    = $(externaltools_install_tools_in_files:.tool.in=.desktop)
 
-tools_SCRIPTS = $(install_tools_in_files:.tool.in=)
-toolsdir = $(GEDIT_PLUGINS_DATA_DIR)/externaltools/tools
+externaltools_toolsdir = $(GEDIT_PLUGINS_DATA_DIR)/externaltools/tools
+externaltools_tools_SCRIPTS = $(externaltools_install_tools_in_files:.tool.in=)
 
-all_tools_in_files = \
-       $(tools_in_files) \
-       $(tools_in_linux) \
-       $(tools_in_osx) \
-       $(tools_in_win32)
+externaltools_all_tools_in_files =     \
+       $(externaltools_tools_in_files) \
+       $(externaltools_tools_in_linux) \
+       $(externaltools_tools_in_osx)   \
+       $(externaltools_tools_in_win32)
 
-all_desktop_in_files = $(all_tools_in_files:.tool.in=.desktop.in)
-all_desktop_files = $(all_tools_in_files:.tool.in=.desktop)
-all_tools_files = $(all_tools_in_files:.tool.in=)
-
- INTLTOOL_DESKTOP_RULE@
+externaltools_all_desktop_in_files = $(externaltools_all_tools_in_files:.tool.in=.desktop.in)
+externaltools_all_desktop_files = $(externaltools_all_tools_in_files:.tool.in=.desktop)
+externaltools_all_tools_files = $(externaltools_all_tools_in_files:.tool.in=)
 
 # Tools are generated by merging a script file (.tool.in) with a data file
 # (.desktop), which happens to be translated using intltool.
-$(tools_SCRIPTS): %: %.tool.in %.desktop $(TOOL_MERGE)
-       perl $(TOOL_MERGE) -o $@ $< $(word 2,$^)
+$(externaltools_tools_SCRIPTS): %: %.tool.in %.desktop $(EXTERNALTOOLS_TOOL_MERGE)
+       perl $(EXTERNALTOOLS_TOOL_MERGE) -o $@ $< $(word 2,$^)
        chmod 755 $@
 
-EXTRA_DIST = \
-       $(all_desktop_in_files) \
-       $(all_tools_in_files)
-
-CLEANFILES = \
-       $(all_desktop_files) \
-       $(all_tools_files)
-
-DISTCLEANFILES = \
-       $(all_desktop_files) \
-       $(all_tools_files)
+EXTRA_DIST +=                                  \
+       $(externaltools_all_desktop_in_files)   \
+       $(externaltools_all_tools_in_files)
 
+CLEANFILES +=                                  \
+       $(externaltools_all_desktop_files)      \
+       $(externaltools_all_tools_files)
 
--include $(top_srcdir)/git.mk
+DISTCLEANFILES +=                              \
+       $(externaltools_all_desktop_files)      \
+       $(externaltools_all_tools_files)
diff --git a/plugins/externaltools/tools/Makefile.am b/plugins/externaltools/tools/Makefile.am
index 9cbc46b..6ce758c 100644
--- a/plugins/externaltools/tools/Makefile.am
+++ b/plugins/externaltools/tools/Makefile.am
@@ -1,24 +1,16 @@
-# Python snippets plugin
+externaltoolsdir = $(plugindir)/externaltools
+externaltools_PYTHON =                                         \
+       plugins/externaltools/tools/__init__.py                 \
+       plugins/externaltools/tools/capture.py                  \
+       plugins/externaltools/tools/library.py                  \
+       plugins/externaltools/tools/functions.py                \
+       plugins/externaltools/tools/manager.py                  \
+       plugins/externaltools/tools/outputpanel.py              \
+       plugins/externaltools/tools/filelookup.py               \
+       plugins/externaltools/tools/linkparsing.py              \
+       plugins/externaltools/tools/windowactivatable.py
 
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)/externaltools
-plugin_PYTHON =                \
-       __init__.py     \
-       capture.py      \
-       library.py      \
-       functions.py    \
-       manager.py      \
-       outputpanel.py  \
-       filelookup.py   \
-       linkparsing.py  \
-       windowactivatable.py
-
-uidir = $(GEDIT_PLUGINS_DATA_DIR)/externaltools/ui
-ui_DATA = tools.ui \
-       outputpanel.ui
-
-EXTRA_DIST = $(ui_DATA)
-
-CLEANFILES = *.bak *.gladep
-DISTCLEANFILES = *.bak *.gladep
-
--include $(top_srcdir)/git.mk
+externaltools_uidir = $(GEDIT_PLUGINS_DATA_DIR)/externaltools/ui
+dist_externaltools_ui_DATA =                                   \
+       plugins/externaltools/tools/tools.ui                    \
+       plugins/externaltools/tools/outputpanel.ui
diff --git a/plugins/filebrowser/Makefile.am b/plugins/filebrowser/Makefile.am
index c8d965c..9c27699 100644
--- a/plugins/filebrowser/Makefile.am
+++ b/plugins/filebrowser/Makefile.am
@@ -1,121 +1,107 @@
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+plugin_LTLIBRARIES += plugins/filebrowser/libfilebrowser.la
 
-AM_CPPFLAGS = \
-       -I$(top_srcdir)                                                 \
+plugins_filebrowser_libfilebrowser_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
+plugins_filebrowser_libfilebrowser_la_LIBADD = $(GEDIT_LIBS)
+plugins_filebrowser_libfilebrowser_la_CPPFLAGS = -I$(top_srcdir)
+plugins_filebrowser_libfilebrowser_la_CFLAGS =                         \
        $(GEDIT_CFLAGS)                                                 \
        $(WARN_CFLAGS)                                                  \
        $(DISABLE_DEPRECATED_CFLAGS)
 
-BUILT_SOURCES = \
-       gedit-file-browser-resources.c          \
-       gedit-file-browser-enum-types.h         \
-       gedit-file-browser-enum-types.c         \
-       gedit-file-browser-marshal.h            \
-       gedit-file-browser-marshal.c
-
-plugin_LTLIBRARIES = libfilebrowser.la
-
-NOINST_H_FILES = \
-       gedit-file-bookmarks-store.h            \
-       gedit-file-browser-store.h              \
-       gedit-file-browser-view.h               \
-       gedit-file-browser-widget.h             \
-       gedit-file-browser-error.h              \
-       gedit-file-browser-utils.h              \
-       gedit-file-browser-plugin.h             \
-       gedit-file-browser-messages.h           \
-       messages/gedit-file-browser-message-activation.h \
-       messages/gedit-file-browser-message-add-context-item.h \
-       messages/gedit-file-browser-message-add-filter.h \
-       messages/gedit-file-browser-message-get-root.h \
-       messages/gedit-file-browser-message-get-view.h \
-       messages/gedit-file-browser-message-id.h \
-       messages/gedit-file-browser-message-id-location.h \
-       messages/gedit-file-browser-message-set-emblem.h \
-       messages/gedit-file-browser-message-set-markup.h \
-       messages/gedit-file-browser-message-set-root.h \
-       messages/messages.h
-
-libfilebrowser_la_SOURCES = \
-       $(BUILT_SOURCES)                        \
-       gedit-file-bookmarks-store.c            \
-       gedit-file-browser-store.c              \
-       gedit-file-browser-view.c               \
-       gedit-file-browser-widget.c             \
-       gedit-file-browser-utils.c              \
-       gedit-file-browser-plugin.c             \
-       gedit-file-browser-messages.c           \
-       messages/gedit-file-browser-message-activation.c \
-       messages/gedit-file-browser-message-add-context-item.c \
-       messages/gedit-file-browser-message-add-filter.c \
-       messages/gedit-file-browser-message-get-root.c \
-       messages/gedit-file-browser-message-get-view.c \
-       messages/gedit-file-browser-message-id.c \
-       messages/gedit-file-browser-message-id-location.c \
-       messages/gedit-file-browser-message-set-emblem.c \
-       messages/gedit-file-browser-message-set-markup.c \
-       messages/gedit-file-browser-message-set-root.c \
-       $(NOINST_H_FILES)
-
-libfilebrowser_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
-libfilebrowser_la_LIBADD = $(GEDIT_LIBS)
-
-plugin_in_files = filebrowser.plugin.desktop.in
-
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
-
-gedit-file-browser-resources.c: gedit-file-browser.gresource.xml $(shell $(GLIB_COMPILE_RESOURCES) 
--sourcedir=$(srcdir) --generate-dependencies $(srcdir)/gedit-file-browser.gresource.xml)
-       $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate-source 
$(srcdir)/gedit-file-browser.gresource.xml
-
-gedit-file-browser-enum-types.h: gedit-file-browser-enum-types.h.template $(NOINST_H_FILES) $(GLIB_MKENUMS)
-       (cd $(srcdir) && $(GLIB_MKENUMS) --template gedit-file-browser-enum-types.h.template 
$(NOINST_H_FILES)) > $@
-
-gedit-file-browser-enum-types.c: gedit-file-browser-enum-types.c.template 
gedit-file-browser-enum-register.c.template $(NOINST_H_FILES) $(GLIB_MKENUMS)
-       $(AM_V_GEN) (cd $(srcdir) && \
-       $(GLIB_MKENUMS) --template gedit-file-browser-enum-types.c.template $(NOINST_H_FILES) && \
-       $(GLIB_MKENUMS) --template gedit-file-browser-enum-register.c.template $(NOINST_H_FILES)) > $@
-
-gedit-file-browser-marshal.h: gedit-file-browser-marshal.list $(GLIB_GENMARSHAL)
+plugins_filebrowser_BUILTSOURCES =                             \
+       plugins/filebrowser/gedit-file-browser-enum-types.h     \
+       plugins/filebrowser/gedit-file-browser-enum-types.c     \
+       plugins/filebrowser/gedit-file-browser-marshal.h        \
+       plugins/filebrowser/gedit-file-browser-marshal.c
+
+plugins_filebrowser_messages_NOINST_H_FILES =                                          \
+       plugins/filebrowser/messages/gedit-file-browser-message-activation.h            \
+       plugins/filebrowser/messages/gedit-file-browser-message-add-context-item.h      \
+       plugins/filebrowser/messages/gedit-file-browser-message-add-filter.h            \
+       plugins/filebrowser/messages/gedit-file-browser-message-get-root.h              \
+       plugins/filebrowser/messages/gedit-file-browser-message-get-view.h              \
+       plugins/filebrowser/messages/gedit-file-browser-message-id.h                    \
+       plugins/filebrowser/messages/gedit-file-browser-message-id-location.h           \
+       plugins/filebrowser/messages/gedit-file-browser-message-set-emblem.h            \
+       plugins/filebrowser/messages/gedit-file-browser-message-set-markup.h            \
+       plugins/filebrowser/messages/gedit-file-browser-message-set-root.h              \
+       plugins/filebrowser/messages/messages.h
+
+plugins_filebrowser_libfilebrowser_la_NOINST_H_FILES =         \
+       plugins/filebrowser/gedit-file-bookmarks-store.h        \
+       plugins/filebrowser/gedit-file-browser-error.h          \
+       plugins/filebrowser/gedit-file-browser-store.h          \
+       plugins/filebrowser/gedit-file-browser-view.h           \
+       plugins/filebrowser/gedit-file-browser-widget.h         \
+       plugins/filebrowser/gedit-file-browser-utils.h          \
+       plugins/filebrowser/gedit-file-browser-plugin.h         \
+       plugins/filebrowser/gedit-file-browser-messages.h       \
+       $(plugins_filebrowser_messages_NOINST_H_FILES)
+
+plugins_filebrowser_messages_sources =                                                 \
+       plugins/filebrowser/messages/gedit-file-browser-message-activation.c            \
+       plugins/filebrowser/messages/gedit-file-browser-message-add-context-item.c      \
+       plugins/filebrowser/messages/gedit-file-browser-message-add-filter.c            \
+       plugins/filebrowser/messages/gedit-file-browser-message-get-root.c              \
+       plugins/filebrowser/messages/gedit-file-browser-message-get-view.c              \
+       plugins/filebrowser/messages/gedit-file-browser-message-id.c                    \
+       plugins/filebrowser/messages/gedit-file-browser-message-id-location.c           \
+       plugins/filebrowser/messages/gedit-file-browser-message-set-emblem.c            \
+       plugins/filebrowser/messages/gedit-file-browser-message-set-markup.c            \
+       plugins/filebrowser/messages/gedit-file-browser-message-set-root.c
+
+plugins_filebrowser_libfilebrowser_la_SOURCES =                        \
+       $(plugins_filebrowser_BUILTSOURCES)                     \
+       plugins/filebrowser/gedit-file-bookmarks-store.c        \
+       plugins/filebrowser/gedit-file-browser-store.c          \
+       plugins/filebrowser/gedit-file-browser-view.c           \
+       plugins/filebrowser/gedit-file-browser-widget.c         \
+       plugins/filebrowser/gedit-file-browser-utils.c          \
+       plugins/filebrowser/gedit-file-browser-plugin.c         \
+       plugins/filebrowser/gedit-file-browser-messages.c       \
+       $(plugins_filebrowser_messages_sources)                 \
+       $(plugins_filebrowser_libfilebrowser_la_NOINST_H_FILES)
+
+plugin_in_files += plugins/filebrowser/filebrowser.plugin.desktop.in
+
+filebrowser_resources_deps = $(call GRESDEPS,plugins/filebrowser/gedit-file-browser.gresource.xml)
+plugins/filebrowser/gedit-file-browser-resources.c: $(filebrowser_resources_deps)
+       $(GRESGEN)
+
+plugins/filebrowser/gedit-file-browser-enum-types.h: 
plugins/filebrowser/gedit-file-browser-enum-types.h.template 
$(plugins_filebrowser_libfilebrowser_la_NOINST_H_FILES) $(GLIB_MKENUMS)
+       $(AM_V_GEN) $(GLIB_MKENUMS)                                             \
+       --template plugins/filebrowser/gedit-file-browser-enum-types.h.template \
+       $(plugins_filebrowser_libfilebrowser_la_NOINST_H_FILES) > $@
+
+plugins/filebrowser/gedit-file-browser-enum-types.c: 
plugins/filebrowser/gedit-file-browser-enum-types.c.template 
plugins/filebrowser/gedit-file-browser-enum-register.c.template 
$(plugins_filebrowser_libfilebrowser_la_NOINST_H_FILES) $(GLIB_MKENUMS)
+       $(AM_V_GEN)                                                                     \
+       ($(GLIB_MKENUMS)                                                                \
+               --template plugins/filebrowser/gedit-file-browser-enum-types.c.template \
+               $(plugins_filebrowser_libfilebrowser_la_NOINST_H_FILES) &&              \
+        $(GLIB_MKENUMS)                                                                \
+               --template plugins/filebrowser/gedit-file-browser-enum-register.c.template \
+               $(plugins_filebrowser_libfilebrowser_la_NOINST_H_FILES)) > $@
+
+plugins/filebrowser/gedit-file-browser-marshal.h: plugins/filebrowser/gedit-file-browser-marshal.list 
$(GLIB_GENMARSHAL)
        $(AM_V_GEN) $(GLIB_GENMARSHAL) $< --header --prefix=gedit_file_browser_marshal > $@
 
-gedit-file-browser-marshal.c: gedit-file-browser-marshal.list $(GLIB_GENMARSHAL)
+plugins/filebrowser/gedit-file-browser-marshal.c: plugins/filebrowser/gedit-file-browser-marshal.list 
$(GLIB_GENMARSHAL)
        $(AM_V_GEN) echo "#include \"gedit-file-browser-marshal.h\"" > $@ && \
        $(GLIB_GENMARSHAL) $< --body --prefix=gedit_file_browser_marshal >> $@
 
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
+plugin_gsettings_SCHEMAS += plugins/filebrowser/org.gnome.gedit.plugins.filebrowser.gschema.xml
+gsettings_ENUMS += plugins/filebrowser/org.gnome.gedit.plugins.filebrowser.enums.xml
 
-gsettings_ENUM_NAMESPACE = org.gnome.gedit.plugins.filebrowser
-gsettings_ENUM_FILES = $(top_srcdir)/plugins/filebrowser/*.h
-gsettings_SCHEMAS = org.gnome.gedit.plugins.filebrowser.gschema.xml
+plugins/filebrowser/org.gnome.gedit.plugins.filebrowser.enums.xml: 
$(plugins_filebrowser_libfilebrowser_la_NOINST_H_FILES)
+       $(GSETTINGS_ENUMS_GEN)
 
- INTLTOOL_XML_NOMERGE_RULE@
+plugins-filebrowser-update-messages:
+       $(top_srcdir)/tools/generate-message.py --output-directory $(builddir)/plugins/filebrowser/messages/  
--gpl --program gedit $(srcdir)/plugins/filebrowser/messages.xml
 
- GSETTINGS_RULES@
-
-update-messages:
-       $(top_srcdir)/tools/generate-message.py --output-directory $(builddir)/messages/  --gpl --program 
gedit $(srcdir)/messages.xml
-
-EXTRA_DIST = \
-       $(plugin_in_files)                              \
-       gedit-file-browser.gresource.xml                \
-       gedit-file-browser-enum-types.h.template        \
-       gedit-file-browser-enum-types.c.template        \
-       gedit-file-browser-enum-register.c.template     \
-       gedit-file-browser-marshal.list                 \
-       org.gnome.gedit.plugins.filebrowser.gschema.xml.in.in \
-       gedit-file-browser-menus.ui                     \
-       gedit-file-browser-widget.ui
-
-CLEANFILES = \
-       $(plugin_DATA)          \
-       $(BUILT_SOURCES)        \
-       $(gsettings_SCHEMAS)
-
-DISTCLEANFILES = \
-       $(plugin_DATA)          \
-       $(BUILT_SOURCES)        \
-       $(gsettings_SCHEMAS)
-
-MAINTAINERCLEANFILES = $(gsettings_SCHEMAS:.xml=.valid)
-
--include $(top_srcdir)/git.mk
+BUILT_SOURCES += $(plugins_filebrowser_BUILTSOURCES)
+EXTRA_DIST +=                                                          \
+       $(filebrowser_resources_deps)                                   \
+       plugins/filebrowser/gedit-file-browser-enum-types.h.template    \
+       plugins/filebrowser/gedit-file-browser-enum-types.c.template    \
+       plugins/filebrowser/gedit-file-browser-enum-register.c.template \
+       plugins/filebrowser/gedit-file-browser-marshal.list
diff --git a/plugins/modelines/Makefile.am b/plugins/modelines/Makefile.am
index 6698749..f0c30f7 100644
--- a/plugins/modelines/Makefile.am
+++ b/plugins/modelines/Makefile.am
@@ -1,36 +1,20 @@
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+plugin_LTLIBRARIES += plugins/modelines/libmodelines.la
 
-AM_CPPFLAGS = \
-       -I$(top_srcdir)                                 \
+plugins_modelines_libmodelines_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
+plugins_modelines_libmodelines_la_LIBADD = $(GEDIT_LIBS)
+plugins_modelines_libmodelines_la_CPPFLAGS = -I$(top_srcdir)
+plugins_modelines_libmodelines_la_CFLAGS =             \
        $(GEDIT_CFLAGS)                                 \
        $(WARN_CFLAGS)                                  \
        $(DISABLE_DEPRECATED_CFLAGS)
 
-modelinesdir = $(GEDIT_PLUGINS_DATA_DIR)/modelines
-modelines_DATA = \
-       language-mappings
+plugins_modelines_libmodelines_la_SOURCES =            \
+       plugins/modelines/gedit-modeline-plugin.h       \
+       plugins/modelines/gedit-modeline-plugin.c       \
+       plugins/modelines/modeline-parser.h             \
+       plugins/modelines/modeline-parser.c
 
-plugin_LTLIBRARIES = libmodelines.la
+plugins_modelinesdir = $(GEDIT_PLUGINS_DATA_DIR)/modelines
+dist_plugins_modelines_DATA = plugins/modelines/language-mappings
 
-libmodelines_la_SOURCES = \
-       gedit-modeline-plugin.h                         \
-       gedit-modeline-plugin.c                         \
-       modeline-parser.h                               \
-       modeline-parser.c
-
-libmodelines_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
-libmodelines_la_LIBADD  = $(GEDIT_LIBS)
-
-plugin_in_files = modelines.plugin.desktop.in
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
-
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
-
-EXTRA_DIST = \
-       $(plugin_in_files)                              \
-       $(modelines_DATA)
-
-CLEANFILES = $(plugin_DATA)
-DISTCLEANFILES = $(plugin_DATA)
-
--include $(top_srcdir)/git.mk
+plugin_in_files += plugins/modelines/modelines.plugin.desktop.in
diff --git a/plugins/pythonconsole/Makefile.am b/plugins/pythonconsole/Makefile.am
index 650c298..63c81e9 100644
--- a/plugins/pythonconsole/Makefile.am
+++ b/plugins/pythonconsole/Makefile.am
@@ -1,24 +1,24 @@
-# Python Console Plugin
-SUBDIRS = pythonconsole
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+if ENABLE_PYTHON
 
-plugin_in_files = pythonconsole.plugin.desktop.in
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
+plugins_pythonconsoledir = $(plugindir)/pythonconsole
+plugins_pythonconsole_PYTHON =                         \
+       plugins/pythonconsole/pythonconsole/__init__.py \
+       plugins/pythonconsole/pythonconsole/console.py  \
+       plugins/pythonconsole/pythonconsole/config.py
 
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
+plugins_pythonconsole_uidir = $(GEDIT_PLUGINS_DATA_DIR)/pythonconsole/ui
+dist_plugins_pythonconsole_ui_DATA = plugins/pythonconsole/pythonconsole/config.ui
 
-gsettings_SCHEMAS = org.gnome.gedit.plugins.pythonconsole.gschema.xml
+plugin_gsettings_SCHEMAS +=                                                    \
+       plugins/pythonconsole/org.gnome.gedit.plugins.pythonconsole.gschema.xml
 
- INTLTOOL_XML_NOMERGE_RULE@
- GSETTINGS_RULES@
+plugin_in_files += plugins/pythonconsole/pythonconsole.plugin.desktop.in
 
-EXTRA_DIST =                   \
-       $(plugin_in_files)      \
-       org.gnome.gedit.plugins.pythonconsole.gschema.xml.in.in
+else
 
-CLEANFILES = $(plugin_DATA) $(gsettings_SCHEMAS)
-DISTCLEANFILES = $(plugin_DATA) $(gsettings_SCHEMAS)
+dist_plugin_gsettings_SCHEMAS +=                                                       \
+       plugins/pythonconsole/org.gnome.gedit.plugins.pythonconsole.gschema.xml
 
-MAINTAINERCLEANFILES = $(gsettings_SCHEMAS:.xml=.valid)
+dist_plugin_in_files += plugins/pythonconsole/pythonconsole.plugin.desktop.in
 
--include $(top_srcdir)/git.mk
+endif
diff --git a/plugins/quickopen/Makefile.am b/plugins/quickopen/Makefile.am
index bda47ba..f5f06dd 100644
--- a/plugins/quickopen/Makefile.am
+++ b/plugins/quickopen/Makefile.am
@@ -1,15 +1,15 @@
-# Quick Open Plugin
-SUBDIRS = quickopen
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+if ENABLE_PYTHON
 
-plugin_in_files = quickopen.plugin.desktop.in
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
+plugins_quickopendir = $(plugindir)/quickopen
+plugins_quickopen_PYTHON =                             \
+       plugins/quickopen/quickopen/__init__.py         \
+       plugins/quickopen/quickopen/popup.py            \
+       plugins/quickopen/quickopen/virtualdirs.py
 
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
+plugin_in_files += plugins/quickopen/quickopen.plugin.desktop.in
 
-EXTRA_DIST = $(plugin_in_files)
+else
 
-CLEANFILES = $(plugin_DATA)
-DISTCLEANFILES = $(plugin_DATA)
+dist_plugin_in_files += plugins/quickopen/quickopen.plugin.desktop.in
 
--include $(top_srcdir)/git.mk
+endif
diff --git a/plugins/snippets/Makefile.am b/plugins/snippets/Makefile.am
index fbcd591..f4f5d0c 100644
--- a/plugins/snippets/Makefile.am
+++ b/plugins/snippets/Makefile.am
@@ -1,15 +1,63 @@
-# Python snippets plugin
-SUBDIRS = snippets data
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+if ENABLE_PYTHON
 
-plugin_in_files = snippets.plugin.desktop.in
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
+plugins_snippetsdir = $(plugindir)/snippets
+plugins_snippets_PYTHON =                              \
+       plugins/snippets/snippets/__init__.py           \
+       plugins/snippets/snippets/appactivatable.py     \
+       plugins/snippets/snippets/windowactivatable.py  \
+       plugins/snippets/snippets/document.py           \
+       plugins/snippets/snippets/library.py            \
+       plugins/snippets/snippets/snippet.py            \
+       plugins/snippets/snippets/parser.py             \
+       plugins/snippets/snippets/placeholder.py        \
+       plugins/snippets/snippets/manager.py            \
+       plugins/snippets/snippets/helper.py             \
+       plugins/snippets/snippets/singleton.py          \
+       plugins/snippets/snippets/shareddata.py         \
+       plugins/snippets/snippets/substitutionparser.py \
+       plugins/snippets/snippets/importer.py           \
+       plugins/snippets/snippets/exporter.py           \
+       plugins/snippets/snippets/languagemanager.py    \
+       plugins/snippets/snippets/completion.py         \
+       plugins/snippets/snippets/signals.py
 
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
+plugins_snippets_uidir = $(GEDIT_PLUGINS_DATA_DIR)/snippets/ui
+dist_plugins_snippets_ui_DATA = plugins/snippets/snippets/snippets.ui
 
-EXTRA_DIST = $(plugin_in_files)
+plugins_snippets_snippetsdir = $(GEDIT_PLUGINS_DATA_DIR)/snippets
+dist_plugins_snippets_snippets_DATA =          \
+       plugins/snippets/data/chdr.xml          \
+       plugins/snippets/data/cpp.xml           \
+       plugins/snippets/data/css.xml           \
+       plugins/snippets/data/c.xml             \
+       plugins/snippets/data/docbook.xml       \
+       plugins/snippets/data/fortran.xml       \
+       plugins/snippets/data/global.xml        \
+       plugins/snippets/data/haskell.xml       \
+       plugins/snippets/data/html.xml          \
+       plugins/snippets/data/idl.xml           \
+       plugins/snippets/data/javascript.xml    \
+       plugins/snippets/data/java.xml          \
+       plugins/snippets/data/latex.xml         \
+       plugins/snippets/data/mallard.xml       \
+       plugins/snippets/data/markdown.xml      \
+       plugins/snippets/data/perl.xml          \
+       plugins/snippets/data/php.xml           \
+       plugins/snippets/data/python.xml        \
+       plugins/snippets/data/ruby.xml          \
+       plugins/snippets/data/sh.xml            \
+       plugins/snippets/data/snippets.xml      \
+       plugins/snippets/data/tcl.xml           \
+       plugins/snippets/data/xml.xml           \
+       plugins/snippets/data/xslt.xml
 
-CLEANFILES = $(plugin_DATA)
-DISTCLEANFILES = $(plugin_DATA)
+plugins_snippets_langdir = $(GEDIT_PLUGINS_DATA_DIR)/snippets/lang
+dist_plugins_snippets_lang_DATA = plugins/snippets/data/lang/snippets.lang
 
--include $(top_srcdir)/git.mk
+plugin_in_files += plugins/snippets/snippets.plugin.desktop.in
+
+else
+
+dist_plugin_in_files += plugins/snippets/snippets.plugin.desktop.in
+
+endif
diff --git a/plugins/sort/Makefile.am b/plugins/sort/Makefile.am
index 611323b..08eb2d9 100644
--- a/plugins/sort/Makefile.am
+++ b/plugins/sort/Makefile.am
@@ -1,39 +1,24 @@
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+plugin_LTLIBRARIES += plugins/sort/libsort.la
 
-AM_CPPFLAGS = \
-       -I$(top_srcdir)                                 \
+plugins_sort_libsort_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
+plugins_sort_libsort_la_LIBADD = $(GEDIT_LIBS)
+plugins_sort_libsort_la_CPPFLAGS = -I$(top_srcdir)
+plugins_sort_libsort_la_CFLAGS =                       \
        $(GEDIT_CFLAGS)                                 \
        $(WARN_CFLAGS)                                  \
-       $(DISABLE_DEPRECATED_CFLAGS)    
+       $(DISABLE_DEPRECATED_CFLAGS)
 
-plugin_LTLIBRARIES = libsort.la
+sort_resource_deps = $(call GRESDEPS,plugins/sort/gedit-sort.gresource.xml)
+plugins/sort/gedit-sort-resources.c: $(sort_resource_deps)
+       $(GRESGEN)
 
-BUILT_SOURCES = \
-       gedit-sort-resources.c
+BUILT_SOURCES += plugins/sort/gedit-sort-resources.c
 
-libsort_la_SOURCES = \
-       gedit-sort-plugin.h     \
-       gedit-sort-plugin.c     \
-       $(BUILT_SOURCES)
+plugins_sort_libsort_la_SOURCES =              \
+       plugins/sort/gedit-sort-plugin.h        \
+       plugins/sort/gedit-sort-plugin.c        \
+       plugins/sort/gedit-sort-resources.c
 
-libsort_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
-libsort_la_LIBADD  = $(GEDIT_LIBS)
+EXTRA_DIST += $(sort_resource_deps)
 
-gedit-sort-resources.c: gedit-sort.gresource.xml $(shell $(GLIB_COMPILE_RESOURCES) --sourcedir=$(srcdir) 
--generate-dependencies $(srcdir)/gedit-sort.gresource.xml)
-       $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate-source 
$(srcdir)/gedit-sort.gresource.xml
-
-plugin_in_files = sort.plugin.desktop.in
-
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
-
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
-
-EXTRA_DIST = \
-       $(plugin_in_files) \
-       gedit-sort-plugin.ui \
-       gedit-sort.gresource.xml
-
-CLEANFILES = $(BUILT_SOURCES) $(plugin_DATA)
-DISTCLEANFILES = $(BUILT_SOURCES) $(plugin_DATA)
-
--include $(top_srcdir)/git.mk
+plugin_in_files += plugins/sort/sort.plugin.desktop.in
diff --git a/plugins/spell/Makefile.am b/plugins/spell/Makefile.am
index 8e07ebf..3458cf6 100644
--- a/plugins/spell/Makefile.am
+++ b/plugins/spell/Makefile.am
@@ -1,83 +1,78 @@
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+if ENABLE_ENCHANT
 
-AM_CPPFLAGS =                                                  \
-       -I$(top_srcdir)                                         \
+plugin_LTLIBRARIES += plugins/spell/libspell.la
+
+plugins_spell_libspell_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS) 
+plugins_spell_libspell_la_LIBADD  = $(GEDIT_LIBS) $(ENCHANT_LIBS)
+plugins_spell_libspell_la_CPPFLAGS = -I$(top_srcdir)
+plugins_spell_libspell_la_CFLAGS =                             \
        $(GEDIT_CFLAGS)                                         \
        $(ENCHANT_CFLAGS)                                       \
        $(WARN_CFLAGS)                                          \
-       $(DISABLE_DEPRECATED_CFLAGS)                            \
-       $(GTK_MAC_CFLAGS)
-
-BUILT_SOURCES =                                        \
-       gedit-spell-marshal.c                           \
-       gedit-spell-marshal.h                           \
-       gedit-spell-resources.c
-
-plugin_LTLIBRARIES = libspell.la
-
-libspell_la_SOURCES = \
-       gedit-spell-plugin.c                            \
-       gedit-spell-plugin.h                            \
-       gedit-spell-app-activatable.c                   \
-       gedit-spell-app-activatable.h                   \
-       gedit-spell-checker.c                           \
-       gedit-spell-checker.h                           \
-       gedit-spell-checker-dialog.c                    \
-       gedit-spell-checker-dialog.h                    \
-       gedit-spell-checker-language.c                  \
-       gedit-spell-checker-language.h                  \
-       gedit-spell-language-dialog.c                   \
-       gedit-spell-language-dialog.h                   \
-       gedit-automatic-spell-checker.c                 \
-       gedit-automatic-spell-checker.h                 \
-       gedit-spell-utils.c                             \
-       gedit-spell-utils.h                             \
-       $(BUILT_SOURCES)                        
-
-libspell_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS) 
-libspell_la_LIBADD  = $(GEDIT_LIBS) $(ENCHANT_LIBS)
+       $(DISABLE_DEPRECATED_CFLAGS)
+
+plugins_spell_built_sources =                          \
+       plugins/spell/gedit-spell-marshal.c             \
+       plugins/spell/gedit-spell-marshal.h             \
+       plugins/spell/gedit-spell-resources.c
+
+plugins_spell_libspell_la_SOURCES =                    \
+       plugins/spell/gedit-spell-plugin.c              \
+       plugins/spell/gedit-spell-plugin.h              \
+       plugins/spell/gedit-spell-app-activatable.c     \
+       plugins/spell/gedit-spell-app-activatable.h     \
+       plugins/spell/gedit-spell-checker.c             \
+       plugins/spell/gedit-spell-checker.h             \
+       plugins/spell/gedit-spell-checker-dialog.c      \
+       plugins/spell/gedit-spell-checker-dialog.h      \
+       plugins/spell/gedit-spell-checker-language.c    \
+       plugins/spell/gedit-spell-checker-language.h    \
+       plugins/spell/gedit-spell-language-dialog.c     \
+       plugins/spell/gedit-spell-language-dialog.h     \
+       plugins/spell/gedit-automatic-spell-checker.c   \
+       plugins/spell/gedit-automatic-spell-checker.h   \
+       plugins/spell/gedit-spell-utils.c               \
+       plugins/spell/gedit-spell-utils.h               \
+       $(plugins_spell_built_sources)
 
 # Mac OSX convenience library and ldflags
 if OS_OSX
-noinst_LTLIBRARIES = libosx.la
+noinst_LTLIBRARIES += plugins/spell/libosx.la
 
-libosx_la_LDFLAGS = -framework Cocoa
-libosx_la_LIBADD = -lobjc
-libosx_la_CFLAGS = -xobjective-c
+plugins_spell_libosx_la_LDFLAGS = -framework Cocoa
+plugins_spell_libosx_la_LIBADD = -lobjc
+plugins_spell_libosx_la_CFLAGS = -xobjective-c
 
-libosx_la_SOURCES =            \
-       gedit-spell-osx.c               \
-       gedit-spell-osx.h
+plugins_spell_libosx_la_SOURCES =              \
+       plugins/spell/gedit-spell-osx.c         \
+       plugins/spell/gedit-spell-osx.h
 
-libspell_la_LIBADD += libosx.la  $(GTK_MAC_LIBS)
+plugins_spell_libspell_la_LIBADD += plugins/spell/libosx.la
+plugins_spell_libspell_la_LDFLAGS += $(GTK_MAC_LIBS)
+plugins_spell_libspell_la_CFLAGS += $(GTK_MAC_CFLAGS)
 endif
 
-gedit-spell-marshal.h: gedit-spell-marshal.list $(GLIB_GENMARSHAL)
+plugins/spell/gedit-spell-marshal.h: plugins/spell/gedit-spell-marshal.list $(GLIB_GENMARSHAL)
        $(AM_V_GEN) $(GLIB_GENMARSHAL) $< --header --prefix=gedit_marshal > $@
 
-gedit-spell-marshal.c: gedit-spell-marshal.list $(GLIB_GENMARSHAL)
+plugins/spell/gedit-spell-marshal.c: plugins/spell/gedit-spell-marshal.list $(GLIB_GENMARSHAL)
        $(AM_V_GEN) echo "#include \"gedit-spell-marshal.h\"" > $@ && \
        $(GLIB_GENMARSHAL) $< --body --prefix=gedit_marshal >> $@
 
-gedit-spell-resources.c: gedit-spell.gresource.xml $(shell $(GLIB_COMPILE_RESOURCES) --sourcedir=$(srcdir) 
--generate-dependencies $(srcdir)/gedit-spell.gresource.xml)
-       $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate-source 
$(srcdir)/gedit-spell.gresource.xml
-
-plugin_in_files = spell.plugin.desktop.in
+spell_resource_deps = $(call GRESDEPS,plugins/spell/gedit-spell.gresource.xml)
+plugins/spell/gedit-spell-resources.c: $(spell_resource_deps)
+       $(GRESGEN)
 
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
+plugin_in_files += plugins/spell/spell.plugin.desktop.in
 
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
+BUILT_SOURCES += $(plugins_spell_built_sources)
 
-EXTRA_DIST =                                   \
-       $(plugin_in_files)                      \
-       gedit-spell-marshal.list                \
-       gedit-spell.gresource.xml               \
-       spell-checker.ui                        \
-       languages-dialog.ui
+EXTRA_DIST +=                                  \
+       plugins/spell/gedit-spell-marshal.list  \
+       $(spell_resource_deps)
 
-CLEANFILES = $(BUILT_SOURCES) $(plugin_DATA)
+else
 
-dist-hook:
-       cd $(distdir); rm -f $(BUILT_SOURCES)
+dist_plugin_in_files += plugins/spell/spell.plugin.desktop.in
 
--include $(top_srcdir)/git.mk
+endif
diff --git a/plugins/time/Makefile.am b/plugins/time/Makefile.am
index 39bd012..87e7cf4 100644
--- a/plugins/time/Makefile.am
+++ b/plugins/time/Makefile.am
@@ -1,50 +1,30 @@
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+plugin_LTLIBRARIES += plugins/time/libtime.la
 
-AM_CPPFLAGS = \
-       -I$(top_srcdir)                                 \
+plugins_time_libtime_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
+plugins_time_libtime_la_LIBADD = $(GEDIT_LIBS)
+plugins_time_libtime_la_CPPFLAGS = -I$(top_srcdir)
+plugins_time_libtime_la_CFLAGS =                       \
        $(GEDIT_CFLAGS)                                 \
        $(WARN_CFLAGS)                                  \
-       $(DISABLE_DEPRECATED_CFLAGS)                    
+       $(DISABLE_DEPRECATED_CFLAGS)
 
-plugin_LTLIBRARIES = libtime.la
+time_resource_deps = $(call GRESDEPS,plugins/time/gedit-time.gresource.xml)
+plugins/time/gedit-time-resources.c: $(time_resource_deps)
+       $(GRESGEN)
 
-BUILT_SOURCES = \
-       gedit-time-resources.c
+BUILT_SOURCES += plugins/time/gedit-time-resources.c
 
-libtime_la_SOURCES = \
-       gedit-time-plugin.h     \
-       gedit-time-plugin.c     \
-       $(BUILT_SOURCES)
+plugins_time_libtime_la_SOURCES =              \
+       plugins/time/gedit-time-plugin.h        \
+       plugins/time/gedit-time-plugin.c        \
+       plugins/time/gedit-time-resources.c
 
-libtime_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
-libtime_la_LIBADD  = $(GEDIT_LIBS)
+EXTRA_DIST += $(time_resource_deps)
 
-gedit-time-resources.c: gedit-time.gresource.xml $(shell $(GLIB_COMPILE_RESOURCES) --generate-dependencies 
$(srcdir)/gedit-time.gresource.xml)
-       $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate-source 
$(srcdir)/gedit-time.gresource.xml
+plugin_gsettings_SCHEMAS += plugins/time/org.gnome.gedit.plugins.time.gschema.xml
+gsettings_ENUMS += plugins/time/org.gnome.gedit.plugins.time.enums.xml
 
-plugin_in_files = time.plugin.desktop.in
+plugins/time/org.gnome.gedit.plugins.time.enums.xml: plugins/time/gedit-time-plugin.c
+       $(GSETTINGS_ENUMS_GEN)
 
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
-
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
-
-gsettings_ENUM_NAMESPACE = org.gnome.gedit.plugins.time
-gsettings_ENUM_FILES = $(top_srcdir)/plugins/time/gedit-time-plugin.c
-gsettings_SCHEMAS = org.gnome.gedit.plugins.time.gschema.xml
-
- INTLTOOL_XML_NOMERGE_RULE@
- GSETTINGS_RULES@
-
-EXTRA_DIST =                                   \
-       $(plugin_in_files)                      \
-       org.gnome.gedit.plugins.time.gschema.xml.in.in \
-       gedit-time.gresource.xml                \
-       gedit-time-dialog.ui                    \
-       gedit-time-setup-dialog.ui
-
-CLEANFILES = $(plugin_DATA) $(gsettings_SCHEMAS) $(BUILT_SOURCES)
-DISTCLEANFILES = $(plugin_DATA) $(gsettings_SCHEMAS) $(BUILT_SOURCES)
-
-MAINTAINERCLEANFILES = $(gsettings_SCHEMAS:.xml=.valid)
-
--include $(top_srcdir)/git.mk
+plugin_in_files += plugins/time/time.plugin.desktop.in
diff --git a/plugins/zeitgeist/Makefile.am b/plugins/zeitgeist/Makefile.am
index fe5f4d0..ffb0c72 100644
--- a/plugins/zeitgeist/Makefile.am
+++ b/plugins/zeitgeist/Makefile.am
@@ -1,30 +1,26 @@
-plugindir = $(GEDIT_PLUGINS_LIBS_DIR)
+if ENABLE_ZEITGEIST
 
-AM_CPPFLAGS = \
-       -I$(top_srcdir)                                 \
+plugin_LTLIBRARIES += plugins/zeitgeist/libzeitgeist.la
+
+plugins_zeitgeist_libzeitgeist_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
+plugins_zeitgeist_libzeitgeist_la_LIBADD = $(GEDIT_LIBS) $(ZEITGEIST_LIBS)
+plugins_zeitgeist_libzeitgeist_la_CPPFLAGS = -I$(top_srcdir)
+plugins_zeitgeist_libzeitgeist_la_CFLAGS =                     \
        $(GEDIT_CFLAGS)                                 \
        $(ZEITGEIST_CFLAGS)                             \
        $(WARN_CFLAGS)                                  \
        $(DISABLE_DEPRECATED_CFLAGS)
 
-plugin_LTLIBRARIES = libzeitgeistplugin.la
-
-libzeitgeistplugin_la_SOURCES = \
-       gedit-zeitgeist-plugin.h        \
-       gedit-zeitgeist-plugin.c
-
-libzeitgeistplugin_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
-libzeitgeistplugin_la_LIBADD = $(GEDIT_LIBS) $(ZEITGEIST_LIBS)
-
-plugin_in_files = zeitgeist.plugin.desktop.in
+plugins_zeitgeist_libzeitgeist_la_SOURCES =            \
+       plugins/zeitgeist/gedit-zeitgeist-plugin.h      \
+       plugins/zeitgeist/gedit-zeitgeist-plugin.c
 
-%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
+EXTRA_DIST += $(zeitgeist_resource_deps)
 
-plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
+plugin_in_files += plugins/zeitgeist/zeitgeist.plugin.desktop.in
 
-EXTRA_DIST = $(plugin_in_files)
+else
 
-CLEANFILES = $(plugin_DATA)
-DISTCLEANFILES = $(plugin_DATA)
+dist_plugin_in_files += plugins/zeitgeist/zeitgeist.plugin.desktop.in
 
--include $(top_srcdir)/git.mk
+endif



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]