[evolution/kill-bonobo] Use -no-undefined on Linux too



commit f4cf9af33ccde3142a3011e8b2dbcfb4cbc9ae81
Author: Milan Crha <mcrha redhat com>
Date:   Wed May 20 16:50:00 2009 +0200

    Use -no-undefined on Linux too
    
    There still left two things opened, search for KILL-BONOBO to find them.
    One is in calendar's Makefile.am, one in composer.
---
 INSTALL                                            |  106 +++++++++--------
 Makefile.am                                        |    1 +
 a11y/Makefile.am                                   |   14 --
 a11y/addressbook/Makefile.am                       |   35 ------
 a11y/calendar/Makefile.am                          |   56 ---------
 a11y/e-table/Makefile.am                           |   44 -------
 a11y/e-text/Makefile.am                            |   15 ---
 a11y/widgets/Makefile.am                           |   34 -----
 addressbook/gui/component/Makefile.am              |    2 -
 addressbook/gui/contact-editor/Makefile.am         |    5 -
 addressbook/gui/contact-list-editor/Makefile.am    |    5 -
 addressbook/gui/widgets/Makefile.am                |   15 ++-
 .../gui/widgets/a11y}/ea-addressbook-view.c        |    0
 .../gui/widgets/a11y}/ea-addressbook-view.h        |    0
 .../gui/widgets/a11y}/ea-addressbook.c             |    2 +-
 .../gui/widgets/a11y}/ea-addressbook.h             |    0
 .../gui/widgets/a11y}/ea-minicard-view.c           |    0
 .../gui/widgets/a11y}/ea-minicard-view.h           |    0
 .../gui/widgets/a11y}/ea-minicard.c                |    0
 .../gui/widgets/a11y}/ea-minicard.h                |    0
 .../gui/widgets/e-addressbook-reflow-adapter.h     |    2 +-
 addressbook/gui/widgets/e-addressbook-view.c       |    2 +-
 addressbook/gui/widgets/e-minicard-view.c          |    2 +-
 addressbook/gui/widgets/e-minicard-view.h          |    2 +-
 addressbook/gui/widgets/e-minicard.c               |    2 +-
 addressbook/printing/Makefile.am                   |    6 -
 calendar/gui/Makefile.am                           |   29 ++++-
 .../gui/a11y}/ea-cal-view-event.c                  |    0
 .../gui/a11y}/ea-cal-view-event.h                  |    0
 {a11y/calendar => calendar/gui/a11y}/ea-cal-view.c |    0
 {a11y/calendar => calendar/gui/a11y}/ea-cal-view.h |    0
 .../gui/a11y}/ea-calendar-helpers.c                |    0
 .../gui/a11y}/ea-calendar-helpers.h                |    0
 {a11y/calendar => calendar/gui/a11y}/ea-calendar.c |    2 +-
 {a11y/calendar => calendar/gui/a11y}/ea-calendar.h |    0
 .../gui/a11y}/ea-day-view-cell.c                   |    2 +-
 .../gui/a11y}/ea-day-view-cell.h                   |    0
 .../gui/a11y}/ea-day-view-main-item.c              |    0
 .../gui/a11y}/ea-day-view-main-item.h              |    0
 {a11y/calendar => calendar/gui/a11y}/ea-day-view.c |    0
 {a11y/calendar => calendar/gui/a11y}/ea-day-view.h |    0
 .../gui/a11y}/ea-gnome-calendar.c                  |    0
 .../gui/a11y}/ea-gnome-calendar.h                  |    0
 .../gui/a11y}/ea-jump-button.c                     |    0
 .../gui/a11y}/ea-jump-button.h                     |    0
 .../gui/a11y}/ea-week-view-cell.c                  |    2 +-
 .../gui/a11y}/ea-week-view-cell.h                  |    0
 .../gui/a11y}/ea-week-view-main-item.c             |    0
 .../gui/a11y}/ea-week-view-main-item.h             |    0
 .../calendar => calendar/gui/a11y}/ea-week-view.c  |    0
 .../calendar => calendar/gui/a11y}/ea-week-view.h  |    0
 calendar/gui/e-cal-list-view.c                     |    4 +-
 calendar/gui/e-calendar-table.c                    |    4 +-
 calendar/gui/e-calendar-table.h                    |    4 +-
 calendar/gui/e-calendar-view.c                     |    2 +-
 calendar/gui/e-cell-date-edit-config.h             |    2 +-
 calendar/gui/e-day-view-main-item.c                |    2 +-
 calendar/gui/e-day-view.c                          |    4 +-
 calendar/gui/e-memo-table.c                        |    4 +-
 calendar/gui/e-memo-table.h                        |    4 +-
 calendar/gui/e-week-view-main-item.c               |    2 +-
 calendar/gui/e-week-view.c                         |    4 +-
 calendar/gui/gnome-cal.c                           |    2 +-
 calendar/module/Makefile.am                        |   12 ++-
 composer/Makefile.am                               |    5 +-
 composer/e-composer-actions.c                      |    4 +-
 composer/e-msg-composer.c                          |  117 ++++++++++++++++--
 configure.in                                       |   32 +++---
 e-util/Makefile.am                                 |    4 +-
 {widgets/misc => e-util}/e-unicode.c               |    0
 {widgets/misc => e-util}/e-unicode.h               |    0
 em-format/Makefile.am                              |   22 ++++
 {mail => em-format}/em-format-quote.c              |    6 +-
 {mail => em-format}/em-format-quote.h              |    2 +-
 {mail => em-format}/em-format.c                    |  117 +++++++++++++++++--
 {mail => em-format}/em-format.h                    |    2 +-
 {mail => em-format}/em-stripsig-filter.c           |    0
 {mail => em-format}/em-stripsig-filter.h           |    0
 mail/Makefile.am                                   |   17 ++--
 mail/em-format-hook.h                              |    2 +-
 mail/em-format-html.h                              |    2 +-
 mail/em-inline-filter.c                            |    3 +-
 mail/em-mailer-prefs.c                             |    2 +-
 mail/em-utils.c                                    |  128 --------------------
 mail/em-utils.h                                    |    3 -
 mail/importers/Makefile.am                         |   31 -----
 mail/mail-component.c                              |    2 +-
 plugins/attachment-reminder/Makefile.am            |    4 +
 plugins/bbdb/Makefile.am                           |    3 +
 plugins/bogo-junk-plugin/Makefile.am               |    6 +-
 plugins/email-custom-header/Makefile.am            |    3 +-
 plugins/external-editor/Makefile.am                |   19 ++--
 plugins/face/Makefile.am                           |    3 +-
 plugins/groupwise-features/Makefile.am             |    5 -
 plugins/imap-features/Makefile.am                  |    9 +-
 plugins/ipod-sync/Makefile.am                      |    2 +-
 plugins/mail-notification/Makefile.am              |   15 +--
 plugins/mark-all-read/Makefile.am                  |    1 +
 plugins/mono/Makefile.am                           |    2 +-
 plugins/plugin-manager/Makefile.am                 |    1 +
 plugins/profiler/Makefile.am                       |    2 +-
 plugins/pst-import/Makefile.am                     |    9 --
 plugins/python/Makefile.am                         |    2 +-
 plugins/python/example/Makefile.am                 |    3 -
 plugins/sa-junk-plugin/Makefile.am                 |    5 +
 plugins/tnef-attachments/Makefile.am               |    9 --
 plugins/tnef-attachments/tnef-plugin.c             |    4 +-
 plugins/vcard-inline/Makefile.am                   |    9 ++-
 po/LINGUAS                                         |    1 -
 shell/Makefile.am                                  |   23 ++--
 smime/gui/Makefile.am                              |    9 +-
 widgets/Makefile.am                                |    4 +-
 widgets/menus/gal-view-collection.c                |    2 +-
 widgets/menus/gal-view-instance.c                  |    2 +-
 widgets/menus/gal-view-new-dialog.c                |    2 +-
 widgets/misc/Makefile.am                           |   43 +++-----
 .../misc/a11y}/ea-calendar-cell.c                  |    2 +-
 .../misc/a11y}/ea-calendar-cell.h                  |    0
 .../misc/a11y}/ea-calendar-item.c                  |    2 +-
 .../misc/a11y}/ea-calendar-item.h                  |    0
 {a11y/widgets => widgets/misc/a11y}/ea-widgets.c   |    4 +-
 {a11y/widgets => widgets/misc/a11y}/ea-widgets.h   |    0
 widgets/misc/e-calendar-item.c                     |    2 +-
 widgets/misc/e-search-bar.c                        |    2 +-
 widgets/table/Makefile.am                          |   52 +++++++--
 .../table/a11y}/gal-a11y-e-cell-popup.c            |    0
 .../table/a11y}/gal-a11y-e-cell-popup.h            |    2 +-
 .../table/a11y}/gal-a11y-e-cell-registry.c         |    0
 .../table/a11y}/gal-a11y-e-cell-registry.h         |    0
 .../table/a11y}/gal-a11y-e-cell-text.c             |    0
 .../table/a11y}/gal-a11y-e-cell-text.h             |    2 +-
 .../table/a11y}/gal-a11y-e-cell-toggle.c           |    0
 .../table/a11y}/gal-a11y-e-cell-toggle.h           |    0
 .../table/a11y}/gal-a11y-e-cell-tree.c             |    0
 .../table/a11y}/gal-a11y-e-cell-tree.h             |    0
 .../table/a11y}/gal-a11y-e-cell-vbox.c             |    0
 .../table/a11y}/gal-a11y-e-cell-vbox.h             |    0
 .../table/a11y}/gal-a11y-e-cell.c                  |    0
 .../table/a11y}/gal-a11y-e-cell.h                  |    0
 .../a11y}/gal-a11y-e-table-click-to-add-factory.c  |    0
 .../a11y}/gal-a11y-e-table-click-to-add-factory.h  |    0
 .../table/a11y}/gal-a11y-e-table-click-to-add.c    |    0
 .../table/a11y}/gal-a11y-e-table-click-to-add.h    |    0
 .../table/a11y}/gal-a11y-e-table-column-header.c   |    0
 .../table/a11y}/gal-a11y-e-table-column-header.h   |    0
 .../table/a11y}/gal-a11y-e-table-factory.c         |    0
 .../table/a11y}/gal-a11y-e-table-factory.h         |    0
 .../table/a11y}/gal-a11y-e-table-item-factory.c    |    0
 .../table/a11y}/gal-a11y-e-table-item-factory.h    |    0
 .../table/a11y}/gal-a11y-e-table-item.c            |    0
 .../table/a11y}/gal-a11y-e-table-item.h            |    0
 .../table/a11y}/gal-a11y-e-table.c                 |    0
 .../table/a11y}/gal-a11y-e-table.h                 |    0
 .../table/a11y}/gal-a11y-e-tree-factory.c          |    0
 .../table/a11y}/gal-a11y-e-tree-factory.h          |    0
 .../table/a11y}/gal-a11y-e-tree.c                  |    0
 .../table/a11y}/gal-a11y-e-tree.h                  |    0
 widgets/table/e-cell-combo.c                       |    2 +-
 widgets/{misc => table}/e-cell-date-edit.c         |    6 +-
 widgets/{misc => table}/e-cell-date-edit.h         |    0
 widgets/table/e-cell-date.c                        |    2 +-
 widgets/table/e-cell-hbox.c                        |    4 +-
 widgets/{misc => table}/e-cell-percent.c           |    0
 widgets/{misc => table}/e-cell-percent.h           |    0
 widgets/table/e-cell-popup.c                       |    4 +-
 widgets/table/e-cell-text.c                        |    6 +-
 widgets/table/e-cell-toggle.c                      |    4 +-
 widgets/table/e-cell-tree.c                        |    4 +-
 widgets/table/e-cell-vbox.c                        |    4 +-
 widgets/table/e-table-click-to-add.c               |    2 +-
 widgets/table/e-table-config.c                     |    2 +-
 widgets/table/e-table-group-container.c            |    2 +-
 widgets/table/e-table-header-utils.c               |    2 +-
 widgets/table/e-table-item.c                       |    4 +-
 widgets/table/e-table-utils.c                      |    2 +-
 widgets/table/e-table.c                            |    4 +-
 widgets/table/e-tree.c                             |    2 +-
 widgets/text/Makefile.am                           |   21 ++--
 .../text/a11y}/gal-a11y-e-text-factory.c           |    0
 .../text/a11y}/gal-a11y-e-text-factory.h           |    0
 .../e-text => widgets/text/a11y}/gal-a11y-e-text.c |    0
 .../e-text => widgets/text/a11y}/gal-a11y-e-text.h |    0
 widgets/{misc => text}/e-reflow-model.c            |    0
 widgets/{misc => text}/e-reflow-model.h            |    0
 widgets/{misc => text}/e-reflow.c                  |    8 +-
 widgets/{misc => text}/e-reflow.h                  |    2 +-
 widgets/text/e-text.c                              |    4 +-
 187 files changed, 601 insertions(+), 696 deletions(-)

diff --git a/INSTALL b/INSTALL
index 54caf7c..d3c5b40 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,13 +1,19 @@
-Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software
-Foundation, Inc.
+Installation Instructions
+*************************
 
-   This file is free documentation; the Free Software Foundation gives
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
+2006, 2007 Free Software Foundation, Inc.
+
+This file is free documentation; the Free Software Foundation gives
 unlimited permission to copy, distribute and modify it.
 
 Basic Installation
 ==================
 
-   These are generic installation instructions.
+Briefly, the shell commands `./configure; make; make install' should
+configure, build, and install this package.  The following
+more-detailed instructions are generic; see the `README' file for
+instructions specific to this package.
 
    The `configure' shell script attempts to guess correct values for
 various system-dependent variables used during compilation.  It uses
@@ -20,9 +26,9 @@ debugging `configure').
 
    It can also use an optional file (typically called `config.cache'
 and enabled with `--cache-file=config.cache' or simply `-C') that saves
-the results of its tests to speed up reconfiguring.  (Caching is
+the results of its tests to speed up reconfiguring.  Caching is
 disabled by default to prevent problems with accidental use of stale
-cache files.)
+cache files.
 
    If you need to do unusual things to compile the package, please try
 to figure out how `configure' could check whether to do them, and mail
@@ -32,20 +38,17 @@ some point `config.cache' contains results you don't want to keep, you
 may remove or edit it.
 
    The file `configure.ac' (or `configure.in') is used to create
-`configure' by a program called `autoconf'.  You only need
-`configure.ac' if you want to change it or regenerate `configure' using
-a newer version of `autoconf'.
+`configure' by a program called `autoconf'.  You need `configure.ac' if
+you want to change it or regenerate `configure' using a newer version
+of `autoconf'.
 
 The simplest way to compile this package is:
 
   1. `cd' to the directory containing the package's source code and type
-     `./configure' to configure the package for your system.  If you're
-     using `csh' on an old version of System V, you might need to type
-     `sh ./configure' instead to prevent `csh' from trying to execute
-     `configure' itself.
+     `./configure' to configure the package for your system.
 
-     Running `configure' takes awhile.  While running, it prints some
-     messages telling which features it is checking for.
+     Running `configure' might take a while.  While running, it prints
+     some messages telling which features it is checking for.
 
   2. Type `make' to compile the package.
 
@@ -64,54 +67,55 @@ The simplest way to compile this package is:
      all sorts of other programs in order to regenerate files that came
      with the distribution.
 
+  6. Often, you can also type `make uninstall' to remove the installed
+     files again.
+
 Compilers and Options
 =====================
 
-   Some systems require unusual options for compilation or linking that
-the `configure' script does not know about.  Run `./configure --help'
-for details on some of the pertinent environment variables.
+Some systems require unusual options for compilation or linking that the
+`configure' script does not know about.  Run `./configure --help' for
+details on some of the pertinent environment variables.
 
    You can give `configure' initial values for configuration parameters
 by setting variables in the command line or in the environment.  Here
 is an example:
 
-     ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+     ./configure CC=c99 CFLAGS=-g LIBS=-lposix
 
    *Note Defining Variables::, for more details.
 
 Compiling For Multiple Architectures
 ====================================
 
-   You can compile the package for more than one kind of computer at the
+You can compile the package for more than one kind of computer at the
 same time, by placing the object files for each architecture in their
-own directory.  To do this, you must use a version of `make' that
-supports the `VPATH' variable, such as GNU `make'.  `cd' to the
+own directory.  To do this, you can use GNU `make'.  `cd' to the
 directory where you want the object files and executables to go and run
 the `configure' script.  `configure' automatically checks for the
 source code in the directory that `configure' is in and in `..'.
 
-   If you have to use a `make' that does not support the `VPATH'
-variable, you have to compile the package for one architecture at a
-time in the source code directory.  After you have installed the
-package for one architecture, use `make distclean' before reconfiguring
-for another architecture.
+   With a non-GNU `make', it is safer to compile the package for one
+architecture at a time in the source code directory.  After you have
+installed the package for one architecture, use `make distclean' before
+reconfiguring for another architecture.
 
 Installation Names
 ==================
 
-   By default, `make install' will install the package's files in
-`/usr/local/bin', `/usr/local/man', etc.  You can specify an
-installation prefix other than `/usr/local' by giving `configure' the
-option `--prefix=PATH'.
+By default, `make install' installs the package's commands under
+`/usr/local/bin', include files under `/usr/local/include', etc.  You
+can specify an installation prefix other than `/usr/local' by giving
+`configure' the option `--prefix=PREFIX'.
 
    You can specify separate installation prefixes for
 architecture-specific files and architecture-independent files.  If you
-give `configure' the option `--exec-prefix=PATH', the package will use
-PATH as the prefix for installing programs and libraries.
-Documentation and other data files will still use the regular prefix.
+pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
 
    In addition, if you use an unusual directory layout you can give
-options like `--bindir=PATH' to specify different values for particular
+options like `--bindir=DIR' to specify different values for particular
 kinds of files.  Run `configure --help' for a list of the directories
 you can set and what kinds of files go in them.
 
@@ -122,7 +126,7 @@ option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
 Optional Features
 =================
 
-   Some packages pay attention to `--enable-FEATURE' options to
+Some packages pay attention to `--enable-FEATURE' options to
 `configure', where FEATURE indicates an optional part of the package.
 They may also pay attention to `--with-PACKAGE' options, where PACKAGE
 is something like `gnu-as' or `x' (for the X Window System).  The
@@ -137,11 +141,11 @@ you can use the `configure' options `--x-includes=DIR' and
 Specifying the System Type
 ==========================
 
-   There may be some features `configure' cannot figure out
-automatically, but needs to determine by the type of machine the package
-will run on.  Usually, assuming the package is built to be run on the
-_same_ architectures, `configure' can figure that out, but if it prints
-a message saying it cannot guess the machine type, give it the
+There may be some features `configure' cannot figure out automatically,
+but needs to determine by the type of machine the package will run on.
+Usually, assuming the package is built to be run on the _same_
+architectures, `configure' can figure that out, but if it prints a
+message saying it cannot guess the machine type, give it the
 `--build=TYPE' option.  TYPE can either be a short name for the system
 type, such as `sun4', or a canonical name which has the form:
 
@@ -156,7 +160,7 @@ where SYSTEM can have one of these forms:
 need to know the machine type.
 
    If you are _building_ compiler tools for cross-compiling, you should
-use the `--target=TYPE' option to select the type of system they will
+use the option `--target=TYPE' to select the type of system they will
 produce code for.
 
    If you want to _use_ a cross compiler, that generates code for a
@@ -167,9 +171,9 @@ eventually be run) with `--host=TYPE'.
 Sharing Defaults
 ================
 
-   If you want to set default values for `configure' scripts to share,
-you can create a site shell script called `config.site' that gives
-default values for variables like `CC', `cache_file', and `prefix'.
+If you want to set default values for `configure' scripts to share, you
+can create a site shell script called `config.site' that gives default
+values for variables like `CC', `cache_file', and `prefix'.
 `configure' looks for `PREFIX/share/config.site' if it exists, then
 `PREFIX/etc/config.site' if it exists.  Or, you can set the
 `CONFIG_SITE' environment variable to the location of the site script.
@@ -178,7 +182,7 @@ A warning: not all `configure' scripts look for a site script.
 Defining Variables
 ==================
 
-   Variables not defined in a site shell script can be set in the
+Variables not defined in a site shell script can be set in the
 environment passed to `configure'.  However, some packages may run
 configure again during the build, and the customized values of these
 variables may be lost.  In order to avoid this problem, you should set
@@ -186,14 +190,18 @@ them in the `configure' command line, using `VAR=value'.  For example:
 
      ./configure CC=/usr/local2/bin/gcc
 
-will cause the specified gcc to be used as the C compiler (unless it is
+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:
+
+     CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
+
 `configure' Invocation
 ======================
 
-   `configure' recognizes the following options to control how it
-operates.
+`configure' recognizes the following options to control how it operates.
 
 `--help'
 `-h'
diff --git a/Makefile.am b/Makefile.am
index 7adf7ea..2dcc6ce 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -66,6 +66,7 @@ SUBDIRS = 			\
 	widgets			\
 	shell			\
 	$(SMIME_DIR)		\
+	em-format		\
 	composer		\
 	addressbook		\
 	mail			\
diff --git a/a11y/Makefile.am b/a11y/Makefile.am
index 9fe0b07..772a969 100644
--- a/a11y/Makefile.am
+++ b/a11y/Makefile.am
@@ -1,14 +1,3 @@
-# Somewhat odd looking to have "." in SUBDIRS, but apparently it works?
-#SUBDIRS = e-text e-table . calendar widgets addressbook
-SUBDIRS = e-text e-table . widgets addressbook
-
-if OS_WIN32
-WIN32_BOOTSTRAP_LIBS =					\
-	$(top_builddir)/win32/libemiscwidgets.la	\
-	$(top_builddir)/win32/libetable.la		\
-	$(top_builddir)/win32/libetext.la
-endif
-
 # for debug
 #A11Y_CFLAGS += -pedantic -ansi -DACC_DEBUG -Werror
 
@@ -28,9 +17,6 @@ libevolution_a11y_la_SOURCES =		\
 libevolution_a11y_la_LDFLAGS = $(NO_UNDEFINED)
 
 libevolution_a11y_la_LIBADD =			\
-	$(WIN32_BOOTSTRAP_LIBS)			\
-	e-text/libgal-a11y-etext.la		\
-	e-table/libgal-a11y-etable.la		\
 	$(top_builddir)/e-util/libeutil.la	\
 	$(GNOME_PLATFORM_LIBS)
 
diff --git a/a11y/addressbook/Makefile.am b/a11y/addressbook/Makefile.am
deleted file mode 100644
index 8109282..0000000
--- a/a11y/addressbook/Makefile.am
+++ /dev/null
@@ -1,35 +0,0 @@
-if OS_WIN32
-WIN32_BOOTSTRAP_LIBS =						\
-	$(top_builddir)/win32/libemiscwidgets.la		\
-	$(top_builddir)/win32/libevolution-addressbook.la
-endif
-
-privsolib_LTLIBRARIES = libevolution-addressbook-a11y.la
-
-INCLUDES =						\
-	-DG_LOG_DOMAIN=\"evolution-a11y\"		\
-	-I$(top_srcdir)		                        \
-	-I$(top_srcdir)/a11y				\
-	-I$(top_srcdir)/widgets				\
-	-I$(top_srcdir)/shell				\
-	-I$(top_srcdir)/addressbook/gui/widgets		\
-	-DG_DISABLE_DEPRECATED				\
-	$(EVOLUTION_ADDRESSBOOK_CFLAGS)
-
-libevolution_addressbook_a11y_la_SOURCES =	\
-	ea-minicard.c				\
-	ea-minicard.h				\
-	ea-minicard-view.c			\
-	ea-minicard-view.h			\
-	ea-addressbook-view.c			\
-	ea-addressbook-view.h			\
-	ea-addressbook.c			\
-	ea-addressbook.h
-
-libevolution_addressbook_a11y_la_LDFLAGS = $(NO_UNDEFINED)
-
-libevolution_addressbook_a11y_la_LIBADD =	\
-	$(WIN32_BOOTSTRAP_LIBS)			\
-	$(EVOLUTION_ADDRESSBOOK_LIBS)
-
--include $(top_srcdir)/git.mk
diff --git a/a11y/calendar/Makefile.am b/a11y/calendar/Makefile.am
deleted file mode 100644
index 1bd5378..0000000
--- a/a11y/calendar/Makefile.am
+++ /dev/null
@@ -1,56 +0,0 @@
-# Calendar IDL files
-
-# for debug
-#A11Y_CFLAGS += -pedantic -ansi -DACC_DEBUG -Werror
-
-if OS_WIN32
-WIN32_BOOTSTRAP_LIBS = 					\
-	$(top_builddir)/win32/libetext.la		\
-	$(top_builddir)/win32/libevolution-calendar.la
-endif
-
-privsolib_LTLIBRARIES = libevolution-calendar-a11y.la
-
-INCLUDES =						\
-	-DG_LOG_DOMAIN=\"evolution-a11y\"		\
-	-I$(top_srcdir)					\
-	-I$(top_srcdir)/calendar/gui			\
-	-I$(top_srcdir)/widgets				\
-	-I$(top_srcdir)/widgets/misc			\
-	-I$(top_srcdir)/a11y				\
-	$(EVOLUTION_CALENDAR_CFLAGS)
-
-libevolution_calendar_a11y_la_SOURCES =		\
-	ea-calendar.c				\
-	ea-calendar.h				\
-	ea-calendar-helpers.c			\
-	ea-calendar-helpers.h			\
-	ea-cal-view.c				\
-	ea-cal-view.h				\
-	ea-cal-view-event.c			\
-	ea-cal-view-event.h			\
-	ea-day-view.c				\
-	ea-day-view.h				\
-	ea-day-view-main-item.c			\
-	ea-day-view-main-item.h			\
-	ea-day-view-cell.c			\
-	ea-day-view-cell.h			\
-	ea-week-view.c				\
-	ea-week-view.h				\
-	ea-week-view-main-item.c		\
-	ea-week-view-main-item.h		\
-	ea-week-view-cell.c			\
-	ea-week-view-cell.h			\
-        ea-jump-button.c                        \
-        ea-jump-button.h                        \
-	ea-gnome-calendar.c			\
-	ea-gnome-calendar.h
-
-libevolution_calendar_a11y_la_LDFLAGS = $(NO_UNDEFINED)
-
-libevolution_calendar_a11y_la_LIBADD =			\
-	$(WIN32_BOOTSTRAP_LIBS)				\
-        $(top_builddir)/a11y/libevolution-a11y.la	\
-	$(EVOLUTION_CALENDAR_LIBS)
-
--include $(top_srcdir)/git.mk
diff --git a/a11y/e-table/Makefile.am b/a11y/e-table/Makefile.am
deleted file mode 100644
index 413a37d..0000000
--- a/a11y/e-table/Makefile.am
+++ /dev/null
@@ -1,44 +0,0 @@
-INCLUDES =					\
-	-I$(top_srcdir)				\
-	-I$(top_srcdir)/widgets			\
-	$(E_UTIL_CFLAGS)			\
-	$(GNOME_PLATFORM_CFLAGS)		\
-        -DG_LOG_DOMAIN=\"e-table\"
-
-noinst_LTLIBRARIES = libgal-a11y-etable.la
-
-libgal_a11y_etable_la_SOURCES =		\
-	gal-a11y-e-tree.c			\
-	gal-a11y-e-tree-factory.c		\
-	gal-a11y-e-cell.c			\
-	gal-a11y-e-cell-text.c			\
-	gal-a11y-e-cell-tree.c			\
-	gal-a11y-e-cell-toggle.c		\
-	gal-a11y-e-cell-popup.c			\
-	gal-a11y-e-cell-registry.c		\
-	gal-a11y-e-cell-vbox.c			\
-	gal-a11y-e-table.c			\
-	gal-a11y-e-table-item.c			\
-	gal-a11y-e-table-item-factory.c		\
-	gal-a11y-e-table-click-to-add.c		\
-	gal-a11y-e-table-column-header.c	\
-	gal-a11y-e-table-click-to-add-factory.c	\
-	gal-a11y-e-table-factory.c		\
-	gal-a11y-e-tree.h			\
-	gal-a11y-e-tree-factory.h		\
-	gal-a11y-e-cell.h			\
-	gal-a11y-e-cell-text.h			\
-	gal-a11y-e-cell-tree.h			\
-	gal-a11y-e-cell-toggle.h		\
-	gal-a11y-e-cell-popup.h			\
-	gal-a11y-e-cell-registry.h		\
-	gal-a11y-e-cell-vbox.h			\
-	gal-a11y-e-table.h			\
-	gal-a11y-e-table-item.h			\
-	gal-a11y-e-table-click-to-add-factory.h	\
-	gal-a11y-e-table-click-to-add.h		\
-	gal-a11y-e-table-column-header.h	\
-	gal-a11y-e-table-item-factory.h		\
-	gal-a11y-e-table-factory.h
-
--include $(top_srcdir)/git.mk
diff --git a/a11y/e-text/Makefile.am b/a11y/e-text/Makefile.am
deleted file mode 100644
index 069284a..0000000
--- a/a11y/e-text/Makefile.am
+++ /dev/null
@@ -1,15 +0,0 @@
-INCLUDES =					\
-	-I$(top_srcdir)                         \
-	-I$(top_srcdir)/widgets                 \
-	$(GNOME_PLATFORM_CFLAGS)		\
-        -DG_LOG_DOMAIN=\"e-text\"
-
-noinst_LTLIBRARIES = libgal-a11y-etext.la
-
-libgal_a11y_etext_la_SOURCES =			\
-	gal-a11y-e-text-factory.c		\
-	gal-a11y-e-text.c			\
-	gal-a11y-e-text-factory.h		\
-	gal-a11y-e-text.h
-
--include $(top_srcdir)/git.mk
diff --git a/a11y/widgets/Makefile.am b/a11y/widgets/Makefile.am
deleted file mode 100644
index fbb8b68..0000000
--- a/a11y/widgets/Makefile.am
+++ /dev/null
@@ -1,34 +0,0 @@
-
-# for debug
-#A11Y_CFLAGS += -pedantic -ansi -DACC_DEBUG -Werror
-
-if OS_WIN32
-WIN32_BOOTSTRAP_LIBS = $(top_builddir)/win32/libemiscwidgets.la
-endif
-
-privsolib_LTLIBRARIES = libevolution-widgets-a11y.la
-
-INCLUDES =						\
-	-DG_LOG_DOMAIN=\"evolution-a11y\"		\
-	-I$(top_srcdir)					\
-	-I$(top_srcdir)/a11y				\
-	-I$(top_srcdir)/widgets				\
-	$(E_WIDGETS_CFLAGS)
-
-libevolution_widgets_a11y_la_SOURCES =		\
-	ea-calendar-item.c			\
-	ea-calendar-item.h			\
-	ea-calendar-cell.c			\
-	ea-calendar-cell.h			\
-	ea-widgets.c				\
-	ea-widgets.h
-
-libevolution_widgets_a11y_la_LDFLAGS = $(NO_UNDEFINED)
-
-libevolution_widgets_a11y_la_LIBADD =			\
-	$(WIN32_BOOTSTRAP_LIBS)				\
-        $(top_builddir)/a11y/libevolution-a11y.la	\
-	$(top_builddir)/e-util/libeutil.la		\
-	$(E_WIDGETS_LIBS)
-
--include $(top_srcdir)/git.mk
diff --git a/addressbook/gui/component/Makefile.am b/addressbook/gui/component/Makefile.am
index e48ef46..42b2263 100644
--- a/addressbook/gui/component/Makefile.am
+++ b/addressbook/gui/component/Makefile.am
@@ -65,9 +65,7 @@ libevolution_module_addressbook_la_LIBADD =						\
 	$(top_builddir)/widgets/text/libetext.la					\
 	$(top_builddir)/widgets/misc/libemiscwidgets.la					\
 	$(top_builddir)/widgets/menus/libmenus.la					\
-	$(top_builddir)/a11y/addressbook/libevolution-addressbook-a11y.la		\
 	$(top_builddir)/addressbook/importers/libevolution-addressbook-importers.la	\
-	$(WIN32_BOOTSTRAP_LIBS)								\
 	$(EVOLUTION_ADDRESSBOOK_LIBS) $(LDAP_LIBS)
 
 
diff --git a/addressbook/gui/contact-editor/Makefile.am b/addressbook/gui/contact-editor/Makefile.am
index a267f09..681836f 100644
--- a/addressbook/gui/contact-editor/Makefile.am
+++ b/addressbook/gui/contact-editor/Makefile.am
@@ -1,7 +1,3 @@
-if OS_WIN32
-WIN32_BOOTSTRAP_LIBS = $(top_builddir)/win32/libevolution-addressbook.la
-endif
-
 INCLUDES =						\
 	-I$(top_srcdir)					\
 	-I$(top_srcdir)/widgets				\
@@ -30,7 +26,6 @@ libecontacteditor_la_SOURCES = 			\
 libecontacteditor_la_LDFLAGS = $(NO_UNDEFINED)
 
 libecontacteditor_la_LIBADD =						\
-	$(WIN32_BOOTSTRAP_LIBS)						\
 	$(top_builddir)/e-util/libeutil.la				\
 	$(top_builddir)/widgets/misc/libemiscwidgets.la			\
 	$(top_builddir)/addressbook/util/libeabutil.la			\
diff --git a/addressbook/gui/contact-list-editor/Makefile.am b/addressbook/gui/contact-list-editor/Makefile.am
index 8e287f3..87fd18c 100644
--- a/addressbook/gui/contact-list-editor/Makefile.am
+++ b/addressbook/gui/contact-list-editor/Makefile.am
@@ -1,7 +1,3 @@
-if OS_WIN32
-WIN32_BOOTSTRAP_LIBS = $(top_builddir)/win32/libevolution-addressbook.la
-endif
-
 INCLUDES =						\
 	-I$(top_srcdir)					\
 	-I$(top_srcdir)/widgets				\
@@ -25,7 +21,6 @@ libecontactlisteditor_la_SOURCES = 		\
 libecontactlisteditor_la_LDFLAGS = $(NO_UNDEFINED)
 
 libecontactlisteditor_la_LIBADD =						\
-	$(WIN32_BOOTSTRAP_LIBS)							\
 	$(top_builddir)/addressbook/util/libeabutil.la				\
 	$(top_builddir)/addressbook/gui/contact-editor/libecontacteditor.la	\
 	$(top_builddir)/widgets/table/libetable.la				\
diff --git a/addressbook/gui/widgets/Makefile.am b/addressbook/gui/widgets/Makefile.am
index 9e3affc..45c0b0c 100644
--- a/addressbook/gui/widgets/Makefile.am
+++ b/addressbook/gui/widgets/Makefile.am
@@ -51,11 +51,22 @@ libeabwidgets_la_SOURCES =			\
 	gal-view-minicard.c			\
 	gal-view-minicard.h			\
 	gal-view-factory-minicard.c		\
-	gal-view-factory-minicard.h
+	gal-view-factory-minicard.h		\
+	a11y/ea-minicard.c			\
+	a11y/ea-minicard.h			\
+	a11y/ea-minicard-view.c			\
+	a11y/ea-minicard-view.h			\
+	a11y/ea-addressbook-view.c		\
+	a11y/ea-addressbook-view.h		\
+	a11y/ea-addressbook.c			\
+	a11y/ea-addressbook.h
 
 libeabwidgets_la_LIBADD =					\
 	$(top_builddir)/widgets/misc/libemiscwidgets.la		\
-	$(top_builddir)/a11y/addressbook/libevolution-addressbook-a11y.la
+	$(top_builddir)/shell/libeshell.la			\
+	$(top_builddir)/widgets/table/libetable.la		\
+	$(top_builddir)/widgets/menus/libmenus.la		\
+	$(top_builddir)/a11y/libevolution-a11y.la
 
 dist-hook:
 	cd $(distdir); rm -f $(BUILT_SOURCES)
diff --git a/a11y/addressbook/ea-addressbook-view.c b/addressbook/gui/widgets/a11y/ea-addressbook-view.c
similarity index 100%
rename from a11y/addressbook/ea-addressbook-view.c
rename to addressbook/gui/widgets/a11y/ea-addressbook-view.c
diff --git a/a11y/addressbook/ea-addressbook-view.h b/addressbook/gui/widgets/a11y/ea-addressbook-view.h
similarity index 100%
rename from a11y/addressbook/ea-addressbook-view.h
rename to addressbook/gui/widgets/a11y/ea-addressbook-view.h
diff --git a/a11y/addressbook/ea-addressbook.c b/addressbook/gui/widgets/a11y/ea-addressbook.c
similarity index 98%
rename from a11y/addressbook/ea-addressbook.c
rename to addressbook/gui/widgets/a11y/ea-addressbook.c
index e94309d..087c33a 100644
--- a/a11y/addressbook/ea-addressbook.c
+++ b/addressbook/gui/widgets/a11y/ea-addressbook.c
@@ -21,7 +21,7 @@
  */
 
 #include <text/e-text.h>
-#include "ea-factory.h"
+#include "a11y/ea-factory.h"
 #include "ea-addressbook.h"
 #include "ea-minicard.h"
 #include "ea-minicard-view.h"
diff --git a/a11y/addressbook/ea-addressbook.h b/addressbook/gui/widgets/a11y/ea-addressbook.h
similarity index 100%
rename from a11y/addressbook/ea-addressbook.h
rename to addressbook/gui/widgets/a11y/ea-addressbook.h
diff --git a/a11y/addressbook/ea-minicard-view.c b/addressbook/gui/widgets/a11y/ea-minicard-view.c
similarity index 100%
rename from a11y/addressbook/ea-minicard-view.c
rename to addressbook/gui/widgets/a11y/ea-minicard-view.c
diff --git a/a11y/addressbook/ea-minicard-view.h b/addressbook/gui/widgets/a11y/ea-minicard-view.h
similarity index 100%
rename from a11y/addressbook/ea-minicard-view.h
rename to addressbook/gui/widgets/a11y/ea-minicard-view.h
diff --git a/a11y/addressbook/ea-minicard.c b/addressbook/gui/widgets/a11y/ea-minicard.c
similarity index 100%
rename from a11y/addressbook/ea-minicard.c
rename to addressbook/gui/widgets/a11y/ea-minicard.c
diff --git a/a11y/addressbook/ea-minicard.h b/addressbook/gui/widgets/a11y/ea-minicard.h
similarity index 100%
rename from a11y/addressbook/ea-minicard.h
rename to addressbook/gui/widgets/a11y/ea-minicard.h
diff --git a/addressbook/gui/widgets/e-addressbook-reflow-adapter.h b/addressbook/gui/widgets/e-addressbook-reflow-adapter.h
index 5032f3e..bd2ba33 100644
--- a/addressbook/gui/widgets/e-addressbook-reflow-adapter.h
+++ b/addressbook/gui/widgets/e-addressbook-reflow-adapter.h
@@ -21,7 +21,7 @@
 #ifndef _E_ADDRESSBOOK_REFLOW_ADAPTER_H_
 #define _E_ADDRESSBOOK_REFLOW_ADAPTER_H_
 
-#include <misc/e-reflow-model.h>
+#include <text/e-reflow-model.h>
 #include <libebook/e-contact.h>
 #include "e-addressbook-model.h"
 
diff --git a/addressbook/gui/widgets/e-addressbook-view.c b/addressbook/gui/widgets/e-addressbook-view.c
index 7131a61..8ee3c14 100644
--- a/addressbook/gui/widgets/e-addressbook-view.c
+++ b/addressbook/gui/widgets/e-addressbook-view.c
@@ -33,7 +33,7 @@
 #include <e-shell-sidebar.h>
 
 #include "addressbook/printing/e-contact-print.h"
-#include "a11y/addressbook/ea-addressbook.h"
+#include "a11y/ea-addressbook.h"
 
 #include "e-util/e-print.h"
 #include "e-util/e-util.h"
diff --git a/addressbook/gui/widgets/e-minicard-view.c b/addressbook/gui/widgets/e-minicard-view.c
index 32957fd..c6faa4a 100644
--- a/addressbook/gui/widgets/e-minicard-view.c
+++ b/addressbook/gui/widgets/e-minicard-view.c
@@ -34,7 +34,7 @@
 #include <glib/gi18n.h>
 #include <string.h>
 #include "e-util/e-util.h"
-#include "a11y/addressbook/ea-addressbook.h"
+#include "a11y/ea-addressbook.h"
 
 static void e_minicard_view_drag_data_get(GtkWidget *widget,
 					  GdkDragContext *context,
diff --git a/addressbook/gui/widgets/e-minicard-view.h b/addressbook/gui/widgets/e-minicard-view.h
index 4cdf9be..657d0a9 100644
--- a/addressbook/gui/widgets/e-minicard-view.h
+++ b/addressbook/gui/widgets/e-minicard-view.h
@@ -26,7 +26,7 @@
 
 #include "e-minicard.h"
 
-#include <misc/e-reflow.h>
+#include <text/e-reflow.h>
 #include <misc/e-selection-model-simple.h>
 #include <libebook/e-book.h>
 #include "e-addressbook-reflow-adapter.h"
diff --git a/addressbook/gui/widgets/e-minicard.c b/addressbook/gui/widgets/e-minicard.c
index 3e5e8ec..a875e43 100644
--- a/addressbook/gui/widgets/e-minicard.c
+++ b/addressbook/gui/widgets/e-minicard.c
@@ -38,7 +38,7 @@
 #include <e-util/e-html-utils.h>
 #include <e-util/e-icon-factory.h>
 #include <libebook/e-destination.h>
-#include "a11y/addressbook/ea-addressbook.h"
+#include "a11y/ea-addressbook.h"
 
 static void e_minicard_init		(EMinicard		 *card);
 static void e_minicard_class_init	(EMinicardClass	 *class);
diff --git a/addressbook/printing/Makefile.am b/addressbook/printing/Makefile.am
index c194f27..59c5c51 100644
--- a/addressbook/printing/Makefile.am
+++ b/addressbook/printing/Makefile.am
@@ -38,12 +38,6 @@ contact_print_test_LDADD =	\
 	$(top_builddir)/e-util/libeutil.la			\
 	$(EVOLUTION_ADDRESSBOOK_LIBS)
 
-contact_print_style_editor_test_LDADD =	\
-	libecontactprint.la					\
-	$(top_builddir)/addressbook/util/libeabutil.la		\
-	$(top_builddir)/e-util/libeutil.la			\
-	$(EVOLUTION_ADDRESSBOOK_LIBS)
-
 EXTRA_DIST = 		\
 	$(ecps_DATA)
 
diff --git a/calendar/gui/Makefile.am b/calendar/gui/Makefile.am
index a2b4be2..1b9a5d2 100644
--- a/calendar/gui/Makefile.am
+++ b/calendar/gui/Makefile.am
@@ -172,11 +172,33 @@ libcal_gui_la_SOURCES =		\
 	weekday-picker.c			\
 	weekday-picker.h
 
-# Removed
-#	$(top_builddir)/a11y/calendar/libevolution-calendar-a11y.la
+# no gnome-cal no a11y. FIXME: KILL-BONOBO
+#	a11y/ea-calendar.c			\
+#	a11y/ea-calendar.h			\
+#	a11y/ea-calendar-helpers.c		\
+#	a11y/ea-calendar-helpers.h		\
+#	a11y/ea-cal-view.c			\
+#	a11y/ea-cal-view.h			\
+#	a11y/ea-cal-view-event.c		\
+#	a11y/ea-cal-view-event.h		\
+#	a11y/ea-day-view.c			\
+#	a11y/ea-day-view.h			\
+#	a11y/ea-day-view-main-item.c		\
+#	a11y/ea-day-view-main-item.h		\
+#	a11y/ea-day-view-cell.c			\
+#	a11y/ea-day-view-cell.h			\
+#	a11y/ea-week-view.c			\
+#	a11y/ea-week-view.h			\
+#	a11y/ea-week-view-main-item.c		\
+#	a11y/ea-week-view-main-item.h		\
+#	a11y/ea-week-view-cell.c		\
+#	a11y/ea-week-view-cell.h		\
+#	a11y/ea-jump-button.c			\
+#	a11y/ea-jump-button.h			\
+#	a11y/ea-gnome-calendar.c		\
+#	a11y/ea-gnome-calendar.h
 
 libcal_gui_la_LIBADD =					\
-	$(WIN32_BOOTSTRAP_LIBS)						\
 	$(top_builddir)/composer/libcomposer.la				\
 	$(top_builddir)/addressbook/gui/contact-editor/libecontacteditor.la \
 	$(top_builddir)/addressbook/gui/contact-list-editor/libecontactlisteditor.la \
@@ -187,6 +209,7 @@ libcal_gui_la_LIBADD =					\
 	$(top_builddir)/calendar/importers/libevolution-calendar-importers.la \
 	$(top_builddir)/widgets/e-timezone-dialog/libetimezonedialog.la	\
 	$(top_builddir)/widgets/misc/libemiscwidgets.la			\
+	$(top_builddir)/widgets/table/libetable.la			\
 	$(top_builddir)/filter/libfilter.la				\
 	$(top_builddir)/e-util/libeutil.la				\
 	$(LIBSOUP_LIBS)							\
diff --git a/a11y/calendar/ea-cal-view-event.c b/calendar/gui/a11y/ea-cal-view-event.c
similarity index 100%
rename from a11y/calendar/ea-cal-view-event.c
rename to calendar/gui/a11y/ea-cal-view-event.c
diff --git a/a11y/calendar/ea-cal-view-event.h b/calendar/gui/a11y/ea-cal-view-event.h
similarity index 100%
rename from a11y/calendar/ea-cal-view-event.h
rename to calendar/gui/a11y/ea-cal-view-event.h
diff --git a/a11y/calendar/ea-cal-view.c b/calendar/gui/a11y/ea-cal-view.c
similarity index 100%
rename from a11y/calendar/ea-cal-view.c
rename to calendar/gui/a11y/ea-cal-view.c
diff --git a/a11y/calendar/ea-cal-view.h b/calendar/gui/a11y/ea-cal-view.h
similarity index 100%
rename from a11y/calendar/ea-cal-view.h
rename to calendar/gui/a11y/ea-cal-view.h
diff --git a/a11y/calendar/ea-calendar-helpers.c b/calendar/gui/a11y/ea-calendar-helpers.c
similarity index 100%
rename from a11y/calendar/ea-calendar-helpers.c
rename to calendar/gui/a11y/ea-calendar-helpers.c
diff --git a/a11y/calendar/ea-calendar-helpers.h b/calendar/gui/a11y/ea-calendar-helpers.h
similarity index 100%
rename from a11y/calendar/ea-calendar-helpers.h
rename to calendar/gui/a11y/ea-calendar-helpers.h
diff --git a/a11y/calendar/ea-calendar.c b/calendar/gui/a11y/ea-calendar.c
similarity index 99%
rename from a11y/calendar/ea-calendar.c
rename to calendar/gui/a11y/ea-calendar.c
index bc37ab3..3cf41f3 100644
--- a/a11y/calendar/ea-calendar.c
+++ b/calendar/gui/a11y/ea-calendar.c
@@ -23,7 +23,7 @@
 #include <text/e-text.h>
 #include <libgnomecanvas/gnome-canvas-pixbuf.h>
 #include "ea-calendar-helpers.h"
-#include "ea-factory.h"
+#include "a11y/ea-factory.h"
 #include "ea-calendar.h"
 
 #include "calendar/ea-cal-view.h"
diff --git a/a11y/calendar/ea-calendar.h b/calendar/gui/a11y/ea-calendar.h
similarity index 100%
rename from a11y/calendar/ea-calendar.h
rename to calendar/gui/a11y/ea-calendar.h
diff --git a/a11y/calendar/ea-day-view-cell.c b/calendar/gui/a11y/ea-day-view-cell.c
similarity index 99%
rename from a11y/calendar/ea-day-view-cell.c
rename to calendar/gui/a11y/ea-day-view-cell.c
index 1b8e111..4698a3d 100644
--- a/a11y/calendar/ea-day-view-cell.c
+++ b/calendar/gui/a11y/ea-day-view-cell.c
@@ -24,7 +24,7 @@
 #include "ea-day-view-cell.h"
 #include "ea-day-view-main-item.h"
 #include "ea-day-view.h"
-#include "ea-factory.h"
+#include "a11y/ea-factory.h"
 
 /* EDayViewCell */
 
diff --git a/a11y/calendar/ea-day-view-cell.h b/calendar/gui/a11y/ea-day-view-cell.h
similarity index 100%
rename from a11y/calendar/ea-day-view-cell.h
rename to calendar/gui/a11y/ea-day-view-cell.h
diff --git a/a11y/calendar/ea-day-view-main-item.c b/calendar/gui/a11y/ea-day-view-main-item.c
similarity index 100%
rename from a11y/calendar/ea-day-view-main-item.c
rename to calendar/gui/a11y/ea-day-view-main-item.c
diff --git a/a11y/calendar/ea-day-view-main-item.h b/calendar/gui/a11y/ea-day-view-main-item.h
similarity index 100%
rename from a11y/calendar/ea-day-view-main-item.h
rename to calendar/gui/a11y/ea-day-view-main-item.h
diff --git a/a11y/calendar/ea-day-view.c b/calendar/gui/a11y/ea-day-view.c
similarity index 100%
rename from a11y/calendar/ea-day-view.c
rename to calendar/gui/a11y/ea-day-view.c
diff --git a/a11y/calendar/ea-day-view.h b/calendar/gui/a11y/ea-day-view.h
similarity index 100%
rename from a11y/calendar/ea-day-view.h
rename to calendar/gui/a11y/ea-day-view.h
diff --git a/a11y/calendar/ea-gnome-calendar.c b/calendar/gui/a11y/ea-gnome-calendar.c
similarity index 100%
rename from a11y/calendar/ea-gnome-calendar.c
rename to calendar/gui/a11y/ea-gnome-calendar.c
diff --git a/a11y/calendar/ea-gnome-calendar.h b/calendar/gui/a11y/ea-gnome-calendar.h
similarity index 100%
rename from a11y/calendar/ea-gnome-calendar.h
rename to calendar/gui/a11y/ea-gnome-calendar.h
diff --git a/a11y/calendar/ea-jump-button.c b/calendar/gui/a11y/ea-jump-button.c
similarity index 100%
rename from a11y/calendar/ea-jump-button.c
rename to calendar/gui/a11y/ea-jump-button.c
diff --git a/a11y/calendar/ea-jump-button.h b/calendar/gui/a11y/ea-jump-button.h
similarity index 100%
rename from a11y/calendar/ea-jump-button.h
rename to calendar/gui/a11y/ea-jump-button.h
diff --git a/a11y/calendar/ea-week-view-cell.c b/calendar/gui/a11y/ea-week-view-cell.c
similarity index 99%
rename from a11y/calendar/ea-week-view-cell.c
rename to calendar/gui/a11y/ea-week-view-cell.c
index 1d1b4d0..3ec553b 100644
--- a/a11y/calendar/ea-week-view-cell.c
+++ b/calendar/gui/a11y/ea-week-view-cell.c
@@ -24,7 +24,7 @@
 
 #include "ea-week-view-cell.h"
 #include "ea-week-view-main-item.h"
-#include "ea-factory.h"
+#include "a11y/ea-factory.h"
 
 /* EWeekViewCell */
 
diff --git a/a11y/calendar/ea-week-view-cell.h b/calendar/gui/a11y/ea-week-view-cell.h
similarity index 100%
rename from a11y/calendar/ea-week-view-cell.h
rename to calendar/gui/a11y/ea-week-view-cell.h
diff --git a/a11y/calendar/ea-week-view-main-item.c b/calendar/gui/a11y/ea-week-view-main-item.c
similarity index 100%
rename from a11y/calendar/ea-week-view-main-item.c
rename to calendar/gui/a11y/ea-week-view-main-item.c
diff --git a/a11y/calendar/ea-week-view-main-item.h b/calendar/gui/a11y/ea-week-view-main-item.h
similarity index 100%
rename from a11y/calendar/ea-week-view-main-item.h
rename to calendar/gui/a11y/ea-week-view-main-item.h
diff --git a/a11y/calendar/ea-week-view.c b/calendar/gui/a11y/ea-week-view.c
similarity index 100%
rename from a11y/calendar/ea-week-view.c
rename to calendar/gui/a11y/ea-week-view.c
diff --git a/a11y/calendar/ea-week-view.h b/calendar/gui/a11y/ea-week-view.h
similarity index 100%
rename from a11y/calendar/ea-week-view.h
rename to calendar/gui/a11y/ea-week-view.h
diff --git a/calendar/gui/e-cal-list-view.c b/calendar/gui/e-cal-list-view.c
index 6c71d1c..2da55bb 100644
--- a/calendar/gui/e-cal-list-view.c
+++ b/calendar/gui/e-cal-list-view.c
@@ -25,7 +25,7 @@
 #endif
 
 #include "e-cal-list-view.h"
-#include "ea-calendar.h"
+#include "a11y/ea-calendar.h"
 
 #include <math.h>
 #include <time.h>
@@ -41,7 +41,7 @@
 #include <table/e-cell-text.h>
 #include <table/e-cell-combo.h>
 #include <misc/e-popup-menu.h>
-#include <misc/e-cell-date-edit.h>
+#include <table/e-cell-date-edit.h>
 #include <e-util/e-categories-config.h>
 #include <e-util/e-dialog-utils.h>
 #include <e-util/e-util-private.h>
diff --git a/calendar/gui/e-calendar-table.c b/calendar/gui/e-calendar-table.c
index a432027..e914e50 100644
--- a/calendar/gui/e-calendar-table.c
+++ b/calendar/gui/e-calendar-table.c
@@ -43,8 +43,8 @@
 #include <table/e-cell-combo.h>
 #include <e-util/e-dialog-utils.h>
 #include <e-util/e-util-private.h>
-#include <widgets/misc/e-cell-date-edit.h>
-#include <widgets/misc/e-cell-percent.h>
+#include <table/e-cell-date-edit.h>
+#include <table/e-cell-percent.h>
 #include <libecal/e-cal-time-util.h>
 #include <libedataserver/e-time-utils.h>
 
diff --git a/calendar/gui/e-calendar-table.h b/calendar/gui/e-calendar-table.h
index a3dba94..5f83606 100644
--- a/calendar/gui/e-calendar-table.h
+++ b/calendar/gui/e-calendar-table.h
@@ -24,8 +24,8 @@
 #define _E_CALENDAR_TABLE_H_
 
 #include <shell/e-shell-view.h>
-#include <widgets/table/e-table-scrolled.h>
-#include <widgets/misc/e-cell-date-edit.h>
+#include <table/e-table-scrolled.h>
+#include <table/e-cell-date-edit.h>
 #include "e-cal-model.h"
 
 /*
diff --git a/calendar/gui/e-calendar-view.c b/calendar/gui/e-calendar-view.c
index 2294c0b..a888e04 100644
--- a/calendar/gui/e-calendar-view.c
+++ b/calendar/gui/e-calendar-view.c
@@ -55,7 +55,7 @@
 #include "dialogs/select-source-dialog.h"
 #include "print.h"
 #include "goto.h"
-#include "ea-calendar.h"
+#include "a11y/ea-calendar.h"
 #include "e-cal-popup.h"
 #include "misc.h"
 
diff --git a/calendar/gui/e-cell-date-edit-config.h b/calendar/gui/e-cell-date-edit-config.h
index 6203aec..3625935 100644
--- a/calendar/gui/e-cell-date-edit-config.h
+++ b/calendar/gui/e-cell-date-edit-config.h
@@ -24,7 +24,7 @@
 #ifndef _E_CELL_DATE_EDIT_CONFIG_H_
 #define _E_CELL_DATE_EDIT_CONFIG_H_
 
-#include <misc/e-cell-date-edit.h>
+#include <table/e-cell-date-edit.h>
 #include "e-cell-date-edit-text.h"
 
 G_BEGIN_DECLS
diff --git a/calendar/gui/e-day-view-main-item.c b/calendar/gui/e-day-view-main-item.c
index f96e6cc..3718725 100644
--- a/calendar/gui/e-day-view-main-item.c
+++ b/calendar/gui/e-day-view-main-item.c
@@ -32,7 +32,7 @@
 #include "e-util/e-categories-config.h"
 #include "e-day-view-layout.h"
 #include "e-day-view-main-item.h"
-#include "ea-calendar.h"
+#include "a11y/ea-calendar.h"
 #include "e-calendar-view.h"
 #include "comp-util.h"
 #include <libecal/e-cal-time-util.h>
diff --git a/calendar/gui/e-day-view.c b/calendar/gui/e-day-view.c
index 9f48cde..7c082e5 100644
--- a/calendar/gui/e-day-view.c
+++ b/calendar/gui/e-day-view.c
@@ -26,7 +26,7 @@
 #endif
 
 #include "e-day-view.h"
-#include "ea-calendar.h"
+#include "a11y/ea-calendar.h"
 
 #include <math.h>
 #include <time.h>
@@ -35,7 +35,7 @@
 #include <misc/e-canvas-utils.h>
 #include <misc/e-popup-menu.h>
 #include <misc/e-gui-utils.h>
-#include <misc/e-unicode.h>
+#include <e-util/e-unicode.h>
 #include <libgnomecanvas/gnome-canvas-rect-ellipse.h>
 #include <glib/gi18n.h>
 #include <e-util/e-categories-config.h>
diff --git a/calendar/gui/e-memo-table.c b/calendar/gui/e-memo-table.c
index 891bec6..208e3ad 100644
--- a/calendar/gui/e-memo-table.c
+++ b/calendar/gui/e-memo-table.c
@@ -42,8 +42,8 @@
 #include <table/e-cell-combo.h>
 #include <e-util/e-dialog-utils.h>
 #include <e-util/e-util-private.h>
-#include <widgets/misc/e-cell-date-edit.h>
-#include <widgets/misc/e-cell-percent.h>
+#include <table/e-cell-date-edit.h>
+#include <table/e-cell-percent.h>
 #include <libecal/e-cal-time-util.h>
 #include <libedataserver/e-time-utils.h>
 
diff --git a/calendar/gui/e-memo-table.h b/calendar/gui/e-memo-table.h
index 0a13006..421a153 100644
--- a/calendar/gui/e-memo-table.h
+++ b/calendar/gui/e-memo-table.h
@@ -26,8 +26,8 @@
 #define _E_MEMO_TABLE_H_
 
 #include <shell/e-shell-view.h>
-#include <widgets/table/e-table-scrolled.h>
-#include <widgets/misc/e-cell-date-edit.h>
+#include <table/e-table-scrolled.h>
+#include <table/e-cell-date-edit.h>
 #include "e-cal-model.h"
 
 /*
diff --git a/calendar/gui/e-week-view-main-item.c b/calendar/gui/e-week-view-main-item.c
index 322acc6..82dc43e 100644
--- a/calendar/gui/e-week-view-main-item.c
+++ b/calendar/gui/e-week-view-main-item.c
@@ -29,7 +29,7 @@
 #include <glib.h>
 #include <glib/gi18n.h>
 #include "e-week-view-main-item.h"
-#include "ea-calendar.h"
+#include "a11y/ea-calendar.h"
 
 static void e_week_view_main_item_set_property	(GObject	 *object,
 						 guint		  property_id,
diff --git a/calendar/gui/e-week-view.c b/calendar/gui/e-week-view.c
index 80248ec..22dfb3d 100644
--- a/calendar/gui/e-week-view.c
+++ b/calendar/gui/e-week-view.c
@@ -30,7 +30,7 @@
 #endif
 
 #include "e-week-view.h"
-#include "ea-calendar.h"
+#include "a11y/ea-calendar.h"
 
 #include <math.h>
 #include <gdk/gdkkeysyms.h>
@@ -39,7 +39,7 @@
 #include <text/e-text.h>
 #include <misc/e-canvas-utils.h>
 #include <misc/e-gui-utils.h>
-#include <misc/e-unicode.h>
+#include <e-util/e-unicode.h>
 #include <e-util/e-categories-config.h>
 #include <e-util/e-dialog-utils.h>
 #include <e-util/e-util.h>
diff --git a/calendar/gui/gnome-cal.c b/calendar/gui/gnome-cal.c
index 2217cd5..75a3764 100644
--- a/calendar/gui/gnome-cal.c
+++ b/calendar/gui/gnome-cal.c
@@ -74,7 +74,7 @@
 #include "calendar-view-factory.h"
 #include "tag-calendar.h"
 #include "misc.h"
-#include "ea-calendar.h"
+#include "a11y/ea-calendar.h"
 #include "common/authentication.h"
 #include "e-cal-popup.h"
 #include "e-cal-menu.h"
diff --git a/calendar/module/Makefile.am b/calendar/module/Makefile.am
index ca2a4b4..49442cb 100644
--- a/calendar/module/Makefile.am
+++ b/calendar/module/Makefile.am
@@ -61,11 +61,19 @@ libevolution_module_calendar_la_SOURCES =		\
 #	$(top_builddir)/a11y/calendar/libevolution-calendar-a11y.la
 
 libevolution_module_calendar_la_LIBADD =		\
-	$(WIN32_BOOTSTRAP_LIBS)				\
 	$(top_builddir)/shell/libeshell.la		\
 	$(top_builddir)/calendar/gui/libcal-gui.la	\
+	$(top_builddir)/calendar/importers/libevolution-calendar-importers.la	\
 	$(top_builddir)/mail/libevolution-module-mail.la \
-	$(top_builddir)/addressbook/gui/contact-editor/libecontacteditor.la
+	$(top_builddir)/addressbook/gui/contact-editor/libecontacteditor.la	\
+	$(top_builddir)/addressbook/gui/contact-list-editor/libecontactlisteditor.la \
+	$(top_builddir)/e-util/libeutil.la				\
+	$(top_builddir)/filter/libfilter.la				\
+	$(top_builddir)/widgets/menus/libmenus.la			\
+	$(top_builddir)/widgets/misc/libemiscwidgets.la			\
+	$(top_builddir)/widgets/table/libetable.la			\
+	$(CAMEL_LIBS)							\
+	$(EVOLUTION_CALENDAR_LIBS)
 
 libevolution_module_calendar_la_LDFLAGS =		\
 	-module -avoid-version $(NO_UNDEFINED)
diff --git a/composer/Makefile.am b/composer/Makefile.am
index 889a28f..8613117 100644
--- a/composer/Makefile.am
+++ b/composer/Makefile.am
@@ -47,8 +47,9 @@ libcomposer_la_SOURCES = 			\
 	e-msg-composer.c			\
 	e-msg-composer.h
 
-libcomposer_la_LIBADD =							\
-	$(top_builddir)/widgets/misc/libemiscwidgets.la
+libcomposer_la_LIBADD =					\
+	$(top_builddir)/widgets/misc/libemiscwidgets.la	\
+	$(top_builddir)/em-format/libemformat.la
 
 uidir = $(evolutionuidir)
 ui_DATA = evolution-composer.ui
diff --git a/composer/e-composer-actions.c b/composer/e-composer-actions.c
index a1fe1ca..915f0ef 100644
--- a/composer/e-composer-actions.c
+++ b/composer/e-composer-actions.c
@@ -21,7 +21,6 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <e-util/e-error.h>
-#include <mail/em-event.h>
 
 #include "misc/e-charset-picker.h"
 
@@ -249,6 +248,8 @@ static void
 action_send_options_cb (GtkAction *action,
                         EMsgComposer *composer)
 {
+	/* FIXME: KILL-BONOBO - should this be here when -no-undefined removed? */
+	/*
 	EMEvent *event = em_event_peek ();
 	EMEventTargetComposer *target;
 
@@ -260,6 +261,7 @@ action_send_options_cb (GtkAction *action,
 		(EEvent *) event,
 		"composer.selectsendoption",
 		(EEventTarget *) target);
+	*/
 
 	if (!composer->priv->send_invoked)
 		e_error_run (
diff --git a/composer/e-msg-composer.c b/composer/e-msg-composer.c
index d1a6abb..9f92c4f 100644
--- a/composer/e-msg-composer.c
+++ b/composer/e-msg-composer.c
@@ -57,6 +57,8 @@
 #include "e-util/e-signature-utils.h"
 #include "e-signature-combo-box.h"
 #include "shell/e-shell.h"
+#include "em-format/em-format.h"
+#include "em-format/em-format-quote.h"
 
 #include <camel/camel-charset-map.h>
 #include <camel/camel-cipher-context.h>
@@ -75,9 +77,6 @@
 #include <camel/camel-smime-context.h>
 #endif
 
-#include "mail/em-utils.h"
-#include "mail/mail-tools.h"
-
 #include "e-msg-composer.h"
 #include "e-attachment.h"
 #include "e-composer-autosave.h"
@@ -153,6 +152,104 @@ static void handle_multipart_alternative (EMsgComposer *composer, CamelMultipart
 static void handle_multipart_encrypted (EMsgComposer *composer, CamelMimePart *multipart, gint depth);
 static void handle_multipart_signed (EMsgComposer *composer, CamelMultipart *multipart, gint depth);
 
+/**
+ * emcu_part_to_html:
+ * @part:
+ *
+ * Converts a mime part's contents into html text.  If @credits is given,
+ * then it will be used as an attribution string, and the
+ * content will be cited.  Otherwise no citation or attribution
+ * will be performed.
+ *
+ * Return Value: The part in displayable html format.
+ **/
+static char *
+emcu_part_to_html (CamelMimePart *part, ssize_t *len, EMFormat *source)
+{
+	EMFormatQuote *emfq;
+	CamelStreamMem *mem;
+	GByteArray *buf;
+	char *text;
+
+	buf = g_byte_array_new ();
+	mem = (CamelStreamMem *) camel_stream_mem_new ();
+	camel_stream_mem_set_byte_array (mem, buf);
+
+	emfq = em_format_quote_new(NULL, (CamelStream *)mem, 0);
+	((EMFormat *) emfq)->composer = TRUE;
+	if (source) {
+		/* copy over things we can, other things are internal, perhaps need different api than 'clone' */
+		if (source->default_charset)
+			em_format_set_default_charset((EMFormat *)emfq, source->default_charset);
+		if (source->charset)
+			em_format_set_default_charset((EMFormat *)emfq, source->charset);
+	}
+	em_format_part((EMFormat *) emfq, (CamelStream *)mem, part);
+	g_object_unref(emfq);
+
+	camel_stream_write((CamelStream *) mem, "", 1);
+	camel_object_unref(mem);
+
+	text = (char *)buf->data;
+	if (len)
+		*len = buf->len-1;
+	g_byte_array_free (buf, FALSE);
+
+	return text;
+}
+
+/* copy of em_utils_prompt_user from mailer */
+static gboolean
+emcu_prompt_user (GtkWindow *parent, const char *promptkey, const char *tag, const char *arg0, ...)
+{
+	GtkWidget *mbox, *check = NULL;
+	va_list ap;
+	int button;
+	GConfClient *gconf = gconf_client_get_default ();
+
+	if (promptkey
+	    && !gconf_client_get_bool(gconf, promptkey, NULL)) {
+		g_object_unref (gconf);
+		return TRUE;
+	}
+
+	va_start(ap, arg0);
+	mbox = e_error_newv(parent, tag, arg0, ap);
+	va_end(ap);
+
+	if (promptkey) {
+		check = gtk_check_button_new_with_mnemonic (_("_Do not show this message again."));
+		gtk_container_set_border_width((GtkContainer *)check, 12);
+		gtk_box_pack_start ((GtkBox *)((GtkDialog *) mbox)->vbox, check, TRUE, TRUE, 0);
+		gtk_widget_show (check);
+	}
+
+	button = gtk_dialog_run ((GtkDialog *) mbox);
+	if (promptkey)
+		gconf_client_set_bool(gconf, promptkey, !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check)), NULL);
+
+	gtk_widget_destroy(mbox);
+	g_object_unref (gconf);
+
+	return button == GTK_RESPONSE_YES;
+}
+
+/* copy of mail_tool_remove_xevolution_headers */
+static struct _camel_header_raw *
+emcu_remove_xevolution_headers (CamelMimeMessage *message)
+{
+	struct _camel_header_raw *scan, *list = NULL;
+
+	for (scan = ((CamelMimePart *)message)->headers;scan;scan=scan->next)
+		if (!strncmp(scan->name, "X-Evolution", 11))
+			camel_header_raw_append(&list, scan->name, scan->value, scan->offset);
+
+	for (scan=list;scan;scan=scan->next)
+		camel_medium_remove_header((CamelMedium *)message, scan->name);
+
+	return list;
+}
+
 static EDestination**
 destination_list_to_vector_sized (GList *list, gint n)
 {
@@ -2537,7 +2634,7 @@ handle_multipart_signed (EMsgComposer *composer,
 		gchar *html;
 		gssize length;
 
-		html = em_utils_part_to_html (mime_part, &length, NULL);
+		html = emcu_part_to_html (mime_part, &length, NULL);
 		e_msg_composer_set_pending_body (composer, html, length);
 	} else {
 		e_msg_composer_attach (composer, mime_part);
@@ -2602,7 +2699,7 @@ handle_multipart_encrypted (EMsgComposer *composer,
 		gchar *html;
 		gssize length;
 
-		html = em_utils_part_to_html (mime_part, &length, NULL);
+		html = emcu_part_to_html (mime_part, &length, NULL);
 		e_msg_composer_set_pending_body (composer, html, length);
 	} else {
 		e_msg_composer_attach (composer, mime_part);
@@ -2668,7 +2765,7 @@ handle_multipart_alternative (EMsgComposer *composer,
 		gchar *html;
 		gssize length;
 
-		html = em_utils_part_to_html (text_part, &length, NULL);
+		html = emcu_part_to_html (text_part, &length, NULL);
 		e_msg_composer_set_pending_body (composer, html, length);
 	}
 }
@@ -2718,7 +2815,7 @@ handle_multipart (EMsgComposer *composer,
 
 			/* Since the first part is not multipart/alternative,
 			 * this must be the body. */
-			html = em_utils_part_to_html (mime_part, &length, NULL);
+			html = emcu_part_to_html (mime_part, &length, NULL);
 			e_msg_composer_set_pending_body (composer, html, length);
 		} else if (camel_mime_part_get_content_id (mime_part) ||
 			   camel_mime_part_get_content_location (mime_part)) {
@@ -2992,7 +3089,7 @@ e_msg_composer_new_with_message (CamelMimeMessage *message)
 	}
 
 	/* Remove any other X-Evolution-* headers that may have been set */
-	xev = mail_tool_remove_xevolution_headers (message);
+	xev = emcu_remove_xevolution_headers (message);
 	camel_header_raw_clear (&xev);
 	
 	/* Check for receipt request */
@@ -3045,7 +3142,7 @@ e_msg_composer_new_with_message (CamelMimeMessage *message)
 		gchar *html;
 		gssize length;
 
-		html = em_utils_part_to_html ((CamelMimePart *)message, &length, NULL);
+		html = emcu_part_to_html ((CamelMimePart *)message, &length, NULL);
 		e_msg_composer_set_pending_body (composer, html, length);
 	}
 
@@ -3684,7 +3781,7 @@ e_msg_composer_get_message (EMsgComposer *composer,
 	store = e_attachment_view_get_store (view);
 
 	if (e_attachment_store_get_num_loading (store) > 0) {
-		if (!em_utils_prompt_user (GTK_WINDOW (composer), NULL,
+		if (!emcu_prompt_user (GTK_WINDOW (composer), NULL,
 			"mail-composer:ask-send-message-pending-download", NULL)) {
 			return NULL;
 		}
diff --git a/configure.in b/configure.in
index b174c9e..ab099f9 100644
--- a/configure.in
+++ b/configure.in
@@ -157,7 +157,7 @@ case "$host" in
     HAL_REQUIREMENT=''
     ;;
 *)  os_win32=no
-    NO_UNDEFINED=''
+    NO_UNDEFINED='-Wl,-no-undefined'
     SOEXT='.so'
     SA_JUNK_PLUGIN=sa-junk-plugin 
     BF_JUNK_PLUGIN=bogo-junk-plugin
@@ -171,6 +171,9 @@ AM_CONDITIONAL(OS_WIN32, [test $os_win32 = yes])
 AC_SUBST(NO_UNDEFINED)
 AC_SUBST(SOEXT)
 
+MATH_LIB="-lm"
+AC_SUBST(MATH_LIB)
+
 if test "$os_win32" = "yes"; then
   AC_CHECK_TOOL(WINDRES, windres, :)
 else
@@ -1105,7 +1108,7 @@ if test "x${enable_nss}" = "xyes" || test "x${enable_nss}" = "xstatic"; then
 				nsprlibs="$DL_LIB -lplc4 -lplds4 -lnspr4 $PTHREAD_LIB"
 			fi
 			
-			AC_CACHE_CHECK([for Mozilla nspr libraries], moz_nspr_libs,
+			AC_CACHE_CHECK([for Mozilla nspr libraries], ac_cv_moz_nspr_libs,
 			[
 		       		LIBS_save="$LIBS"
 				CFLAGS="$CFLAGS $MANUAL_NSPR_CFLAGS"
@@ -1118,12 +1121,12 @@ if test "x${enable_nss}" = "xyes" || test "x${enable_nss}" = "xstatic"; then
 		       			LDFLAGS="$LDFLAGS"
 				fi
 				
-				AC_TRY_LINK_FUNC(PR_Init, moz_nspr_libs="yes", moz_nspr_libs="no")
+				AC_TRY_LINK_FUNC(PR_Init, ac_cv_moz_nspr_libs="yes", ac_cv_moz_nspr_libs="no")
 				CFLAGS="$CFLAGS_save"
 				LDFLAGS="$LDFLAGS_save"
 	 			LIBS="$LIBS_save"
 			])
-			if test "x$moz_nspr_libs" != "xno"; then
+			if test "x$ac_cv_moz_nspr_libs" != "xno"; then
 				have_nspr_libs="yes"
 				MANUAL_NSPR_LIBS="-L$with_nspr_libs $nsprlibs"
 			else
@@ -1184,21 +1187,21 @@ if test "x${enable_nss}" = "xyes" || test "x${enable_nss}" = "xstatic"; then
 		 		nsslibs="-lssl3 -lsmime3 -lnss3 $SOFTOKN3_LIB"
 	 		fi	
 			
-			AC_CACHE_CHECK([for Mozilla nss libraries], moz_nss_libs,
+			AC_CACHE_CHECK([for Mozilla nss libraries], ac_cv_moz_nss_libs,
 			[
 	 			LIBS_save="$LIBS"
 				LDFLAGS="$LDFLAGS -L$with_nspr_libs $nsprlibs -L$with_nss_libs $nsslibs"
 		      		LIBS="$nsslibs $nsprlibs"
-				AC_TRY_LINK_FUNC(NSS_Init, moz_nss_libs="yes", moz_nss_libs="no")
-				if test "$moz_nss_libs" = no; then
+				AC_TRY_LINK_FUNC(NSS_Init, ac_cv_moz_nss_libs="yes", ac_cv_moz_nss_libs="no")
+				if test "$ac_cv_moz_nss_libs" = no; then
 					nsslibs="-lssl3 -lsmime3 -lnss3 $SOFTOKN3_LIB"
 					LDFLAGS="$LDFLAGS -L$with_nspr_libs $nsprlibs -L$with_nss_libs $nsslibs"
-					AC_TRY_LINK_FUNC(NSS_Init, moz_nss_libs="yes", moz_nss_libs="no")	
+					AC_TRY_LINK_FUNC(NSS_Init, ac_cv_moz_nss_libs="yes", ac_cv_moz_nss_libs="no")	
 				fi
 				LDFLAGS="$LDFLAGS_save"
 	 			LIBS="$LIBS_save"
 			])
-			if test "$moz_nss_libs" != no; then
+			if test "$ac_cv_moz_nss_libs" != no; then
 				AC_DEFINE(HAVE_NSS)
 				AC_DEFINE(HAVE_SSL)
 				AC_DEFINE_UNQUOTED(MOZILLA_NSS_LIB_DIR,"$with_nss_libs", [Define to the full path of mozilla nss library])
@@ -1553,6 +1556,8 @@ EVO_SET_COMPILE_FLAGS(E_UTIL, libbonoboui-2.0 libglade-2.0 libgnomeui-2.0 libeda
 AC_SUBST(E_UTIL_CFLAGS)
 AC_SUBST(E_UTIL_LIBS)
 
+E_UTIL_LIBS="$E_UTIL_LIBS $MATH_LIB"
+
 EVO_SET_COMPILE_FLAGS(TZDIALOG, libecal-$EDS_PACKAGE, $GNOME_PLATFORM_CFLAGS, $GNOME_PLATFORM_LIBS)
 AC_SUBST(TZDIALOG_CFLAGS)
 AC_SUBST(TZDIALOG_LIBS)
@@ -1585,7 +1590,7 @@ fi
 AM_CONDITIONAL(NM_SUPPORT, test x$NM_SUPPORT = xyes)
 
 
-EVO_SET_COMPILE_FLAGS(SHELL, libgnomeui-2.0 libbonoboui-2.0 libglade-2.0 gio-2.0 gconf-2.0 gobject-2.0 libgtkhtml-$GTKHTML_PACKAGE $NM_SUPPORT_PACKAGES unique-1.0)
+EVO_SET_COMPILE_FLAGS(SHELL, libgnomeui-2.0 libbonoboui-2.0 libglade-2.0 gio-2.0 gconf-2.0 gobject-2.0 libgtkhtml-$GTKHTML_PACKAGE $NM_SUPPORT_PACKAGES unique-1.0 libedataserverui-$EDS_PACKAGE)
 
 AC_SUBST(SHELL_CFLAGS)
 AC_SUBST(SHELL_LIBS)
@@ -2004,11 +2009,6 @@ AC_OUTPUT([ po/Makefile.in
 Makefile
 win32/Makefile
 a11y/Makefile
-a11y/addressbook/Makefile
-a11y/calendar/Makefile
-a11y/widgets/Makefile
-a11y/e-table/Makefile
-a11y/e-text/Makefile
 addressbook/Makefile
 addressbook/conduit/Makefile
 addressbook/gui/Makefile
@@ -2040,6 +2040,7 @@ doc/Makefile
 doc/reference/Makefile
 doc/reference/shell/Makefile
 e-util/Makefile
+em-format/Makefile
 filter/Makefile
 help/Makefile
 help/quickref/Makefile
@@ -2108,7 +2109,6 @@ mail/default/sr/Makefile
 mail/default/sr latin/Makefile
 mail/default/sv/Makefile
 mail/default/hu/Makefile
-mail/importers/Makefile
 plugins/Makefile
 plugins/addressbook-file/Makefile
 plugins/attachment-reminder/Makefile
diff --git a/e-util/Makefile.am b/e-util/Makefile.am
index d06a349..934c20b 100644
--- a/e-util/Makefile.am
+++ b/e-util/Makefile.am
@@ -4,7 +4,6 @@ ecpsdir = $(privdatadir)/ecps
 ruledir = $(privdatadir)
 
 if OS_WIN32
-WIN32_BOOTSTRAP_LIBS = $(top_builddir)/win32/libemiscwidgets.la
 PLATFORM_SOURCES = e-win32-reloc.c
 endif
 
@@ -78,6 +77,7 @@ eutilinclude_HEADERS = 				\
 	e-text-event-processor-types.h		\
 	e-text-event-processor.h		\
 	e-util.h				\
+	e-unicode.h				\
 	e-xml-utils.h
 
 libeutil_la_SOURCES =				\
@@ -119,6 +119,7 @@ libeutil_la_SOURCES =				\
 	e-text-event-processor-emacs-like.c     \
 	e-text-event-processor.c                \
 	e-util.c				\
+	e-unicode.c				\
 	e-util-private.h			\
 	e-xml-utils.c				\
 	gconf-bridge.c				\
@@ -131,7 +132,6 @@ MARSHAL_GENERATED = e-marshal.c e-marshal.h
 libeutil_la_LDFLAGS = $(NO_UNDEFINED)
 
 libeutil_la_LIBADD = 		\
-	$(WIN32_BOOTSTRAP_LIBS)	\
 	$(ICONV_LIBS)		\
 	$(E_UTIL_LIBS)		\
 	$(GNOME_PILOT_LIBS)	\
diff --git a/widgets/misc/e-unicode.c b/e-util/e-unicode.c
similarity index 100%
rename from widgets/misc/e-unicode.c
rename to e-util/e-unicode.c
diff --git a/widgets/misc/e-unicode.h b/e-util/e-unicode.h
similarity index 100%
rename from widgets/misc/e-unicode.h
rename to e-util/e-unicode.h
diff --git a/em-format/Makefile.am b/em-format/Makefile.am
new file mode 100644
index 0000000..e5d0fca
--- /dev/null
+++ b/em-format/Makefile.am
@@ -0,0 +1,22 @@
+INCLUDES =						\
+	-I$(top_srcdir)					\
+	$(EVOLUTION_MAIL_CFLAGS)
+
+noinst_LTLIBRARIES = libemformat.la
+
+libemformat_la_SOURCES =	\
+	em-format.h		\
+	em-format.c		\
+	em-format-quote.h	\
+	em-format-quote.c	\
+	em-stripsig-filter.c	\
+	em-stripsig-filter.h
+
+libemformat_la_LDFLAGS = -avoid-version $(NO_UNDEFINED)
+
+libemformat_la_LIBADD =				\
+	$(top_builddir)/e-util/libeutil.la	\
+	$(top_builddir)/shell/libeshell.la	\
+	$(EVOLUTION_MAIL_LIBS)
+
+-include $(top_srcdir)/git.mk
diff --git a/mail/em-format-quote.c b/em-format/em-format-quote.c
similarity index 98%
rename from mail/em-format-quote.c
rename to em-format/em-format-quote.c
index 43c7e2e..5503cca 100644
--- a/mail/em-format-quote.c
+++ b/em-format/em-format-quote.c
@@ -40,7 +40,6 @@
 
 #include "em-stripsig-filter.h"
 #include "em-format-quote.h"
-#include "mail-config.h"
 
 struct _EMFormatQuotePrivate {
 	int dummy;
@@ -158,13 +157,16 @@ emfq_format_clone(EMFormat *emf, CamelFolder *folder, const char *uid, CamelMime
 {
 	EMFormatQuote *emfq = (EMFormatQuote *) emf;
 	const EMFormatHandler *handle;
+	GConfClient *gconf;
 
 	/* Chain up to parent's format_clone() method. */
 	EM_FORMAT_CLASS (parent_class)->format_clone (emf, folder, uid, msg, src);
 
+	gconf = gconf_client_get_default ();
 	camel_stream_reset(emfq->stream);
-	if (gconf_client_get_bool(mail_config_get_gconf_client(), "/apps/evolution/mail/composer/top_signature", NULL))
+	if (gconf_client_get_bool(gconf, "/apps/evolution/mail/composer/top_signature", NULL))
 		emfq_format_empty_line(emf, emfq->stream, (CamelMimePart *)msg, NULL);
+	g_object_unref (gconf);
 	handle = em_format_find_handler(emf, "x-evolution/message/prefix");
 	if (handle)
 		handle->handler(emf, emfq->stream, (CamelMimePart *)msg, handle);
diff --git a/mail/em-format-quote.h b/em-format/em-format-quote.h
similarity index 98%
rename from mail/em-format-quote.h
rename to em-format/em-format-quote.h
index 87f0151..d34548a 100644
--- a/mail/em-format-quote.h
+++ b/em-format/em-format-quote.h
@@ -24,7 +24,7 @@
 #define EM_FORMAT_QUOTE_H
 
 #include <camel/camel-stream.h>
-#include "mail/em-format.h"
+#include "em-format.h"
 
 /* Standard GObject macros */
 #define EM_TYPE_FORMAT_QUOTE \
diff --git a/mail/em-format.c b/em-format/em-format.c
similarity index 94%
rename from mail/em-format.c
rename to em-format/em-format.c
index 27c627a..267c953 100644
--- a/mail/em-format.c
+++ b/em-format/em-format.c
@@ -50,9 +50,9 @@
 #include <camel/camel-mime-filter-pgp.h>
 
 #include "em-format.h"
-#include "em-utils.h"
-#include "mail-config.h"
-#include "mail-session.h"
+#include "e-util/e-util.h"
+#include "shell/e-shell.h"
+#include "shell/e-shell-settings.h"
 
 #define d(x)
 
@@ -170,6 +170,9 @@ emf_class_init (EMFormatClass *class)
 static void
 emf_init (EMFormat *emf)
 {
+	EShell *shell;
+	EShellSettings *shell_settings;
+
 	emf->inline_table = g_hash_table_new_full (
 		g_str_hash, g_str_equal,
 		(GDestroyNotify) NULL,
@@ -180,7 +183,12 @@ emf_init (EMFormat *emf)
 	em_format_default_headers(emf);
 	emf->part_id = g_string_new("");
 
-	emf->session = session;
+	shell = e_shell_get_default ();
+	shell_settings = e_shell_get_shell_settings (shell);
+
+	emf->session = e_shell_settings_get_pointer (shell_settings, "mail-session");
+	g_return_if_fail (emf->session != NULL);
+
 	camel_object_ref (emf->session);
 }
 
@@ -637,7 +645,7 @@ em_format_part_as(EMFormat *emf, CamelStream *stream, CamelMimePart *part, const
 
 	if (mime_type != NULL) {
 		if (g_ascii_strcasecmp(mime_type, "application/octet-stream") == 0) {
-			emf->snoop_mime_type = mime_type = em_utils_snoop_type(part);
+			emf->snoop_mime_type = mime_type = em_format_snoop_type(part);
 			if (mime_type == NULL)
 				mime_type = "application/octet-stream";
 		}
@@ -1198,6 +1206,7 @@ em_format_format_text(EMFormat *emf, CamelStream *stream, CamelDataWrapper *dw)
 	CamelStream *mem_stream = NULL;
 	size_t size;
 	size_t max;
+	GConfClient *gconf;
 
 	if (emf->charset) {
 		charset = emf->charset;
@@ -1235,7 +1244,16 @@ em_format_format_text(EMFormat *emf, CamelStream *stream, CamelDataWrapper *dw)
 		camel_object_unref(filter);
 	}
 
-	max = mail_config_get_message_limit();
+	max = -1;
+
+	gconf = gconf_client_get_default ();
+	if (gconf_client_get_bool (gconf, "/apps/evolution/mail/display/force_message_limit", NULL)) {
+		max = gconf_client_get_int (gconf, "/apps/evolution/mail/display/message_text_part_limit", NULL);
+		if (max == 0)
+			max = -1;
+	}
+	g_object_unref (gconf);
+
 	size = camel_data_wrapper_decode_to_stream(emf->mode == EM_FORMAT_SOURCE ? (CamelDataWrapper *)dw: camel_medium_get_content_object((CamelMedium *)dw), (CamelStream *)filter_stream);
 	camel_stream_flush((CamelStream *)filter_stream);
 	camel_object_unref(filter_stream);
@@ -1293,7 +1311,6 @@ emf_application_xpkcs7mime(EMFormat *emf, CamelStream *stream, CamelMimePart *pa
 {
 	CamelCipherContext *context;
 	CamelException *ex;
-	extern CamelSession *session;
 	CamelMimePart *opart;
 	CamelCipherValidity *valid;
 	struct _EMFormatCache *emfc;
@@ -1307,7 +1324,7 @@ emf_application_xpkcs7mime(EMFormat *emf, CamelStream *stream, CamelMimePart *pa
 
 	ex = camel_exception_new();
 
-	context = camel_smime_context_new(session);
+	context = camel_smime_context_new(emf->session);
 
 	opart = camel_mime_part_new();
 	valid = camel_cipher_decrypt(context, part, opart, ex);
@@ -1793,7 +1810,7 @@ emf_inlinepgp_encrypted(EMFormat *emf, CamelStream *stream, CamelMimePart *ipart
 
 	/* this ensures to show the 'opart' as inlined, if possible */
 	if (mime_type && g_ascii_strcasecmp (mime_type, "application/octet-stream") == 0) {
-		const char *snoop = em_utils_snoop_type (opart);
+		const char *snoop = em_format_snoop_type (opart);
 
 		if (snoop)
 			camel_data_wrapper_set_mime_type (dw, snoop);
@@ -1844,3 +1861,85 @@ emf_builtin_init(EMFormatClass *class)
 	for (i=0;i<sizeof(type_builtin_table)/sizeof(type_builtin_table[0]);i++)
 		g_hash_table_insert(class->type_handlers, type_builtin_table[i].mime_type, &type_builtin_table[i]);
 }
+
+/**
+ * em_format_snoop_type:
+ * @part:
+ *
+ * Tries to snoop the mime type of a part.
+ *
+ * Return value: NULL if unknown (more likely application/octet-stream).
+ **/
+const char *
+em_format_snoop_type (CamelMimePart *part)
+{
+	/* cache is here only to be able still return const char * */
+	static GHashTable *types_cache = NULL;
+
+	const char *filename;
+	char *name_type = NULL, *magic_type = NULL, *res, *tmp;
+	CamelDataWrapper *dw;
+
+	filename = camel_mime_part_get_filename (part);
+	if (filename != NULL)
+		name_type = e_util_guess_mime_type (filename, FALSE);
+
+	dw = camel_medium_get_content_object((CamelMedium *)part);
+	if (!camel_data_wrapper_is_offline(dw)) {
+		CamelStreamMem *mem = (CamelStreamMem *)camel_stream_mem_new();
+
+		if (camel_data_wrapper_decode_to_stream(dw, (CamelStream *)mem) > 0) {
+			char *ct = g_content_type_guess (filename, mem->buffer->data, mem->buffer->len, NULL);
+
+			if (ct)
+				magic_type = g_content_type_get_mime_type (ct);
+
+			g_free (ct);
+		}
+		camel_object_unref(mem);
+	}
+
+	d(printf("snooped part, magic_type '%s' name_type '%s'\n", magic_type, name_type));
+
+	/* If gvfs doesn't recognize the data by magic, but it
+	 * contains English words, it will call it text/plain. If the
+	 * filename-based check came up with something different, use
+	 * that instead and if it returns "application/octet-stream"
+	 * try to do better with the filename check.
+	 */
+
+	if (magic_type) {
+		if (name_type
+		    && (!strcmp(magic_type, "text/plain")
+			|| !strcmp(magic_type, "application/octet-stream")))
+			res = name_type;
+		else
+			res = magic_type;
+	} else
+		res = name_type;
+
+
+	if (res != name_type)
+		g_free (name_type);
+
+	if (res != magic_type)
+		g_free (magic_type);
+
+	if (!types_cache)
+		types_cache = g_hash_table_new_full (g_str_hash, g_str_equal, (GDestroyNotify) g_free, (GDestroyNotify) NULL);
+
+	if (res) {
+		tmp = g_hash_table_lookup (types_cache, res);
+		if (tmp) {
+			g_free (res);
+			res = tmp;
+		} else {
+			g_hash_table_insert (types_cache, res, res);
+		}
+	}
+
+	return res;
+
+	/* We used to load parts to check their type, we dont anymore,
+	   see bug #11778 for some discussion */
+}
diff --git a/mail/em-format.h b/em-format/em-format.h
similarity index 99%
rename from mail/em-format.h
rename to em-format/em-format.h
index f262d49..3057b3d 100644
--- a/mail/em-format.h
+++ b/em-format/em-format.h
@@ -396,7 +396,7 @@ void		em_format_part			(EMFormat *emf,
 void		em_format_merge_handler		(EMFormat *new,
 						 EMFormat *old);
 
-G_END_DECLS
+const char * em_format_snoop_type (CamelMimePart *part);
 
 G_END_DECLS
 
diff --git a/mail/em-stripsig-filter.c b/em-format/em-stripsig-filter.c
similarity index 100%
rename from mail/em-stripsig-filter.c
rename to em-format/em-stripsig-filter.c
diff --git a/mail/em-stripsig-filter.h b/em-format/em-stripsig-filter.h
similarity index 100%
rename from mail/em-stripsig-filter.h
rename to em-format/em-stripsig-filter.h
diff --git a/mail/Makefile.am b/mail/Makefile.am
index 11ee7f5..56a9464 100644
--- a/mail/Makefile.am
+++ b/mail/Makefile.am
@@ -1,4 +1,4 @@
-SUBDIRS = default importers
+SUBDIRS = default
 
 mailincludedir = $(privincludedir)/mail
 
@@ -7,6 +7,7 @@ INCLUDES =						\
 	-I$(top_srcdir)/widgets/e-text			\
 	-I$(top_srcdir)/widgets/misc			\
 	-I$(top_srcdir)					\
+	-I$(top_srcdir)/em-format			\
 	-I$(top_srcdir)/mail				\
 	-I$(top_srcdir)/composer			\
 	-I$(top_builddir)/composer			\
@@ -112,8 +113,6 @@ libevolution_module_mail_la_SOURCES =			\
 	em-folder-tree-model.h				\
 	em-folder-utils.c				\
 	em-folder-utils.h				\
-	em-format.c					\
-	em-format.h					\
 	em-format-hook.c				\
 	em-format-hook.h				\
 	em-format-html.c				\
@@ -122,8 +121,6 @@ libevolution_module_mail_la_SOURCES =			\
 	em-format-html-display.h			\
 	em-format-html-print.c				\
 	em-format-html-print.h				\
-	em-format-quote.c				\
-	em-format-quote.h				\
 	em-html-stream.c				\
 	em-html-stream.h				\
 	em-icon-stream.c				\
@@ -142,8 +139,6 @@ libevolution_module_mail_la_SOURCES =			\
 	em-popup.h					\
 	em-search-context.c				\
 	em-search-context.h				\
-	em-stripsig-filter.c				\
-	em-stripsig-filter.h				\
 	em-subscribe-editor.c				\
 	em-subscribe-editor.h				\
 	em-sync-stream.c				\
@@ -179,7 +174,12 @@ libevolution_module_mail_la_SOURCES =			\
 	message-tag-editor.c				\
 	message-tag-editor.h				\
 	message-tag-followup.c				\
-	message-tag-followup,h
+	message-tag-followup.h				\
+	importers/mail-importer.c			\
+	importers/mail-importer.h			\
+	importers/elm-importer.c			\
+	importers/pine-importer.c			\
+	importers/evolution-mbox-importer.c
 
 libevolution_module_mail_la_LIBADD =			\
 	$(top_builddir)/e-util/libeutil.la		\
@@ -188,7 +188,6 @@ libevolution_module_mail_la_LIBADD =			\
 	$(top_builddir)/widgets/table/libetable.la	\
 	$(top_builddir)/widgets/text/libetext.la	\
 	$(top_builddir)/widgets/misc/libemiscwidgets.la	\
-	$(top_builddir)/mail/importers/libevolution-mail-importers.la \
 	$(top_builddir)/addressbook/gui/contact-editor/libecontacteditor.la \
 	$(top_builddir)/addressbook/gui/contact-list-editor/libecontactlisteditor.la \
 	$(SMIME_LIBS)
diff --git a/mail/em-format-hook.h b/mail/em-format-hook.h
index 3665bbf..4c7dc16 100644
--- a/mail/em-format-hook.h
+++ b/mail/em-format-hook.h
@@ -28,7 +28,7 @@
 #include "libedataserver/e-msgport.h"
 #include "e-util/e-plugin.h"
 
-#include "mail/em-format.h"
+#include "em-format/em-format.h"
 
 #ifdef __cplusplus
 extern "C" {
diff --git a/mail/em-format-html.h b/mail/em-format-html.h
index d355563..758307e 100644
--- a/mail/em-format-html.h
+++ b/mail/em-format-html.h
@@ -28,7 +28,7 @@
 #ifndef EM_FORMAT_HTML_H
 #define EM_FORMAT_HTML_H
 
-#include <mail/em-format.h>
+#include <em-format/em-format.h>
 #include <mail/mail-config.h>
 #include <camel/camel-medium.h>
 #include <camel/camel-mime-part.h>
diff --git a/mail/em-inline-filter.c b/mail/em-inline-filter.c
index 07c7afa..99d6411 100644
--- a/mail/em-inline-filter.c
+++ b/mail/em-inline-filter.c
@@ -32,6 +32,7 @@
 #include <camel/camel-stream-mem.h>
 
 #include "em-utils.h"
+#include "em-format/em-format.h"
 
 #define d(x)
 
@@ -176,7 +177,7 @@ emif_add_part(EMInlineFilter *emif, const char *data, int len)
 
 	/* pre-snoop the mime type of unknown objects, and poke and hack it into place */
 	if (camel_content_type_is(dw->mime_type, "application", "octet-stream")
-	    && (mimetype = em_utils_snoop_type(part))
+	    && (mimetype = em_format_snoop_type(part))
 	    && strcmp(mimetype, "application/octet-stream") != 0) {
 		camel_data_wrapper_set_mime_type(dw, mimetype);
 		camel_mime_part_set_content_type(part, mimetype);
diff --git a/mail/em-mailer-prefs.c b/mail/em-mailer-prefs.c
index 379d126..6c4fff4 100644
--- a/mail/em-mailer-prefs.c
+++ b/mail/em-mailer-prefs.c
@@ -28,7 +28,7 @@
 #include <glib/gi18n-lib.h>
 
 #include "em-mailer-prefs.h"
-#include "em-format.h"
+#include "em-format/em-format.h"
 
 #include <camel/camel-iconv.h>
 #include <gtkhtml/gtkhtml-properties.h>
diff --git a/mail/em-utils.c b/mail/em-utils.c
index 45f54ab..2a7ce74 100644
--- a/mail/em-utils.c
+++ b/mail/em-utils.c
@@ -1628,52 +1628,6 @@ em_utils_get_proxy_uri (const char *pUri)
 }
 
 /**
- * em_utils_part_to_html:
- * @part:
- *
- * Converts a mime part's contents into html text.  If @credits is given,
- * then it will be used as an attribution string, and the
- * content will be cited.  Otherwise no citation or attribution
- * will be performed.
- *
- * Return Value: The part in displayable html format.
- **/
-char *
-em_utils_part_to_html(CamelMimePart *part, ssize_t *len, EMFormat *source)
-{
-	EMFormatQuote *emfq;
-	CamelStreamMem *mem;
-	GByteArray *buf;
-	char *text;
-
-	buf = g_byte_array_new ();
-	mem = (CamelStreamMem *) camel_stream_mem_new ();
-	camel_stream_mem_set_byte_array (mem, buf);
-
-	emfq = em_format_quote_new(NULL, (CamelStream *)mem, 0);
-	((EMFormat *) emfq)->composer = TRUE;
-	if (source) {
-		/* copy over things we can, other things are internal, perhaps need different api than 'clone' */
-		if (source->default_charset)
-			em_format_set_default_charset((EMFormat *)emfq, source->default_charset);
-		if (source->charset)
-			em_format_set_default_charset((EMFormat *)emfq, source->charset);
-	}
-	em_format_part((EMFormat *) emfq, (CamelStream *)mem, part);
-	g_object_unref(emfq);
-
-	camel_stream_write((CamelStream *) mem, "", 1);
-	camel_object_unref(mem);
-
-	text = (char *)buf->data;
-	if (len)
-		*len = buf->len-1;
-	g_byte_array_free (buf, FALSE);
-
-	return text;
-}
-
-/**
  * em_utils_message_to_html:
  * @message:
  * @credits:
@@ -2328,88 +2282,6 @@ em_utils_contact_photo (struct _CamelInternetAddress *cia, gboolean local)
 	return part;
 }
 
-/**
- * em_utils_snoop_type:
- * @part:
- *
- * Tries to snoop the mime type of a part.
- *
- * Return value: NULL if unknown (more likely application/octet-stream).
- **/
-const char *
-em_utils_snoop_type(CamelMimePart *part)
-{
-	/* cache is here only to be able still return const char * */
-	static GHashTable *types_cache = NULL;
-
-	const char *filename;
-	char *name_type = NULL, *magic_type = NULL, *res, *tmp;
-	CamelDataWrapper *dw;
-
-	filename = camel_mime_part_get_filename (part);
-	if (filename != NULL)
-		name_type = e_util_guess_mime_type (filename, FALSE);
-
-	dw = camel_medium_get_content_object((CamelMedium *)part);
-	if (!camel_data_wrapper_is_offline(dw)) {
-		CamelStreamMem *mem = (CamelStreamMem *)camel_stream_mem_new();
-
-		if (camel_data_wrapper_decode_to_stream(dw, (CamelStream *)mem) > 0) {
-			char *ct = g_content_type_guess (filename, mem->buffer->data, mem->buffer->len, NULL);
-
-			if (ct)
-				magic_type = g_content_type_get_mime_type (ct);
-
-			g_free (ct);
-		}
-		camel_object_unref(mem);
-	}
-
-	d(printf("snooped part, magic_type '%s' name_type '%s'\n", magic_type, name_type));
-
-	/* If gvfs doesn't recognize the data by magic, but it
-	 * contains English words, it will call it text/plain. If the
-	 * filename-based check came up with something different, use
-	 * that instead and if it returns "application/octet-stream"
-	 * try to do better with the filename check.
-	 */
-
-	if (magic_type) {
-		if (name_type
-		    && (!strcmp(magic_type, "text/plain")
-			|| !strcmp(magic_type, "application/octet-stream")))
-			res = name_type;
-		else
-			res = magic_type;
-	} else
-		res = name_type;
-
-
-	if (res != name_type)
-		g_free (name_type);
-
-	if (res != magic_type)
-		g_free (magic_type);
-
-	if (!types_cache)
-		types_cache = g_hash_table_new_full (g_str_hash, g_str_equal, (GDestroyNotify) g_free, (GDestroyNotify) NULL);
-
-	if (res) {
-		tmp = g_hash_table_lookup (types_cache, res);
-		if (tmp) {
-			g_free (res);
-			res = tmp;
-		} else {
-			g_hash_table_insert (types_cache, res, res);
-		}
-	}
-
-	return res;
-
-	/* We used to load parts to check their type, we dont anymore,
-	   see bug #11778 for some discussion */
-}
-
 void
 em_utils_clear_get_password_canceled_accounts_flag (void)
 {
diff --git a/mail/em-utils.h b/mail/em-utils.h
index 60c6e22..3167dba 100644
--- a/mail/em-utils.h
+++ b/mail/em-utils.h
@@ -83,7 +83,6 @@ void em_utils_adjustment_page(GtkAdjustment *adj, gboolean down);
 char *em_utils_get_proxy_uri (const char *uri);
 
 /* FIXME: should this have an override charset? */
-char *em_utils_part_to_html(CamelMimePart *part, ssize_t *len, struct _EMFormat *source);
 char *em_utils_message_to_html(CamelMimeMessage *msg, const char *credits, guint32 flags, ssize_t *len, struct _EMFormat *source, const char *append);
 
 void em_utils_expunge_folder (GtkWidget *parent, CamelFolder *folder);
@@ -104,8 +103,6 @@ void em_utils_show_info_silent (GtkWidget *widget);
 gboolean em_utils_in_addressbook (CamelInternetAddress *addr, gboolean local_only);
 CamelMimePart *em_utils_contact_photo (CamelInternetAddress *addr, gboolean local);
 
-const char *em_utils_snoop_type(CamelMimePart *part);
-
 /* clears flag 'get_password_canceled' at every known accounts, so if needed, get_password will show dialog */
 void em_utils_clear_get_password_canceled_accounts_flag (void);
 
diff --git a/mail/importers/Makefile.am b/mail/importers/Makefile.am
deleted file mode 100644
index 25b5648..0000000
--- a/mail/importers/Makefile.am
+++ /dev/null
@@ -1,31 +0,0 @@
-if OS_WIN32
-WIN32_BOOTSTRAP_LIBS = $(top_builddir)/win32/libevolution-mail.la
-endif
-
-privsolib_LTLIBRARIES = libevolution-mail-importers.la
-
-INCLUDES = -I.. 					\
-	-I$(srcdir)/..					\
-	-I$(top_srcdir)					\
-	-DG_LOG_DOMAIN=\"evolution-mail-importer\"	\
-	-I$(top_srcdir)/addressbook/backend             \
-	-I$(top_builddir)/addressbook/backend           \
-	-DEVOLUTION_PRIVDATADIR=\""$(privdatadir)"\"	\
-	$(IMPORTERS_CFLAGS)
-
-libevolution_mail_importers_la_SOURCES =	\
-	mail-importer.c				\
-	mail-importer.h				\
-	elm-importer.c				\
-	pine-importer.c				\
-	evolution-mbox-importer.c
-
-libevolution_mail_importers_la_LDFLAGS = $(NO_UNDEFINED)
-
-libevolution_mail_importers_la_LIBADD =				\
-	$(WIN32_BOOTSTRAP_LIBS)					\
-	$(top_builddir)/e-util/libeutil.la			\
-	$(top_builddir)/filter/libfilter.la			\
-	$(IMPORTERS_LIBS)
-
--include $(top_srcdir)/git.mk
diff --git a/mail/mail-component.c b/mail/mail-component.c
index 926f571..6167cc5 100644
--- a/mail/mail-component.c
+++ b/mail/mail-component.c
@@ -37,7 +37,7 @@
 #include <libedataserver/e-data-server-util.h>
 #include "em-utils.h"
 #include "em-composer-utils.h"
-#include "em-format.h"
+#include "em-format/em-format.h"
 #include "em-folder-tree.h"
 #include "em-folder-browser.h"
 #include "em-message-browser.h"
diff --git a/plugins/attachment-reminder/Makefile.am b/plugins/attachment-reminder/Makefile.am
index fb77e5a..edfe538 100644
--- a/plugins/attachment-reminder/Makefile.am
+++ b/plugins/attachment-reminder/Makefile.am
@@ -22,6 +22,10 @@ plugin_LTLIBRARIES = liborg-gnome-evolution-attachment-reminder.la
 liborg_gnome_evolution_attachment_reminder_la_SOURCES = attachment-reminder.c 
 liborg_gnome_evolution_attachment_reminder_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 liborg_gnome_evolution_attachment_reminder_la_LIBADD =	\
+	$(top_builddir)/composer/libcomposer.la		\
+	$(top_builddir)/shell/libeshell.la		\
+	$(top_builddir)/addressbook/gui/contact-editor/libecontacteditor.la \
+	$(top_builddir)/addressbook/gui/contact-list-editor/libecontactlisteditor.la	\
 	$(top_builddir)/e-util/libeutil.la		\
 	$(top_builddir)/widgets/misc/libemiscwidgets.la	\
 	$(top_builddir)/mail/libevolution-module-mail.la	\
diff --git a/plugins/bbdb/Makefile.am b/plugins/bbdb/Makefile.am
index 1bf7604..ac42633 100644
--- a/plugins/bbdb/Makefile.am
+++ b/plugins/bbdb/Makefile.am
@@ -14,6 +14,9 @@ liborg_gnome_evolution_bbdb_la_SOURCES = bbdb.c bbdb.h gaimbuddies.c
 liborg_gnome_evolution_bbdb_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 liborg_gnome_evolution_bbdb_la_LIBADD =		\
 	$(top_builddir)/e-util/libeutil.la	\
+	$(top_builddir)/composer/libcomposer.la	\
+	$(top_builddir)/addressbook/gui/contact-editor/libecontacteditor.la \
+	$(top_builddir)/addressbook/gui/contact-list-editor/libecontactlisteditor.la \
 	$(EVOLUTION_ADDRESSBOOK_LIBS)
 
 EXTRA_DIST = org-gnome-evolution-bbdb.eplug.xml
diff --git a/plugins/bogo-junk-plugin/Makefile.am b/plugins/bogo-junk-plugin/Makefile.am
index 5dc0cc6..afa24a0 100644
--- a/plugins/bogo-junk-plugin/Makefile.am
+++ b/plugins/bogo-junk-plugin/Makefile.am
@@ -11,8 +11,10 @@ plugin_LTLIBRARIES = liborg-gnome-bogo-junk-plugin.la
 liborg_gnome_bogo_junk_plugin_la_SOURCES = bf-junk-filter.c
 liborg_gnome_bogo_junk_plugin_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 liborg_gnome_bogo_junk_plugin_la_LIBADD =	\
-	$(GNOME_PLATFORM_LIBS) \
-	$(top_builddir)/e-util/libeutil.la
+	$(top_builddir)/mail/libevolution-module-mail.la	\
+	$(top_builddir)/e-util/libeutil.la	\
+	$(EVOLUTION_MAIL_LIBS)			\
+	$(GNOME_PLATFORM_LIBS)
 
 schemadir       = $(GCONF_SCHEMA_FILE_DIR)
 schema_in_files = bogo-junk-plugin.schemas.in
diff --git a/plugins/email-custom-header/Makefile.am b/plugins/email-custom-header/Makefile.am
index 1953990..ca934e5 100644
--- a/plugins/email-custom-header/Makefile.am
+++ b/plugins/email-custom-header/Makefile.am
@@ -24,8 +24,7 @@ liborg_gnome_email_custom_header_la_LIBADD = 			\
 	$(top_builddir)/e-util/libeutil.la 			\
 	$(top_builddir)/widgets/misc/libemiscwidgets.la		\
 	$(top_builddir)/mail/libevolution-mail.la 		\
-	$(EVOLUTION_MAIL_LIBS)					\
-	$(NO_UNDEFINED_REQUIRED_LIBS)				
+	$(EVOLUTION_MAIL_LIBS)
 
 liborg_gnome_email_custom_header_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 
diff --git a/plugins/external-editor/Makefile.am b/plugins/external-editor/Makefile.am
index 4373b81..76234e3 100644
--- a/plugins/external-editor/Makefile.am
+++ b/plugins/external-editor/Makefile.am
@@ -1,11 +1,3 @@
-if OS_WIN32
-NO_UNDEFINED_REQUIRED_LIBS = \
-	$(EVOLUTION_MAIL_LIBS) \
-	$(GNOME_PLATFORM_LIBS) \
-	$(top_builddir)/e-util/libeutil.la \
-	$(top_builddir)/mail/libevolution-mail.la
-endif
-
 INCLUDES =						\
 	-DEVOLUTION_LOCALEDIR=\""$(localedir)"\"	\
 	-DEVOLUTION_TOOLSDIR=\""$(privlibexecdir)"\"	\
@@ -35,8 +27,15 @@ liborg_gnome_external_editor_la_SOURCES = 		\
 
 liborg_gnome_external_editor_la_LDFLAGS = \
 	-module -avoid-version $(NO_UNDEFINED)
-liborg_gnome_external_editor_la_LIBADD = \
-	$(NO_UNDEFINED_REQUIRED_LIBS)
+liborg_gnome_external_editor_la_LIBADD = 			\
+	$(top_builddir)/e-util/libeutil.la 			\
+	$(top_builddir)/composer/libcomposer.la 		\
+	$(top_builddir)/shell/libeshell.la			\
+	$(top_builddir)/addressbook/gui/contact-editor/libecontacteditor.la 		\
+	$(top_builddir)/addressbook/gui/contact-list-editor/libecontactlisteditor.la	\
+	$(top_builddir)/mail/libevolution-module-mail.la	\
+	$(EVOLUTION_MAIL_LIBS)					\
+	$(GNOME_PLATFORM_LIBS)
 
 schemadir       = $(GCONF_SCHEMA_FILE_DIR)
 schema_in_files = apps-evolution-external-editor.schemas.in
diff --git a/plugins/face/Makefile.am b/plugins/face/Makefile.am
index 2b6bfdb..afe3694 100644
--- a/plugins/face/Makefile.am
+++ b/plugins/face/Makefile.am
@@ -23,8 +23,7 @@ liborg_gnome_face_la_LIBADD = 			\
 	$(top_builddir)/e-util/libeutil.la 			\
 	$(top_builddir)/widgets/misc/libemiscwidgets.la		\
 	$(top_builddir)/mail/libevolution-mail.la 		\
-	$(EVOLUTION_MAIL_LIBS)					\
-	$(NO_UNDEFINED_REQUIRED_LIBS)				
+	$(EVOLUTION_MAIL_LIBS)
 
 liborg_gnome_face_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 
diff --git a/plugins/groupwise-features/Makefile.am b/plugins/groupwise-features/Makefile.am
index 3b0a830..42b68c5 100644
--- a/plugins/groupwise-features/Makefile.am
+++ b/plugins/groupwise-features/Makefile.am
@@ -1,7 +1,3 @@
-if OS_WIN32
-NO_UNDEFINED_REQUIRED_LIBS = $(top_builddir)/mail/libevolution-mail.la
-endif
-
 INCLUDES =						\
 	-I$(top_srcdir)					\
 	-I$(top_srcdir)/widgets				\
@@ -46,7 +42,6 @@ liborg_gnome_groupwise_features_la_LIBADD=			\
 	$(top_builddir)/calendar/gui/libevolution-calendar.la	\
 	$(top_builddir)/widgets/misc/libemiscwidgets.la		\
 	$(top_builddir)/filter/libfilter.la			\
-	$(NO_UNDEFINED_REQUIRED_LIBS)				\
 	$(EVOLUTION_CALENDAR_LIBS)				\
 	$(EVOLUTION_MAIL_LIBS)					\
 	$(CAMEL_GROUPWISE_LIBS)
diff --git a/plugins/imap-features/Makefile.am b/plugins/imap-features/Makefile.am
index 3b73e27..b0f34f1 100644
--- a/plugins/imap-features/Makefile.am
+++ b/plugins/imap-features/Makefile.am
@@ -1,7 +1,3 @@
-if OS_WIN32
-NO_UNDEFINED_REQUIRED_LIBS = $(top_builddir)/mail/libevolution-mail.la
-endif
-
 INCLUDES =						\
 	-I$(top_srcdir)					\
 	-I$(top_srcdir)/mail				\
@@ -19,8 +15,9 @@ plugin_LTLIBRARIES = liborg-gnome-imap-features.la
 liborg_gnome_imap_features_la_SOURCES = 	\
 	imap-headers.c	
 
-liborg_gnome_imap_features_la_LIBADD=		\
-	$(NO_UNDEFINED_REQUIRED_LIBS)		\
+liborg_gnome_imap_features_la_LIBADD=				\
+	$(top_builddir)/e-util/libeutil.la 			\
+	$(top_builddir)/mail/libevolution-module-mail.la	\
 	$(EVOLUTION_MAIL_LIBS)					
 
 
diff --git a/plugins/ipod-sync/Makefile.am b/plugins/ipod-sync/Makefile.am
index 5706834..218dd93 100644
--- a/plugins/ipod-sync/Makefile.am
+++ b/plugins/ipod-sync/Makefile.am
@@ -16,7 +16,7 @@ liborg_gnome_ipod_sync_evolution_la_SOURCES = \
 	format-handler.h                \
 	evolution-ipod-sync.h
 
-liborg_gnome_ipod_sync_evolution_la_LDFLAGS = -module -avoid-version
+liborg_gnome_ipod_sync_evolution_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 liborg_gnome_ipod_sync_evolution_la_LIBADD = 			\
 	$(EVOLUTION_CALENDAR_LIBS)
 
diff --git a/plugins/mail-notification/Makefile.am b/plugins/mail-notification/Makefile.am
index f3434fd..629697f 100644
--- a/plugins/mail-notification/Makefile.am
+++ b/plugins/mail-notification/Makefile.am
@@ -1,10 +1,3 @@
-if OS_WIN32
-NO_UNDEFINED_REQUIRED_LIBS =				\
-	$(top_builddir)/mail/libevolution-mail.la	\
-	$(top_builddir)/e-util/libeutil.la		\
-	$(GNOME_PLATFORM_LIBS)
-endif
-
 INCLUDES =					\
 	-I$(top_srcdir)				\
 	-I$(top_srcdir)/widgets			\
@@ -25,9 +18,11 @@ plugin_LTLIBRARIES = liborg-gnome-mail-notification.la
 liborg_gnome_mail_notification_la_SOURCES = mail-notification.c
 liborg_gnome_mail_notification_la_LDFLAGS = 	\
 	-module -avoid-version $(NO_UNDEFINED)
-liborg_gnome_mail_notification_la_LIBADD = 	\
-	$(LIBNOTIFY_LIBS)			\
-	$(NO_UNDEFINED_REQUIRED_LIBS)
+liborg_gnome_mail_notification_la_LIBADD = 			\
+	$(LIBNOTIFY_LIBS)					\
+	$(top_builddir)/e-util/libeutil.la 			\
+	$(top_builddir)/mail/libevolution-module-mail.la	\
+	$(GNOME_PLATFORM_LIBS)
 
 if ENABLE_DBUS
 liborg_gnome_mail_notification_la_LDFLAGS += $(NMN_LIBS)
diff --git a/plugins/mark-all-read/Makefile.am b/plugins/mark-all-read/Makefile.am
index 5c9feb1..dbd18dc 100644
--- a/plugins/mark-all-read/Makefile.am
+++ b/plugins/mark-all-read/Makefile.am
@@ -13,6 +13,7 @@ liborg_gnome_mark_all_read_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 liborg_gnome_mark_all_read_la_LIBADD = 			\
 	$(top_builddir)/e-util/libeutil.la		\
 	$(top_builddir)/mail/libevolution-module-mail.la	\
+	$(top_builddir)/shell/libeshell.la			\
 	$(EVOLUTION_MAIL_LIBS)
 
 EXTRA_DIST = org-gnome-mark-all-read.eplug.xml
diff --git a/plugins/mono/Makefile.am b/plugins/mono/Makefile.am
index f98e8be..6404920 100644
--- a/plugins/mono/Makefile.am
+++ b/plugins/mono/Makefile.am
@@ -9,7 +9,7 @@ plugin_DATA = org-gnome-evolution-mono.eplug
 plugin_LTLIBRARIES = liborg-gnome-evolution-mono.la
 
 liborg_gnome_evolution_mono_la_SOURCES = mono-plugin.c mono-plugin.h
-liborg_gnome_evolution_mono_la_LDFLAGS = -module -avoid-version
+liborg_gnome_evolution_mono_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 liborg_gnome_evolution_mono_la_LIBADD =	\
 	$(E_UTIL_LIBS)			\
 	$(MONO_LIBS)
diff --git a/plugins/plugin-manager/Makefile.am b/plugins/plugin-manager/Makefile.am
index 087c896..ab3c2ce 100644
--- a/plugins/plugin-manager/Makefile.am
+++ b/plugins/plugin-manager/Makefile.am
@@ -11,6 +11,7 @@ liborg_gnome_plugin_manager_la_SOURCES = plugin-manager.c
 liborg_gnome_plugin_manager_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 liborg_gnome_plugin_manager_la_LIBADD =			\
 	$(top_builddir)/e-util/libeutil.la		\
+	$(top_builddir)/shell/libeshell.la		\
 	$(EVOLUTION_MAIL_LIBS)
 
 EXTRA_DIST = \
diff --git a/plugins/profiler/Makefile.am b/plugins/profiler/Makefile.am
index 037219c..4a8a459 100644
--- a/plugins/profiler/Makefile.am
+++ b/plugins/profiler/Makefile.am
@@ -10,7 +10,7 @@ plugin_DATA = org-gnome-evolution-profiler.eplug
 plugin_LTLIBRARIES = liborg-gnome-evolution-profiler.la
 
 liborg_gnome_evolution_profiler_la_SOURCES = profiler.c
-liborg_gnome_evolution_profiler_la_LDFLAGS = -module -avoid-version
+liborg_gnome_evolution_profiler_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 
 EXTRA_DIST = org-gnome-evolution-profiler.eplug.xml
 
diff --git a/plugins/pst-import/Makefile.am b/plugins/pst-import/Makefile.am
index 0bb5fe4..b4b4f48 100644
--- a/plugins/pst-import/Makefile.am
+++ b/plugins/pst-import/Makefile.am
@@ -1,11 +1,3 @@
-if OS_WIN32
-NO_UNDEFINED_REQUIRED_LIBS =				\
-	$(top_builddir)/mail/libevolution-mail.la	\
-	$(top_builddir)/e-util/libeutil.la		\
-	$(EVOLUTION_CALENDAR_LIBS)			\
-	$(EVOLUTION_MAIL_LIBS)
-endif
-
 INCLUDES =						\
 	-I$(EVOLUTION_SOURCE)				\
 	-I$(top_srcdir)					\
@@ -24,7 +16,6 @@ liborg_gnome_pst_import_la_SOURCES = pst-importer.c
 liborg_gnome_pst_import_la_LDFLAGS = \
 	-module -avoid-version $(NO_UNDEFINED)
 liborg_gnome_pst_import_la_LIBADD =	\
-	$(NO_UNDEFINED_REQUIRED_LIBS)	\
 	$(LIBPST_LIBS)
 
 EXTRA_DIST = org-gnome-pst-import.eplug.xml
diff --git a/plugins/python/Makefile.am b/plugins/python/Makefile.am
index 77441e0..51cc65d 100644
--- a/plugins/python/Makefile.am
+++ b/plugins/python/Makefile.am
@@ -9,7 +9,7 @@ plugin_DATA = org-gnome-evolution-python.eplug
 plugin_LTLIBRARIES = liborg-gnome-evolution-python.la
 
 liborg_gnome_evolution_python_la_SOURCES = python-plugin-loader.c python-plugin-loader.h
-liborg_gnome_evolution_python_la_LDFLAGS = -module -avoid-version
+liborg_gnome_evolution_python_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 liborg_gnome_evolution_python_la_LIBADD =	\
 	-lpthread -ldl -lutil -lm \
 	$(PY_LIBS) \
diff --git a/plugins/python/example/Makefile.am b/plugins/python/example/Makefile.am
index b3530d8..a57ed57 100644
--- a/plugins/python/example/Makefile.am
+++ b/plugins/python/example/Makefile.am
@@ -9,9 +9,6 @@ plugin_DATA = \
 	org-gnome-hello-python-ui.xml				\
 	org-gnome-hello-python.eplug
 
-liborg_gnome_py_plug_test_la_LIBADD=			\
-	$(NO_UNDEFINED_REQUIRED_LIBS)		
-
 liborg_gnome_py_plug_test_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 
 errordir = $(privdatadir)/errors
diff --git a/plugins/sa-junk-plugin/Makefile.am b/plugins/sa-junk-plugin/Makefile.am
index 4e44fa5..dfbddb4 100644
--- a/plugins/sa-junk-plugin/Makefile.am
+++ b/plugins/sa-junk-plugin/Makefile.am
@@ -10,6 +10,11 @@ plugin_LTLIBRARIES = liborg-gnome-sa-junk-plugin.la
 liborg_gnome_sa_junk_plugin_la_SOURCES = em-junk-filter.c
 liborg_gnome_sa_junk_plugin_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 
+liborg_gnome_sa_junk_plugin_la_LIBADD =	\
+	$(top_builddir)/mail/libevolution-module-mail.la	\
+	$(top_builddir)/e-util/libeutil.la	\
+	$(EVOLUTION_MAIL_LIBS)			\
+	$(GNOME_PLATFORM_LIBS)
 
 BUILT_SOURCES = $(plugin_DATA) $(error_DATA)
 
diff --git a/plugins/tnef-attachments/Makefile.am b/plugins/tnef-attachments/Makefile.am
index 6ea2ce1..f216d7f 100644
--- a/plugins/tnef-attachments/Makefile.am
+++ b/plugins/tnef-attachments/Makefile.am
@@ -1,11 +1,3 @@
-if OS_WIN32
-NO_UNDEFINED_REQUIRED_LIBS = 				\
-	$(EVOLUTION_MAIL_LIBS)				\
-	$(GNOME_PLATFORM_LIBS)				\
-	$(top_builddir)/e-util/libeutil.la		\
-	$(top_builddir)/mail/libevolution-mail.la
-endif
-
 INCLUDES =						\
 	-I$(top_srcdir)					\
 	-DGETTEXT_PACKAGE="\"$(GETTEXT_PACKAGE)\""	\
@@ -21,7 +13,6 @@ plugin_LTLIBRARIES = liborg-gnome-tnef-attachments.la
 liborg_gnome_tnef_attachments_la_SOURCES = tnef-plugin.c
 liborg_gnome_tnef_attachments_la_LDFLAGS = -module -avoid-version  $(NO_UNDEFINED)
 liborg_gnome_tnef_attachments_la_LIBADD = 		\
-	$(NO_UNDEFINED_REQUIRED_LIBS)			\
 	-lytnef
 
 EXTRA_DIST = org-gnome-tnef-attachments.eplug.xml
diff --git a/plugins/tnef-attachments/tnef-plugin.c b/plugins/tnef-attachments/tnef-plugin.c
index f015286..6964d07 100644
--- a/plugins/tnef-attachments/tnef-plugin.c
+++ b/plugins/tnef-attachments/tnef-plugin.c
@@ -46,7 +46,7 @@
 #include <camel/camel-multipart.h>
 #include <camel/camel-stream-fs.h>
 
-#include <mail/em-format.h>
+#include <em-format/em-format.h>
 #include <mail/em-format-hook.h>
 #include <mail/em-utils.h>
 #include <e-util/e-error.h>
@@ -160,7 +160,7 @@ org_gnome_format_tnef(void *ep, EMFormatHookTarget *t)
 		camel_medium_set_content_object((CamelMedium *)part, content);
 		camel_object_unref(content);
 
-		type = em_utils_snoop_type(part);
+		type = em_format_snoop_type(part);
 		if (type)
 		    camel_data_wrapper_set_mime_type((CamelDataWrapper *)part, type);
 
diff --git a/plugins/vcard-inline/Makefile.am b/plugins/vcard-inline/Makefile.am
index 781eb53..f3c20d1 100644
--- a/plugins/vcard-inline/Makefile.am
+++ b/plugins/vcard-inline/Makefile.am
@@ -11,10 +11,17 @@ plugin_LTLIBRARIES = liborg-gnome-vcard-inline.la
 liborg_gnome_vcard_inline_la_SOURCES = vcard-inline.c
 liborg_gnome_vcard_inline_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
 liborg_gnome_vcard_inline_la_LIBADD =	\
-	$(EVOLUTION_ADDRESSBOOK_LIBS)
+	$(top_builddir)/mail/libevolution-module-mail.la	\
+	$(top_builddir)/addressbook/util/libeabutil.la		\
+	$(top_builddir)/addressbook/gui/widgets/libeabwidgets.la		\
+	$(top_builddir)/addressbook/gui/merging/libeabbookmerging.la		\
+	$(top_builddir)/addressbook/printing/libecontactprint.la		\
+	$(EVOLUTION_ADDRESSBOOK_LIBS)	\
 	$(EVOLUTION_MAIL_LIBS)
 
 EXTRA_DIST = org-gnome-vcard-inline.eplug.xml
 
 BUILT_SOURCES = $(plugin_DATA)
 CLEANFILES = $(BUILT_SOURCES)
+
+-include $(top_srcdir)/git.mk
diff --git a/po/LINGUAS b/po/LINGUAS
index 7bfdedb..992042f 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -6,7 +6,6 @@ ar
 as
 ast
 az
-be
 be latin
 bg
 bn
diff --git a/shell/Makefile.am b/shell/Makefile.am
index 92262d6..e8c8dc4 100644
--- a/shell/Makefile.am
+++ b/shell/Makefile.am
@@ -59,6 +59,7 @@ privsolib_LTLIBRARIES =	\
 eshellincludedir = $(privincludedir)/shell
 
 eshellinclude_HEADERS = 			\
+	e-shell.h				\
 	e-shell-backend.h			\
 	e-shell-common.h			\
 	e-shell-content.h			\
@@ -68,11 +69,11 @@ eshellinclude_HEADERS = 			\
 	e-shell-taskbar.h			\
 	e-shell-view.h				\
 	e-shell-window.h			\
-	e-shell-window-actions.h		\
 	es-event.h
 
 libeshell_la_SOURCES =				\
 	$(IDL_GENERATED)			\
+	e-shell.c				\
 	e-shell-backend.c			\
 	e-shell-content.c			\
 	e-shell-settings.c			\
@@ -81,13 +82,22 @@ libeshell_la_SOURCES =				\
 	e-shell-taskbar.c			\
 	e-shell-view.c				\
 	e-shell-window.c			\
+	e-shell-window-private.c		\
+	e-shell-window-private.h		\
+	$(eshellinclude_HEADERS)		\
+	e-shell-importer.c			\
+	e-shell-importer.h			\
+	e-shell-migrate.c			\
+	e-shell-migrate.h			\
+	e-shell-window-actions.h		\
 	e-shell-window-actions.c		\
-	$(eshellinclude_HEADERS)
+	es-event.c
 
 libeshell_la_LDFLAGS = $(NO_UNDEFINED)
 
 libeshell_la_LIBADD =					\
 	$(top_builddir)/e-util/libeutil.la		\
+	$(top_builddir)/filter/libfilter.la		\
 	$(top_builddir)/widgets/misc/libemiscwidgets.la	\
 	$(top_builddir)/widgets/menus/libmenus.la	\
 	$(SHELL_LIBS)
@@ -103,15 +113,6 @@ evolution_SOURCES =				\
 	$(NM_SUPPORT_FILES)			\
 	e-config-upgrade.c			\
 	e-config-upgrade.h			\
-	e-shell.c				\
-	e-shell.h				\
-	e-shell-importer.c			\
-	e-shell-importer.h			\
-	e-shell-migrate.c			\
-	e-shell-migrate.h			\
-	e-shell-window-private.c		\
-	e-shell-window-private.h		\
-	es-event.c				\
 	main.c					
 
 evolution_LDADD =							\
diff --git a/smime/gui/Makefile.am b/smime/gui/Makefile.am
index aa140f7..807e71f 100644
--- a/smime/gui/Makefile.am
+++ b/smime/gui/Makefile.am
@@ -35,10 +35,11 @@ libevolution_smime_la_SOURCES = 	\
 	component.h
 
 
-libevolution_smime_la_LIBADD =			\
-	$(top_builddir)/e-util/libeutil.la	\
-	$(top_builddir)/shell/libeshell.la	\
-	$(top_builddir)/smime/lib/libessmime.la	\
+libevolution_smime_la_LIBADD =				\
+	$(top_builddir)/e-util/libeutil.la		\
+	$(top_builddir)/shell/libeshell.la		\
+	$(top_builddir)/smime/lib/libessmime.la		\
+	$(top_builddir)/widgets/misc/libemiscwidgets.la	\
 	$(CERT_UI_LIBS)
 
 libevolution_smime_la_LDFLAGS = $(NO_UNDEFINED)
diff --git a/widgets/Makefile.am b/widgets/Makefile.am
index 347c0f7..99305b8 100644
--- a/widgets/Makefile.am
+++ b/widgets/Makefile.am
@@ -1,9 +1,9 @@
 
 SUBDIRS =			\
-	table			\
-	text			\
 	misc			\
+	text			\
 	e-timezone-dialog	\
+	table			\
 	menus
 
 EXTRA_DIST =			\
diff --git a/widgets/menus/gal-view-collection.c b/widgets/menus/gal-view-collection.c
index 890ee3e..9541f0f 100644
--- a/widgets/menus/gal-view-collection.c
+++ b/widgets/menus/gal-view-collection.c
@@ -33,7 +33,7 @@
 #include <glib/gi18n.h>
 #include "e-util/e-util.h"
 #include "e-util/e-xml-utils.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "gal-view-collection.h"
 
diff --git a/widgets/menus/gal-view-instance.c b/widgets/menus/gal-view-instance.c
index 19ec402..40a9e52 100644
--- a/widgets/menus/gal-view-instance.c
+++ b/widgets/menus/gal-view-instance.c
@@ -38,7 +38,7 @@
 #include <glib/gi18n.h>
 #include "e-util/e-util.h"
 #include "e-util/e-xml-utils.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "gal-define-views-dialog.h"
 #include "gal-view-instance.h"
diff --git a/widgets/menus/gal-view-new-dialog.c b/widgets/menus/gal-view-new-dialog.c
index 061c04b..8716764 100644
--- a/widgets/menus/gal-view-new-dialog.c
+++ b/widgets/menus/gal-view-new-dialog.c
@@ -27,7 +27,7 @@
 #include <glib/gi18n.h>
 #include "e-util/e-util.h"
 #include "e-util/e-util-private.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "gal-define-views-model.h"
 #include "gal-view-new-dialog.h"
diff --git a/widgets/misc/Makefile.am b/widgets/misc/Makefile.am
index 212d675..bd2c9f9 100644
--- a/widgets/misc/Makefile.am
+++ b/widgets/misc/Makefile.am
@@ -1,10 +1,5 @@
-if OS_WIN32
-WIN32_BOOTSTRAP_LIBS = $(top_builddir)/win32/libfilter.la
-endif
-
 INCLUDES =								\
 	-I$(top_srcdir)							\
-	-I$(top_srcdir)/a11y/widgets					\
 	-I$(top_srcdir)/filter						\
 	-I$(top_srcdir)/widgets						\
 	-DEVOLUTION_IMAGES=\""$(imagesdir)"\"				\
@@ -50,13 +45,10 @@ widgetsinclude_HEADERS =			\
 	e-attachment-view.h			\
 	e-calendar.h				\
 	e-calendar-item.h			\
-	e-camel-activity.h			\
 	e-canvas.h				\
 	e-canvas-background.h			\
 	e-canvas-utils.h			\
 	e-canvas-vbox.h				\
-	e-cell-date-edit.h			\
-	e-cell-percent.h			\
 	e-cell-renderer-combo.h			\
 	e-charset-picker.h			\
 	e-colors.h				\
@@ -75,8 +67,6 @@ widgetsinclude_HEADERS =			\
 	e-popup-menu.h				\
 	e-preferences-window.h			\
 	e-printable.h				\
-	e-reflow.h				\
-	e-reflow-model.h			\
 	e-search-bar.h				\
 	e-selection-model.h			\
 	e-selection-model-array.h		\
@@ -91,8 +81,10 @@ widgetsinclude_HEADERS =			\
 	e-spinner.c				\
 	e-spinner.h				\
 	e-timeout-activity.h			\
-	e-unicode.h				\
-	e-url-entry.h
+	e-url-entry.h				\
+	a11y/ea-calendar-cell.h			\
+	a11y/ea-calendar-item.h			\
+	a11y/ea-widgets.h
 
 libemiscwidgets_la_SOURCES =			\
 	$(widgetsinclude_HEADERS)		\
@@ -115,13 +107,10 @@ libemiscwidgets_la_SOURCES =			\
 	e-attachment-view.c			\
 	e-calendar.c				\
 	e-calendar-item.c			\
-	e-camel-activity.c			\
 	e-canvas.c				\
 	e-canvas-background.c			\
 	e-canvas-utils.c			\
 	e-canvas-vbox.c				\
-	e-cell-date-edit.c			\
-	e-cell-percent.c			\
 	e-cell-renderer-combo.c			\
 	e-charset-picker.c			\
 	e-colors.c				\
@@ -140,8 +129,6 @@ libemiscwidgets_la_SOURCES =			\
 	e-popup-menu.c				\
 	e-preferences-window.c			\
 	e-printable.c				\
-	e-reflow-model.c			\
-	e-reflow.c				\
 	e-search-bar.c				\
 	e-selection-model.c			\
 	e-selection-model-array.c		\
@@ -154,20 +141,20 @@ libemiscwidgets_la_SOURCES =			\
 	e-signature-script-dialog.c		\
 	e-signature-tree-view.c			\
 	e-timeout-activity.c			\
-	e-unicode.c				\
-	e-url-entry.c
+	e-url-entry.c				\
+	a11y/ea-calendar-cell.c			\
+	a11y/ea-calendar-item.c			\
+	a11y/ea-widgets.c
 
 libemiscwidgets_la_LDFLAGS = $(NO_UNDEFINED)
 
-libemiscwidgets_la_LIBADD = \
-	$(top_builddir)/e-util/libeutil.la				\
-	$(top_builddir)/filter/libfilter.la				\
-	$(top_builddir)/widgets/table/libetable.la			\
-	$(top_builddir)/widgets/text/libetext.la			\
-	$(top_builddir)/a11y/widgets/libevolution-widgets-a11y.la	\
-	$(top_builddir)/a11y/libevolution-a11y.la			\
-	$(EVOLUTION_MAIL_LIBS)						\
-	$(GNOME_PLATFORM_LIBS)						\
+libemiscwidgets_la_LIBADD =				\
+	$(top_builddir)/e-util/libeutil.la		\
+	$(top_builddir)/filter/libfilter.la		\
+	$(top_builddir)/a11y/libevolution-a11y.la	\
+	$(EVOLUTION_MAIL_LIBS)				\
+	$(GNOME_PLATFORM_LIBS)				\
+	$(MATH_LIB)					\
 	$(ICONV_LIBS)
 
 noinst_PROGRAMS = 			\
diff --git a/a11y/widgets/ea-calendar-cell.c b/widgets/misc/a11y/ea-calendar-cell.c
similarity index 99%
rename from a11y/widgets/ea-calendar-cell.c
rename to widgets/misc/a11y/ea-calendar-cell.c
index 9cd3a58..8173d6d 100644
--- a/a11y/widgets/ea-calendar-cell.c
+++ b/widgets/misc/a11y/ea-calendar-cell.c
@@ -25,7 +25,7 @@
 #include <e-util/e-util.h>
 #include "ea-calendar-cell.h"
 #include "ea-calendar-item.h"
-#include "ea-factory.h"
+#include "a11y/ea-factory.h"
 
 /* ECalendarCell */
 
diff --git a/a11y/widgets/ea-calendar-cell.h b/widgets/misc/a11y/ea-calendar-cell.h
similarity index 100%
rename from a11y/widgets/ea-calendar-cell.h
rename to widgets/misc/a11y/ea-calendar-cell.h
diff --git a/a11y/widgets/ea-calendar-item.c b/widgets/misc/a11y/ea-calendar-item.c
similarity index 99%
rename from a11y/widgets/ea-calendar-item.c
rename to widgets/misc/a11y/ea-calendar-item.c
index a3da175..66f40a9 100644
--- a/a11y/widgets/ea-calendar-item.c
+++ b/widgets/misc/a11y/ea-calendar-item.c
@@ -30,7 +30,7 @@
 #include <libedataserver/e-data-server-util.h>
 #include "ea-calendar-item.h"
 #include "ea-calendar-cell.h"
-#include "ea-cell-table.h"
+#include "a11y/ea-cell-table.h"
 
 #define EA_CALENDAR_COLUMN_NUM E_CALENDAR_COLS_PER_MONTH
 
diff --git a/a11y/widgets/ea-calendar-item.h b/widgets/misc/a11y/ea-calendar-item.h
similarity index 100%
rename from a11y/widgets/ea-calendar-item.h
rename to widgets/misc/a11y/ea-calendar-item.h
diff --git a/a11y/widgets/ea-widgets.c b/widgets/misc/a11y/ea-widgets.c
similarity index 94%
rename from a11y/widgets/ea-widgets.c
rename to widgets/misc/a11y/ea-widgets.c
index e9e170a..239299d 100644
--- a/a11y/widgets/ea-widgets.c
+++ b/widgets/misc/a11y/ea-widgets.c
@@ -20,8 +20,8 @@
  *
  */
 
-#include "ea-factory.h"
-#include "widgets/ea-calendar-item.h"
+#include "a11y/ea-factory.h"
+#include "ea-calendar-item.h"
 #include "ea-widgets.h"
 
 EA_FACTORY_GOBJECT (EA_TYPE_CALENDAR_ITEM, ea_calendar_item, ea_calendar_item_new)
diff --git a/a11y/widgets/ea-widgets.h b/widgets/misc/a11y/ea-widgets.h
similarity index 100%
rename from a11y/widgets/ea-widgets.h
rename to widgets/misc/a11y/ea-widgets.h
diff --git a/widgets/misc/e-calendar-item.c b/widgets/misc/e-calendar-item.c
index 32e74dd..d5f5efd 100644
--- a/widgets/misc/e-calendar-item.c
+++ b/widgets/misc/e-calendar-item.c
@@ -26,7 +26,7 @@
 #endif
 
 #include "e-calendar-item.h"
-#include "ea-widgets.h"
+#include "a11y/ea-widgets.h"
 
 #include <time.h>
 #include <string.h>
diff --git a/widgets/misc/e-search-bar.c b/widgets/misc/e-search-bar.c
index 050f840..a588b73 100644
--- a/widgets/misc/e-search-bar.c
+++ b/widgets/misc/e-search-bar.c
@@ -31,11 +31,11 @@
 #include <glib/gi18n.h>
 #include <gdk/gdkkeysyms.h>
 #include <e-util/e-util.h>
+#include <e-util/e-unicode.h>
 
 #include <e-action-combo-box.h>
 #include <e-gui-utils.h>
 #include <e-icon-entry.h>
-#include <e-unicode.h>
 
 #define E_SEARCH_BAR_GET_PRIVATE(obj) \
 	(G_TYPE_INSTANCE_GET_PRIVATE \
diff --git a/widgets/table/Makefile.am b/widgets/table/Makefile.am
index be43b55..a53b249 100644
--- a/widgets/table/Makefile.am
+++ b/widgets/table/Makefile.am
@@ -1,9 +1,3 @@
-if OS_WIN32
-WIN32_BOOTSTRAP_LIBS =					\
-	$(top_builddir)/win32/libemiscwidgets.la	\
-	$(top_builddir)/win32/libetext.la
-endif
-
 glade_DATA = 					\
 	e-table-config.glade			\
 	e-table-field-chooser.glade
@@ -24,7 +18,9 @@ libetable_la_SOURCES = 				\
 	e-cell-checkbox.c			\
 	e-cell-combo.c				\
 	e-cell-date.c				\
+	e-cell-date-edit.c			\
 	e-cell-number.c				\
+	e-cell-percent.c			\
 	e-cell-pixbuf.c				\
 	e-cell-popup.c				\
 	e-cell-size.c				\
@@ -76,7 +72,23 @@ libetable_la_SOURCES = 				\
 	e-tree-selection-model.c		\
 	e-tree-sorted.c				\
 	e-tree-table-adapter.c			\
-	e-tree.c
+	e-tree.c				\
+	a11y/gal-a11y-e-cell.c			\
+	a11y/gal-a11y-e-cell-popup.c		\
+	a11y/gal-a11y-e-cell-registry.c		\
+	a11y/gal-a11y-e-cell-text.c		\
+	a11y/gal-a11y-e-cell-toggle.c		\
+	a11y/gal-a11y-e-cell-tree.c		\
+	a11y/gal-a11y-e-cell-vbox.c		\
+	a11y/gal-a11y-e-table.c			\
+	a11y/gal-a11y-e-table-click-to-add.c	\
+	a11y/gal-a11y-e-table-click-to-add-factory.c	\
+	a11y/gal-a11y-e-table-column-header.c	\
+	a11y/gal-a11y-e-table-factory.c		\
+	a11y/gal-a11y-e-table-item.c		\
+	a11y/gal-a11y-e-table-item-factory.c	\
+	a11y/gal-a11y-e-tree.c			\
+	a11y/gal-a11y-e-tree-factory.c
 
 libetableincludedir = $(privincludedir)/table
 
@@ -85,7 +97,9 @@ libetableinclude_HEADERS = 			\
 	e-cell-checkbox.h			\
 	e-cell-combo.h				\
 	e-cell-date.h				\
+	e-cell-date-edit.h			\
 	e-cell-number.h				\
+	e-cell-percent.h			\
 	e-cell-pixbuf.h				\
 	e-cell-popup.h				\
 	e-cell-size.h				\
@@ -140,16 +154,34 @@ libetableinclude_HEADERS = 			\
 	e-tree-selection-model.h		\
 	e-tree-sorted.h				\
 	e-tree-table-adapter.h			\
-	e-tree.h
+	e-tree.h				\
+	a11y/gal-a11y-e-cell.h			\
+	a11y/gal-a11y-e-cell-popup.h		\
+	a11y/gal-a11y-e-cell-registry.h		\
+	a11y/gal-a11y-e-cell-text.h		\
+	a11y/gal-a11y-e-cell-toggle.h		\
+	a11y/gal-a11y-e-cell-tree.h		\
+	a11y/gal-a11y-e-cell-vbox.h		\
+	a11y/gal-a11y-e-table.h			\
+	a11y/gal-a11y-e-table-click-to-add.h	\
+	a11y/gal-a11y-e-table-click-to-add-factory.h	\
+	a11y/gal-a11y-e-table-column-header.h	\
+	a11y/gal-a11y-e-table-factory.h		\
+	a11y/gal-a11y-e-table-item.h		\
+	a11y/gal-a11y-e-table-item-factory.h	\
+	a11y/gal-a11y-e-tree.h			\
+	a11y/gal-a11y-e-tree-factory.h
 
 libetable_la_LDFLAGS = $(NO_UNDEFINED)
 
 libetable_la_LIBADD =					\
-	$(WIN32_BOOTSTRAP_LIBS)				\
-	$(top_builddir)/e-util/libeutil.la		\
 	$(top_builddir)/a11y/libevolution-a11y.la	\
+	$(top_builddir)/e-util/libeutil.la		\
+	$(top_builddir)/widgets/misc/libemiscwidgets.la	\
+	$(top_builddir)/widgets/text/libetext.la	\
 	$(E_UTIL_LIBS)					\
 	$(E_WIDGETS_LIBS)				\
+	$(MATH_LIB)					\
 	$(GNOME_PLATFORM_LIBS)
 
 icons = 			\
diff --git a/a11y/e-table/gal-a11y-e-cell-popup.c b/widgets/table/a11y/gal-a11y-e-cell-popup.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell-popup.c
rename to widgets/table/a11y/gal-a11y-e-cell-popup.c
diff --git a/a11y/e-table/gal-a11y-e-cell-popup.h b/widgets/table/a11y/gal-a11y-e-cell-popup.h
similarity index 98%
rename from a11y/e-table/gal-a11y-e-cell-popup.h
rename to widgets/table/a11y/gal-a11y-e-cell-popup.h
index ebc16c1..4f205c1 100644
--- a/a11y/e-table/gal-a11y-e-cell-popup.h
+++ b/widgets/table/a11y/gal-a11y-e-cell-popup.h
@@ -26,7 +26,7 @@
 
 #include <glib-object.h>
 #include <table/e-table-item.h>
-#include <a11y/e-table/gal-a11y-e-cell.h>
+#include <table/a11y/gal-a11y-e-cell.h>
 #include <atk/atkgobjectaccessible.h>
 
 #define GAL_A11Y_TYPE_E_CELL_POPUP            (gal_a11y_e_cell_popup_get_type ())
diff --git a/a11y/e-table/gal-a11y-e-cell-registry.c b/widgets/table/a11y/gal-a11y-e-cell-registry.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell-registry.c
rename to widgets/table/a11y/gal-a11y-e-cell-registry.c
diff --git a/a11y/e-table/gal-a11y-e-cell-registry.h b/widgets/table/a11y/gal-a11y-e-cell-registry.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell-registry.h
rename to widgets/table/a11y/gal-a11y-e-cell-registry.h
diff --git a/a11y/e-table/gal-a11y-e-cell-text.c b/widgets/table/a11y/gal-a11y-e-cell-text.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell-text.c
rename to widgets/table/a11y/gal-a11y-e-cell-text.c
diff --git a/a11y/e-table/gal-a11y-e-cell-text.h b/widgets/table/a11y/gal-a11y-e-cell-text.h
similarity index 98%
rename from a11y/e-table/gal-a11y-e-cell-text.h
rename to widgets/table/a11y/gal-a11y-e-cell-text.h
index c69b374..208bc67 100644
--- a/a11y/e-table/gal-a11y-e-cell-text.h
+++ b/widgets/table/a11y/gal-a11y-e-cell-text.h
@@ -26,7 +26,7 @@
 #include <glib-object.h>
 #include <table/e-table-item.h>
 #include <table/e-cell-text.h>
-#include <a11y/e-table/gal-a11y-e-cell.h>
+#include <table/a11y/gal-a11y-e-cell.h>
 
 #define GAL_A11Y_TYPE_E_CELL_TEXT            (gal_a11y_e_cell_text_get_type ())
 #define GAL_A11Y_E_CELL_TEXT(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAL_A11Y_TYPE_E_CELL_TEXT, GalA11yECellText))
diff --git a/a11y/e-table/gal-a11y-e-cell-toggle.c b/widgets/table/a11y/gal-a11y-e-cell-toggle.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell-toggle.c
rename to widgets/table/a11y/gal-a11y-e-cell-toggle.c
diff --git a/a11y/e-table/gal-a11y-e-cell-toggle.h b/widgets/table/a11y/gal-a11y-e-cell-toggle.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell-toggle.h
rename to widgets/table/a11y/gal-a11y-e-cell-toggle.h
diff --git a/a11y/e-table/gal-a11y-e-cell-tree.c b/widgets/table/a11y/gal-a11y-e-cell-tree.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell-tree.c
rename to widgets/table/a11y/gal-a11y-e-cell-tree.c
diff --git a/a11y/e-table/gal-a11y-e-cell-tree.h b/widgets/table/a11y/gal-a11y-e-cell-tree.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell-tree.h
rename to widgets/table/a11y/gal-a11y-e-cell-tree.h
diff --git a/a11y/e-table/gal-a11y-e-cell-vbox.c b/widgets/table/a11y/gal-a11y-e-cell-vbox.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell-vbox.c
rename to widgets/table/a11y/gal-a11y-e-cell-vbox.c
diff --git a/a11y/e-table/gal-a11y-e-cell-vbox.h b/widgets/table/a11y/gal-a11y-e-cell-vbox.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell-vbox.h
rename to widgets/table/a11y/gal-a11y-e-cell-vbox.h
diff --git a/a11y/e-table/gal-a11y-e-cell.c b/widgets/table/a11y/gal-a11y-e-cell.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell.c
rename to widgets/table/a11y/gal-a11y-e-cell.c
diff --git a/a11y/e-table/gal-a11y-e-cell.h b/widgets/table/a11y/gal-a11y-e-cell.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-cell.h
rename to widgets/table/a11y/gal-a11y-e-cell.h
diff --git a/a11y/e-table/gal-a11y-e-table-click-to-add-factory.c b/widgets/table/a11y/gal-a11y-e-table-click-to-add-factory.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-click-to-add-factory.c
rename to widgets/table/a11y/gal-a11y-e-table-click-to-add-factory.c
diff --git a/a11y/e-table/gal-a11y-e-table-click-to-add-factory.h b/widgets/table/a11y/gal-a11y-e-table-click-to-add-factory.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-click-to-add-factory.h
rename to widgets/table/a11y/gal-a11y-e-table-click-to-add-factory.h
diff --git a/a11y/e-table/gal-a11y-e-table-click-to-add.c b/widgets/table/a11y/gal-a11y-e-table-click-to-add.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-click-to-add.c
rename to widgets/table/a11y/gal-a11y-e-table-click-to-add.c
diff --git a/a11y/e-table/gal-a11y-e-table-click-to-add.h b/widgets/table/a11y/gal-a11y-e-table-click-to-add.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-click-to-add.h
rename to widgets/table/a11y/gal-a11y-e-table-click-to-add.h
diff --git a/a11y/e-table/gal-a11y-e-table-column-header.c b/widgets/table/a11y/gal-a11y-e-table-column-header.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-column-header.c
rename to widgets/table/a11y/gal-a11y-e-table-column-header.c
diff --git a/a11y/e-table/gal-a11y-e-table-column-header.h b/widgets/table/a11y/gal-a11y-e-table-column-header.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-column-header.h
rename to widgets/table/a11y/gal-a11y-e-table-column-header.h
diff --git a/a11y/e-table/gal-a11y-e-table-factory.c b/widgets/table/a11y/gal-a11y-e-table-factory.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-factory.c
rename to widgets/table/a11y/gal-a11y-e-table-factory.c
diff --git a/a11y/e-table/gal-a11y-e-table-factory.h b/widgets/table/a11y/gal-a11y-e-table-factory.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-factory.h
rename to widgets/table/a11y/gal-a11y-e-table-factory.h
diff --git a/a11y/e-table/gal-a11y-e-table-item-factory.c b/widgets/table/a11y/gal-a11y-e-table-item-factory.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-item-factory.c
rename to widgets/table/a11y/gal-a11y-e-table-item-factory.c
diff --git a/a11y/e-table/gal-a11y-e-table-item-factory.h b/widgets/table/a11y/gal-a11y-e-table-item-factory.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-item-factory.h
rename to widgets/table/a11y/gal-a11y-e-table-item-factory.h
diff --git a/a11y/e-table/gal-a11y-e-table-item.c b/widgets/table/a11y/gal-a11y-e-table-item.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-item.c
rename to widgets/table/a11y/gal-a11y-e-table-item.c
diff --git a/a11y/e-table/gal-a11y-e-table-item.h b/widgets/table/a11y/gal-a11y-e-table-item.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table-item.h
rename to widgets/table/a11y/gal-a11y-e-table-item.h
diff --git a/a11y/e-table/gal-a11y-e-table.c b/widgets/table/a11y/gal-a11y-e-table.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table.c
rename to widgets/table/a11y/gal-a11y-e-table.c
diff --git a/a11y/e-table/gal-a11y-e-table.h b/widgets/table/a11y/gal-a11y-e-table.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-table.h
rename to widgets/table/a11y/gal-a11y-e-table.h
diff --git a/a11y/e-table/gal-a11y-e-tree-factory.c b/widgets/table/a11y/gal-a11y-e-tree-factory.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-tree-factory.c
rename to widgets/table/a11y/gal-a11y-e-tree-factory.c
diff --git a/a11y/e-table/gal-a11y-e-tree-factory.h b/widgets/table/a11y/gal-a11y-e-tree-factory.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-tree-factory.h
rename to widgets/table/a11y/gal-a11y-e-tree-factory.h
diff --git a/a11y/e-table/gal-a11y-e-tree.c b/widgets/table/a11y/gal-a11y-e-tree.c
similarity index 100%
rename from a11y/e-table/gal-a11y-e-tree.c
rename to widgets/table/a11y/gal-a11y-e-tree.c
diff --git a/a11y/e-table/gal-a11y-e-tree.h b/widgets/table/a11y/gal-a11y-e-tree.h
similarity index 100%
rename from a11y/e-table/gal-a11y-e-tree.h
rename to widgets/table/a11y/gal-a11y-e-tree.h
diff --git a/widgets/table/e-cell-combo.c b/widgets/table/e-cell-combo.c
index 84d5820..4b75881 100644
--- a/widgets/table/e-cell-combo.c
+++ b/widgets/table/e-cell-combo.c
@@ -62,7 +62,7 @@
 
 #include <glib/gi18n.h>
 #include "e-util/e-util.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "e-table-item.h"
 #include "e-cell-combo.h"
diff --git a/widgets/misc/e-cell-date-edit.c b/widgets/table/e-cell-date-edit.c
similarity index 99%
rename from widgets/misc/e-cell-date-edit.c
rename to widgets/table/e-cell-date-edit.c
index 9794798..1cf3838 100644
--- a/widgets/misc/e-cell-date-edit.c
+++ b/widgets/table/e-cell-date-edit.c
@@ -39,15 +39,15 @@
 #include <gdk/gdkkeysyms.h>
 #include <gtk/gtk.h>
 
-#include <table/e-table-item.h>
-#include <table/e-cell-text.h>
+#include "e-table-item.h"
+#include "e-cell-text.h"
 
 #include <glib/gi18n.h>
 
 #include <libedataserver/e-time-utils.h>
 
 /* This depends on ECalendar which is why I didn't put it in gal. */
-#include "e-calendar.h"
+#include <misc/e-calendar.h>
 
 static void e_cell_date_edit_destroy		(GtkObject	*object);
 static void e_cell_date_edit_get_property	(GObject	*object,
diff --git a/widgets/misc/e-cell-date-edit.h b/widgets/table/e-cell-date-edit.h
similarity index 100%
rename from widgets/misc/e-cell-date-edit.h
rename to widgets/table/e-cell-date-edit.h
diff --git a/widgets/table/e-cell-date.c b/widgets/table/e-cell-date.c
index ac0274f..9199d57 100644
--- a/widgets/table/e-cell-date.c
+++ b/widgets/table/e-cell-date.c
@@ -29,7 +29,7 @@
 
 #include <glib/gi18n.h>
 #include "e-util/e-util.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "e-cell-date.h"
 
diff --git a/widgets/table/e-cell-hbox.c b/widgets/table/e-cell-hbox.c
index b9a8544..6c0bded 100644
--- a/widgets/table/e-cell-hbox.c
+++ b/widgets/table/e-cell-hbox.c
@@ -32,8 +32,8 @@
 
 #include <gtk/gtk.h>
 
-/* #include "a11y/e-table/gal-a11y-e-cell-registry.h" */
-/* #include "a11y/e-table/gal-a11y-e-cell-vbox.h" */
+/* #include "a11y/gal-a11y-e-cell-registry.h" */
+/* #include "a11y/gal-a11y-e-cell-vbox.h" */
 #include "e-util/e-util.h"
 
 #include "e-cell-hbox.h"
diff --git a/widgets/misc/e-cell-percent.c b/widgets/table/e-cell-percent.c
similarity index 100%
rename from widgets/misc/e-cell-percent.c
rename to widgets/table/e-cell-percent.c
diff --git a/widgets/misc/e-cell-percent.h b/widgets/table/e-cell-percent.h
similarity index 100%
rename from widgets/misc/e-cell-percent.h
rename to widgets/table/e-cell-percent.h
diff --git a/widgets/table/e-cell-popup.c b/widgets/table/e-cell-popup.c
index 92e03d7..e7203c5 100644
--- a/widgets/table/e-cell-popup.c
+++ b/widgets/table/e-cell-popup.c
@@ -33,8 +33,8 @@
 
 #include <gdk/gdkkeysyms.h>
 
-#include "a11y/e-table/gal-a11y-e-cell-popup.h"
-#include "a11y/e-table/gal-a11y-e-cell-registry.h"
+#include "a11y/gal-a11y-e-cell-popup.h"
+#include "a11y/gal-a11y-e-cell-registry.h"
 #include "e-util/e-util.h"
 
 #include "e-cell-popup.h"
diff --git a/widgets/table/e-cell-text.c b/widgets/table/e-cell-text.c
index e50d3d7..55ec753 100644
--- a/widgets/table/e-cell-text.c
+++ b/widgets/table/e-cell-text.c
@@ -45,15 +45,15 @@
 #include <libgnomecanvas/gnome-canvas.h>
 #include <libgnomecanvas/gnome-canvas-rect-ellipse.h>
 
-#include "a11y/e-table/gal-a11y-e-cell-registry.h"
-#include "a11y/e-table/gal-a11y-e-cell-text.h"
+#include "a11y/gal-a11y-e-cell-registry.h"
+#include "a11y/gal-a11y-e-cell-text.h"
 #include "text/e-text.h"
 #include <glib/gi18n.h>
 #include "e-util/e-text-event-processor.h"
 #include "e-util/e-text-event-processor-emacs-like.h"
 #include "e-util/e-util.h"
 #include "misc/e-canvas.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "e-cell-text.h"
 #include "e-table-item.h"
diff --git a/widgets/table/e-cell-toggle.c b/widgets/table/e-cell-toggle.c
index 4fc6aca..38562f5 100644
--- a/widgets/table/e-cell-toggle.c
+++ b/widgets/table/e-cell-toggle.c
@@ -28,8 +28,8 @@
 #include <gtk/gtk.h>
 #include <libgnomecanvas/gnome-canvas.h>
 
-#include "a11y/e-table/gal-a11y-e-cell-toggle.h"
-#include "a11y/e-table/gal-a11y-e-cell-registry.h"
+#include "a11y/gal-a11y-e-cell-toggle.h"
+#include "a11y/gal-a11y-e-cell-registry.h"
 #include "e-util/e-util.h"
 #include "misc/e-hsv-utils.h"
 
diff --git a/widgets/table/e-cell-tree.c b/widgets/table/e-cell-tree.c
index eb7e428..e9cb30b 100644
--- a/widgets/table/e-cell-tree.c
+++ b/widgets/table/e-cell-tree.c
@@ -38,8 +38,8 @@
 #include <gtk/gtk.h>
 #include <libgnomecanvas/gnome-canvas.h>
 
-#include "a11y/e-table/gal-a11y-e-cell-registry.h"
-#include "a11y/e-table/gal-a11y-e-cell-tree.h"
+#include "a11y/gal-a11y-e-cell-registry.h"
+#include "a11y/gal-a11y-e-cell-tree.h"
 #include "e-util/e-util.h"
 
 #include "e-cell-tree.h"
diff --git a/widgets/table/e-cell-vbox.c b/widgets/table/e-cell-vbox.c
index af398ae..46da90e 100644
--- a/widgets/table/e-cell-vbox.c
+++ b/widgets/table/e-cell-vbox.c
@@ -29,8 +29,8 @@
 
 #include <gtk/gtk.h>
 
-#include "a11y/e-table/gal-a11y-e-cell-registry.h"
-#include "a11y/e-table/gal-a11y-e-cell-vbox.h"
+#include "a11y/gal-a11y-e-cell-registry.h"
+#include "a11y/gal-a11y-e-cell-vbox.h"
 #include "e-util/e-util.h"
 
 #include "e-cell-vbox.h"
diff --git a/widgets/table/e-table-click-to-add.c b/widgets/table/e-table-click-to-add.c
index 4871b05..dedf8e1 100644
--- a/widgets/table/e-table-click-to-add.c
+++ b/widgets/table/e-table-click-to-add.c
@@ -29,7 +29,7 @@
 #include <libgnomecanvas/gnome-canvas-util.h>
 #include <gdk-pixbuf/gdk-pixbuf.h>
 
-#include "a11y/e-table/gal-a11y-e-table-click-to-add.h"
+#include "a11y/gal-a11y-e-table-click-to-add.h"
 #include "text/e-text.h"
 #include <glib/gi18n.h>
 #include "e-util/e-util.h"
diff --git a/widgets/table/e-table-config.c b/widgets/table/e-table-config.c
index 5becaa3..5f93c32 100644
--- a/widgets/table/e-table-config.c
+++ b/widgets/table/e-table-config.c
@@ -38,7 +38,7 @@
 #include <glib/gi18n.h>
 #include "e-util/e-util-private.h"
 #include "e-util/e-util.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "e-table-config.h"
 #include "e-table-memory-store.h"
diff --git a/widgets/table/e-table-group-container.c b/widgets/table/e-table-group-container.c
index c342c6c..f675802 100644
--- a/widgets/table/e-table-group-container.c
+++ b/widgets/table/e-table-group-container.c
@@ -31,7 +31,7 @@
 #include "e-util/e-util.h"
 #include "misc/e-canvas-utils.h"
 #include "misc/e-canvas.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "e-table-defines.h"
 #include "e-table-group-container.h"
diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c
index afcc072..80b5be4 100644
--- a/widgets/table/e-table-header-utils.c
+++ b/widgets/table/e-table-header-utils.c
@@ -29,7 +29,7 @@
 
 #include <gtk/gtk.h>
 
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "e-table-defines.h"
 #include "e-table-header-utils.h"
diff --git a/widgets/table/e-table-item.c b/widgets/table/e-table-item.c
index 58d6c65..394679e 100644
--- a/widgets/table/e-table-item.c
+++ b/widgets/table/e-table-item.c
@@ -36,8 +36,8 @@
 #include <gtk/gtk.h>
 #include <gdk/gdkkeysyms.h>
 
-#include "a11y/e-table/gal-a11y-e-table-item-factory.h"
-#include "a11y/e-table/gal-a11y-e-table-item.h"
+#include "a11y/gal-a11y-e-table-item-factory.h"
+#include "a11y/gal-a11y-e-table-item.h"
 #include <glib/gi18n.h>
 #include "e-util/e-util.h"
 #include "misc/e-canvas.h"
diff --git a/widgets/table/e-table-utils.c b/widgets/table/e-table-utils.c
index d01d94a..96b6004 100644
--- a/widgets/table/e-table-utils.c
+++ b/widgets/table/e-table-utils.c
@@ -27,7 +27,7 @@
 #include <string.h>
 
 #include "e-util/e-util.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "e-table-utils.h"
 #include "e-table-header-utils.h"
diff --git a/widgets/table/e-table.c b/widgets/table/e-table.c
index 69a300d..754607c 100644
--- a/widgets/table/e-table.c
+++ b/widgets/table/e-table.c
@@ -36,13 +36,13 @@
 #include <libgnomecanvas/gnome-canvas.h>
 #include <libgnomecanvas/gnome-canvas-rect-ellipse.h>
 
-#include "a11y/e-table/gal-a11y-e-table.h"
+#include "a11y/gal-a11y-e-table.h"
 #include <glib/gi18n.h>
 #include "e-util/e-util.h"
 #include "misc/e-canvas.h"
 #include "misc/e-canvas-background.h"
 #include "misc/e-canvas-vbox.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
 #include "e-table.h"
 #include "e-table-click-to-add.h"
diff --git a/widgets/table/e-tree.c b/widgets/table/e-tree.c
index 0963229..0839960 100644
--- a/widgets/table/e-tree.c
+++ b/widgets/table/e-tree.c
@@ -30,7 +30,7 @@
 #include <gtk/gtk.h>
 #include <libgnomecanvas/gnome-canvas-rect-ellipse.h>
 
-#include "a11y/e-table/gal-a11y-e-tree.h"
+#include "a11y/gal-a11y-e-tree.h"
 #include <glib/gi18n.h>
 #include "e-util/e-util.h"
 #include "misc/e-canvas.h"
diff --git a/widgets/text/Makefile.am b/widgets/text/Makefile.am
index fbe03c8..e035d87 100644
--- a/widgets/text/Makefile.am
+++ b/widgets/text/Makefile.am
@@ -1,7 +1,3 @@
-if OS_WIN32
-WIN32_BOOTSTRAP_LIBS = $(top_builddir)/win32/libemiscwidgets.la
-endif
-
 INCLUDES =					\
 	-I$(top_srcdir)				\
 	-I$(top_srcdir)/widgets			\
@@ -15,22 +11,29 @@ privsolib_LTLIBRARIES = libetext.la
 libetext_la_SOURCES =				\
 	e-text-model-repos.c			\
 	e-text-model.c				\
-	e-text.c
+	e-text.c				\
+	e-reflow.c				\
+	e-reflow-model.c			\
+	a11y/gal-a11y-e-text-factory.c		\
+	a11y/gal-a11y-e-text.c
 
 libetextincludedir = $(privincludedir)/text
 
 libetextinclude_HEADERS = 			\
 	e-text-model-repos.h			\
 	e-text-model.h				\
-	e-text.h
+	e-text.h				\
+	e-reflow.h				\
+	e-reflow-model.h			\
+	a11y/gal-a11y-e-text-factory.h		\
+	a11y/gal-a11y-e-text.h
 
 libetext_la_LDFLAGS = $(NO_UNDEFINED)
 
 libetext_la_LIBADD = 					\
-	$(WIN32_BOOTSTRAP_LIBS)				\
-	$(top_builddir)/e-util/libeutil.la		\
 	$(top_builddir)/a11y/libevolution-a11y.la	\
-	$(top_builddir)/widgets/table/libetable.la	\
+	$(top_builddir)/e-util/libeutil.la		\
+	$(top_builddir)/widgets/misc/libemiscwidgets.la	\
 	$(E_UTIL_LIBS)					\
 	$(GNOME_PLATFORM_LIBS)				\
 	$(REGEX_LIBS)
diff --git a/a11y/e-text/gal-a11y-e-text-factory.c b/widgets/text/a11y/gal-a11y-e-text-factory.c
similarity index 100%
rename from a11y/e-text/gal-a11y-e-text-factory.c
rename to widgets/text/a11y/gal-a11y-e-text-factory.c
diff --git a/a11y/e-text/gal-a11y-e-text-factory.h b/widgets/text/a11y/gal-a11y-e-text-factory.h
similarity index 100%
rename from a11y/e-text/gal-a11y-e-text-factory.h
rename to widgets/text/a11y/gal-a11y-e-text-factory.h
diff --git a/a11y/e-text/gal-a11y-e-text.c b/widgets/text/a11y/gal-a11y-e-text.c
similarity index 100%
rename from a11y/e-text/gal-a11y-e-text.c
rename to widgets/text/a11y/gal-a11y-e-text.c
diff --git a/a11y/e-text/gal-a11y-e-text.h b/widgets/text/a11y/gal-a11y-e-text.h
similarity index 100%
rename from a11y/e-text/gal-a11y-e-text.h
rename to widgets/text/a11y/gal-a11y-e-text.h
diff --git a/widgets/misc/e-reflow-model.c b/widgets/text/e-reflow-model.c
similarity index 100%
rename from widgets/misc/e-reflow-model.c
rename to widgets/text/e-reflow-model.c
diff --git a/widgets/misc/e-reflow-model.h b/widgets/text/e-reflow-model.h
similarity index 100%
rename from widgets/misc/e-reflow-model.h
rename to widgets/text/e-reflow-model.h
diff --git a/widgets/misc/e-reflow.c b/widgets/text/e-reflow.c
similarity index 99%
rename from widgets/misc/e-reflow.c
rename to widgets/text/e-reflow.c
index f51a502..c17b970 100644
--- a/widgets/misc/e-reflow.c
+++ b/widgets/text/e-reflow.c
@@ -30,12 +30,12 @@
 #include "text/e-text.h"
 #include <glib/gi18n.h>
 #include "e-util/e-util.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 
-#include "e-canvas.h"
-#include "e-canvas-utils.h"
+#include "misc/e-canvas.h"
+#include "misc/e-canvas-utils.h"
 #include "e-reflow.h"
-#include "e-selection-model-simple.h"
+#include "misc/e-selection-model-simple.h"
 
 static gboolean e_reflow_event (GnomeCanvasItem *item, GdkEvent *event);
 static void e_reflow_realize (GnomeCanvasItem *item);
diff --git a/widgets/misc/e-reflow.h b/widgets/text/e-reflow.h
similarity index 99%
rename from widgets/misc/e-reflow.h
rename to widgets/text/e-reflow.h
index 6d67369..afdc9ed 100644
--- a/widgets/misc/e-reflow.h
+++ b/widgets/text/e-reflow.h
@@ -24,7 +24,7 @@
 #define __E_REFLOW_H__
 
 #include <libgnomecanvas/gnome-canvas.h>
-#include <misc/e-reflow-model.h>
+#include <text/e-reflow-model.h>
 #include <misc/e-selection-model.h>
 #include <e-util/e-sorter-array.h>
 
diff --git a/widgets/text/e-text.c b/widgets/text/e-text.c
index 0890b46..3ce0065 100644
--- a/widgets/text/e-text.c
+++ b/widgets/text/e-text.c
@@ -46,10 +46,10 @@
 #include <gtk/gtk.h>
 #include <libgnomecanvas/gnome-canvas-rect-ellipse.h>
 
-#include "a11y/e-text/gal-a11y-e-text.h"
+#include "a11y/gal-a11y-e-text.h"
 #include "misc/e-canvas.h"
 #include "misc/e-canvas-utils.h"
-#include "misc/e-unicode.h"
+#include "e-util/e-unicode.h"
 #include <glib/gi18n.h>
 #include "e-util/e-text-event-processor-emacs-like.h"
 #include "e-util/e-util.h"



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