Tor Lillqvist 2decafb544 Port to Windows, initial commit:
2005-04-29  Tor Lillqvist  <tml@novell.com>

	Port to Windows, initial commit:

	* configure.in: Check for Win32, define Automake conditional
	OS_WIN32. Check for regexec() perhaps in separate -lregex, define
	REGEX_LIBS if so. Require glib-2.0 >= 2.6 (and thus also gtk+-2.0
	>= 2.6) so that we can use the gstdio wrappers for full support of
	non-ASCII filenames on Win32. Don't use -D_REENTRANT on Win32, has
	ne special meaning.

	* gal.pc.in: Require gtk+-2.0 >= 2.6 also here for consistency.

	* gal-zip.in: New file, used to build zipfile format distribution
	of gal for Win32.

	* configure.in
	* Makefile.am: Add gal-zip(.in).

	* */Makefile.am
	* */*.c: Harmonize -I and #include conventions. (Of course, this
	hasn't anything to do with Windows porting as such, I just got
	carried away...) Use only -I$(top_srcdir). Use paths to gal
	headers staring with "gal", except for headers from the same
	directory as the .c file, which are included as such. Include all
	gal headers using doublequotes. Sort #includes and remove
	duplicates and obvious redundancies. Include config.h first
	without any HAVE_CONFIG_H, then system headers, then other GNOME
	lib headers, than gal's own headers. Just include gtk.h instead of
	separate gtk*.h headers. Don't include gi18n.h, include e-i18n.h
	to use e_gettext() consistently.

	* gal/Makefile.am: Use -no-undefined on Win32 so that libtool
	agrees to build a shared library. Because of the bidirectional
	dependency between libgal and libgal-a11y we can build libgal-a11y
	sanely as a shared library on Win32, so we don't install any
	separate libgal-a11y at all. So, on Win32, link the stuff that
	goes into libgal-a11y also into libgal. Link with REGEX_LIBS.

	* gal/a11y/Makefile.am: See above. Just build a dummy static
	libgal-a11y on Win32 (can't convince Automake not to build the
	library at all on one platform using Automake ifdef,
	apparently). Then (this is a gross hack) explicitly remove the
	library after installation in the install-data-local rule.

	* gal/e-table/Makefile.am
	* gal/e-table/e-table-config.c: Rename ETABLE_GLADEDIR to
	GAL_GLADEDIR for consistency.

	* gal/e-table/e-cell-date.c: No localtime_r() in Microsoft's C
	library, but its localtime() *is* thread-safe.

	* gal/e-table/e-cell-text.c
	* gal/e-table/e-cell-tree.c
	* gal/e-table/e-cell-vbox.c
	* gal/e-text/e-text.c
	* gal/widgets/e-unicode.c: Remove unnecessary inclusion of gdkx.h.

	* gal/e-table/e-cell-tree.c (ect_realize): Instead of the Xlib
	macro None (whose value is zero), use the corresponding
	zero-valued enums from the appropriate GDK type.

	* gal/e-table/e-table-config.c
	* gal/e-table/e-table-field-chooser.c
	* gal/menus/gal-define-views-dialog.c
	* gal/menus/gal-view-instance-save-as-dialog.c
	* gal/menus/gal-view-new-dialog.c
	* gal/widgets/e-categories-master-list-array.c
	* gal/widgets/e-categories-master-list-dialog.c
	* gal/widgets/e-categories.c: Use g_build_filename() to construct
	pathnames at run-time instead of compile-time. On Windows the
	macros GAL_GLADEDIR and GAL_IMAGESDIR expand to function calls, in
	order to support installing in a freely chosen location.

	* gal/e-table/e-table-item.c
	* gal/e-table/e-cell-vbox.c: Instrad of the Xlib GrabSuccess, use
	GDK_GRAB_SUCCESS (which has the same value).

	* gal/e-table/e-table-specification.c (e_table_specification_load_from_file)
	* gal/e-table/e-table.c (e_table_load_specification)
	* gal/e-table/e-tree-table-adapter.c (open_file)
	* gal/menus/gal-view-instance.c (load_current_view)
	* gal/menus/gal-view-instance.c (load_current_view): On Win32,
	convert filename to the locale character set before passing to
	xmlParseFile() which doesn't use UTF-8 filenames. Use gstdio
	wrappers.

	* gal/util/Makefile.am: Define GAL_PREFIX as $prefix. Define
	GAL_LOCALEDIR, GAL_GLADEDIR and GAL_IMAGESDIR also here for
	e-win32-reloc.c. Include e-win32-reloc.c on Win32.

	* gal/util/e-iconv.c (e_iconv_init): Use g_win32_getlocale() on
	Windows.

	* gal/util/e-util.c
	* gal/util/e-xml-utils.c: Use g_mkstemp() instead of non-portable
	mkstemp(). Use GLib pathname manipulation functions. Use gstdio
	wrappers.

	* gal/util/e-util-private.h: New file. Contains just Win32 bits
	for now that redefine the directory names from the Makefile as
	functions calls.

	* gal/util/e-win32-reloc.c: New file. Contains a minimal DllMain()
	and functions to support freely chosen installation location on
	Windows.

	* gal/util/e-xml-utils.c: No fsync() in the Microsoft C library.

	* gal/windgets/Makefile.am: Add -I$(top_srcdir)/gal for
	consistency with the sibling Makefile.am files.

	* gal/widgets/e-canvas.c: Instead of the Xlib AlreadyGrabbed, use
	GDK_GRAB_ALREADY_GRABBED.

svn path=/trunk/; revision=29249
2005-04-29 14:18:18 +00:00
2005-04-29 14:18:18 +00:00
2005-04-28 09:27:39 +00:00
2004-05-20 11:58:06 +00:00
2005-04-18 14:32:16 +00:00
2004-12-22 07:40:57 +00:00
2004-11-18 07:50:15 +00:00
2005-04-29 14:18:18 +00:00
2005-02-18 04:30:32 +00:00
2005-03-15 02:51:47 +00:00
2005-04-28 09:58:49 +00:00
2005-04-29 05:20:30 +00:00
2005-04-29 14:18:18 +00:00
2005-02-03 23:34:15 +00:00
2004-12-21 06:53:19 +00:00
2005-02-01 17:53:52 +00:00
2005-04-26 13:00:10 +00:00
2004-10-20 05:17:54 +00:00
2004-12-14 19:10:17 +00:00
2004-12-14 19:10:17 +00:00

Evolution is the integrated mail, calendar and address book suite from
the Evolution Team.

See http://www.gnome.org/projects/evolution for more information.

If you are using Evolution, you may wish to subscribe to the Evolution
users mailing list.  If you are interested in contributing to
development on it, you should certainly subscribe to the Evolution
Hackers mailing list.  Visit

	http://lists.ximian.com

to subscribe or view archives of the Ximian mailing lists.

If you are planning to work on any part of Evolution, please send mail
to the mailing list first, to avoid duplicated effort (and to make
sure that you aren't basing your work on interfaces that are expected
to change).

There is also a #evolution IRC channel on irc.gnome.org.

Help for Evolution is available in the user manual (select "Help" from
the menu after running the application), at the Novell knowledge base
(http://support.novell.com), in the Evolution man page (run "man
evolution" at the command line), and in the --help strings (run
"evolution --help" at the command line).

The rest of this file is dedicated to building Evolution.


DEPENDENCIES
------------

In order to build Evolution you need to have the full set of GNOME 2.6
(or greater) development libraries installed.

GNOME 2.6 or greater comes with most of the modern distributions, so
in most cases it should be enough to just install all the devel
packages from your distribution.

Please make sure you have the most recent versions of the libraries
installed, since bugs in the libraries can cause bugs in Evolution.

Additional dependencies, besides the stock GNOME libraries (the
dependencies should be compiled in the order they are listed here):

	* gnome-icon-theme 1.2.0 or later

	* ORBit 2.9.8 or later

	     ftp://ftp.gnome.org/pub/gnome/sources/libsoup
	
	* libsoup 2.2.1 or later

	     ftp://ftp.gnome.org/pub/gnome/sources/libsoup

	* evolution-data-server 1.1.1 or later

	     ftp://ftp.gnome.org/pub/gnome/sources/evolution-data-server

	* gtkhtml 3.5.0 or later

	     ftp://ftp.gnome.org/pub/gnome/sources/gtkhtml

	* gal 2.4.0 or later

	     ftp://ftp.gnome.org/pub/gnome/sources/gal

	* [Optional] Mozilla NSPR/NSS libraries

	  These are needed if you want to compile Evolution with SSL and S/MIME
	  support.

	     http://www.mozilla.org/

          Many distributions ship these as Mozilla development
          packages.

	* [Optional] gnome-pilot 2.0 or later

	  This is only necessary if you want to be able to synchronize
	  your Palm device with Evolution.

	     ftp://ftp.gnome.org/pub/gnome/sources/gnome-pilot
	     ftp://ftp.gnome.org/pub/gnome/sources/gnome-pilot-conduits

	* [Optional] gnome-spell 1.0.1 or later

	  This is only necessary if you want to have the spell
	  checking functionality in Evolution's message composer.

	     ftp://ftp.gnome.org/pub/gnome/sources/gnome-spell

CONFIGURING EVOLUTION
---------------------

First you have to decide whether you want to install Evolution (and
its dependencies) into the same prefix as the rest of your GNOME
install, or into a new prefix.

Installing everything into the same prefix as the rest of your GNOME
install will make it much easier to build and run programs, and easier
to switch between using packages and building it yourself, but it may
also make it harder to uninstall later.  Also, it increases the chance
that something goes wrong and your GNOME installation gets ruined.

If you want to install in a different prefix, you need to do the
following things:

	* Set the PKG_CONFIG_PATH environment variable to contain a
          colon-separated list of all the pkg-config directories that
          will be involved in the build.  This basically means a list
          of $prefix/lib/pkgconfig directory names, where $prefix is
          the prefix where a library is installed.

	  For example, if you have GNOME installed in /usr and you
          are installing Evolution and its dependencies in
          /opt/evolution, you want to do something like the following
          (assuming you are using Bash):

	      export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/opt/evolution/lib/pkgconfig

	* Edit the bonobo-activation-config.xml file (which is
          normally found in /etc/bonobo-activation/) to include the
          location where you are installing Evolution.

	  In the example given above (GNOME in /usr, Evolution and
          dependencies in /opt/evolution), your
          bonobo-activation-config.xml will have to look like this:

	      <?xml version="1.0"?>
	      <oafconfig>
	        <searchpath>
	          <item>/usr/lib/bonobo/servers</item>
	          <item>/opt/evolution/lib/bonobo/servers</item>
	        </searchpath>
	      </oafconfig>

	* Pass an appropriate --prefix parameter to the configure
          scripts of Evolution and its dependencies, eg:

	      ./configure --prefix=/opt/evolution

More information on how to use the configure script is available in
the INSTALL file which is part of the Evolution tarball.


OPTIONAL FEATURES
-----------------

Some optional features can be enabled at compilation time by passing
appropriate flags to the configure script:

	* GNOME Pilot support.

	  Assuming you have installed gnome-pilot, add the following
	  options:

	    --with-pisock=<prefix> --enable-pilot-conduits=yes

	  Where <prefix> is the location where pilot-link (a package
	  that gnome-pilot depends on) was installed.

	* SSL support.

	  Make sure you have Mozilla's NSS nad NSPR libraries
	  installed and pass the following flag:

	    --enable-nss

Description
No description provided
Readme 1.4 GiB
Languages
C 96.8%
JavaScript 1.4%
CMake 1.2%
Makefile 0.2%
Python 0.2%