Commit 0ed3888b authored by JP Rosevear's avatar JP Rosevear Committed by JP Rosevear
Browse files

bump version, libtool numbers

2004-04-19  JP Rosevear  <jpr@ximian.com>

	* configure.in: bump version, libtool numbers
parent 8df81e7f
2004-04-19 JP Rosevear <jpr@ximian.com>
* configure.in: bump version, libtool numbers
2004-04-13 Sivaiah Nallagatla <snallagatla@novell.com>
* configure.in : added LIBEGROUPWISE_* variables and corresponding AC_SUBST for
......
This diff is collapsed.
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
/*
* e-destination.h
*
* Copyright (C) 2001-2004 Ximian, Inc.
*
* Authors: Jon Trowbridge <trow@ximian.com>
* Chris Toshok <toshok@ximian.com>
*/
/*
* This program is free software; you can redistribute it and/or
* modify it under the terms of version 2 of the GNU General Public
* License as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA.
*/
#ifndef __E_DESTINATION_H__
#define __E_DESTINATION_H__
#include <glib.h>
#include <glib-object.h>
#include <libebook/e-contact.h>
#include <libebook/e-book.h>
#include <libxml/tree.h>
#define E_TYPE_DESTINATION (e_destination_get_type ())
#define E_DESTINATION(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), E_TYPE_DESTINATION, EDestination))
#define E_DESTINATION_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), E_TYPE_DESTINATION, EDestinationClass))
#define E_IS_DESTINATION(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), E_TYPE_DESTINATION))
#define E_IS_DESTINATION_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), E_TYPE_DESTINATION))
#define E_DESTINATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), E_TYPE_DESTINATION, EDestinationClass))
typedef struct _EDestination EDestination;
typedef struct _EDestinationClass EDestinationClass;
struct _EDestinationPrivate;
struct _EDestination {
GObject object;
struct _EDestinationPrivate *priv;
};
struct _EDestinationClass {
GObjectClass parent_class;
/* Padding for future expansion */
void (*_ebook_reserved0) (void);
void (*_ebook_reserved1) (void);
void (*_ebook_reserved2) (void);
void (*_ebook_reserved3) (void);
void (*_ebook_reserved4) (void);
};
GType e_destination_get_type (void);
EDestination *e_destination_new (void);
EDestination *e_destination_copy (const EDestination *);
gboolean e_destination_empty (const EDestination *);
gboolean e_destination_equal (const EDestination *a, const EDestination *b);
/* for use with EDestinations that wrap a particular contact */
void e_destination_set_contact (EDestination *, EContact *contact, int email_num);
void e_destination_set_contact_uid (EDestination *dest, const char *uid, gint email_num);
void e_destination_set_book (EDestination *, EBook *book);
EContact *e_destination_get_contact (const EDestination *);
const char *e_destination_get_source_uid (const EDestination *);
const char *e_destination_get_contact_uid (const EDestination *);
int e_destination_get_email_num (const EDestination *);
/* for use with EDestinations built up from strings (not corresponding to contacts in a user's address books) */
void e_destination_set_name (EDestination *, const char *name);
void e_destination_set_email (EDestination *, const char *email);
const char *e_destination_get_name (const EDestination *); /* "Jane Smith" */
const char *e_destination_get_email (const EDestination *); /* "jane@assbarn.com" */
const char *e_destination_get_address (const EDestination *); /* "Jane Smith <jane@assbarn.com>" (or a comma-sep set of such for a list) */
gboolean e_destination_is_evolution_list (const EDestination *);
gboolean e_destination_list_show_addresses (const EDestination *);
/* If true, they want HTML mail. */
void e_destination_set_html_mail_pref (EDestination *dest, gboolean flag);
gboolean e_destination_get_html_mail_pref (const EDestination *);
/* used by the evolution composer to manage automatic recipients
XXX should probably be implemented using a more neutral/extensible
approach instead of a hardcoded evolution-only flag. */
gboolean e_destination_is_auto_recipient (const EDestination *);
void e_destination_set_auto_recipient (EDestination *, gboolean value);
/* parse out an EDestination (name/email, not contact) from a free form string. */
void e_destination_set_raw (EDestination *, const char *free_form_string);
/* generate a plain-text representation of an EDestination* or EDestination** */
const char *e_destination_get_textrep (const EDestination *, gboolean include_email); /* "Jane Smith" or "jane@assbarn.com" */
char *e_destination_get_textrepv (EDestination **);
/* XML export/import routines. */
char *e_destination_export (const EDestination *);
char *e_destination_exportv (EDestination **);
EDestination *e_destination_import (const char *str);
EDestination **e_destination_importv (const char *str);
/* EVCard "export" routines */
void e_destination_export_to_vcard_attribute (EDestination *dest, EVCardAttribute *attr);
void e_destination_freev (EDestination **);
#endif /* __E_DESTINATION_H__ */
.deps
Makefile
Makefile.in
.libs
.deps
*.lo
*.la
*.bb
*.bbg
*.da
*.gcov
camel-lock-helper
camel-index-control
\ No newline at end of file
Note to hackers
---------------
When hacking on camel (and on the gnome mailer in general),
be sure to follow the same coding style as the initial authors.
Please read the file HACKING in gnumeric and follow the
general guidelines explained in it.
Please take a look at camel source files and try to exactly
imitate the coding style. We are perfectly aware that this
is not the best and unique style, but it is absolutely
mandatory that Camel is homogeneous. If you find the current
coding style to have some weaknesses, please contact the
authors to discuss this matter.
Thanks.
Bertrand.
This diff is collapsed.
This diff is collapsed.
## Process this file with automake to produce Makefile.in
SUBDIRS = . providers tests
libcamelincludedir = $(privincludedir)/camel
camellibexecdir = $(privlibexecdir)/camel
camellibexec_PROGRAMS = camel-lock-helper camel-index-control
privlib_LTLIBRARIES = libcamel.la
INCLUDES = -I.. -I$(srcdir)/.. \
-I$(top_srcdir)/intl \
-I$(top_srcdir)/e-util \
-DCAMEL_LIBEXECDIR=\""$(camellibexecdir)"\" \
-DCAMEL_PROVIDERDIR=\""$(camel_providerdir)"\" \
-DG_LOG_DOMAIN=\"camel\" \
$(CAMEL_CFLAGS)
libcamel_la_SOURCES = \
broken-date-parser.c \
camel-address.c \
camel-arg.c \
camel-block-file.c \
camel-certdb.c \
camel-charset-map.c \
camel-cipher-context.c \
camel-data-cache.c \
camel-data-wrapper.c \
camel-debug.c \
camel-digest-folder.c \
camel-digest-store.c \
camel-digest-summary.c \
camel-disco-diary.c \
camel-disco-folder.c \
camel-disco-store.c \
camel-exception.c \
camel-file-utils.c \
camel-filter-driver.c \
camel-filter-search.c \
camel-folder-search.c \
camel-folder-summary.c \
camel-folder-thread.c \
camel-folder.c \
camel-gpg-context.c \
camel-html-parser.c \
camel-http-stream.c \
camel-index.c \
camel-internet-address.c \
camel-junk-plugin.c \
camel-lock.c \
camel-lock-client.c \
camel-medium.c \
camel-mime-filter-bestenc.c \
camel-mime-filter-basic.c \
camel-mime-filter-charset.c \
camel-mime-filter-canon.c \
camel-mime-filter-crlf.c \
camel-mime-filter-enriched.c \
camel-mime-filter-from.c \
camel-mime-filter-html.c \
camel-mime-filter-tohtml.c \
camel-mime-filter-index.c \
camel-mime-filter-linewrap.c \
camel-mime-filter-save.c \
camel-mime-filter-windows.c \
camel-mime-filter.c \
camel-mime-message.c \
camel-mime-parser.c \
camel-mime-part-utils.c \
camel-mime-part.c \
camel-mime-utils.c \
camel-movemail.c \
camel-multipart.c \
camel-multipart-encrypted.c \
camel-multipart-signed.c \
camel-object.c \
camel-operation.c \
camel-partition-table.c \
camel-provider.c \
camel-sasl.c \
camel-sasl-anonymous.c \
camel-sasl-cram-md5.c \
camel-sasl-digest-md5.c \
camel-sasl-gssapi.c \
camel-sasl-kerberos4.c \
camel-sasl-login.c \
camel-sasl-ntlm.c \
camel-sasl-plain.c \
camel-sasl-popb4smtp.c \
camel-search-private.c \
camel-seekable-stream.c \
camel-seekable-substream.c \
camel-service.c \
camel-session.c \
camel-smime-context.c \
camel-store.c \
camel-store-summary.c \
camel-stream-buffer.c \
camel-stream-filter.c \
camel-stream-fs.c \
camel-stream-mem.c \
camel-stream-null.c \
camel-stream-process.c \
camel-stream.c \
camel-string-utils.c \
camel-text-index.c \
camel-tcp-stream-raw.c \
camel-tcp-stream-ssl.c \
camel-tcp-stream-openssl.c \
camel-tcp-stream.c \
camel-transport.c \
camel-uid-cache.c \
camel-url.c \
camel-url-scanner.c \
camel-utf8.c \
camel-vee-folder.c \
camel-vee-store.c \
camel-vtrash-folder.c \
camel.c
libcamelinclude_HEADERS = \
broken-date-parser.h \
camel-address.h \
camel-arg.h \
camel-block-file.h \
camel-certdb.h \
camel-charset-map.h \
camel-cipher-context.h \
camel-data-cache.h \
camel-data-wrapper.h \
camel-debug.h \
camel-digest-folder.h \
camel-digest-store.h \
camel-digest-summary.h \
camel-disco-diary.h \
camel-disco-folder.h \
camel-disco-store.h \
camel-exception-list.def \
camel-exception.h \
camel-file-utils.h \
camel-filter-driver.h \
camel-filter-search.h \
camel-folder-search.h \
camel-folder-summary.h \
camel-folder-thread.h \
camel-folder.h \
camel-gpg-context.h \
camel-http-stream.h \
camel-index.h \
camel-internet-address.h \
camel-i18n.h \
camel-junk-plugin.h \
camel-lock.h \
camel-lock-client.h \
camel-medium.h \
camel-mime-filter-bestenc.h \
camel-mime-filter-basic.h \
camel-mime-filter-charset.h \
camel-mime-filter-canon.h \
camel-mime-filter-crlf.h \
camel-mime-filter-enriched.h \
camel-mime-filter-from.h \
camel-mime-filter-html.h \
camel-mime-filter-tohtml.h \
camel-mime-filter-index.h \
camel-mime-filter-linewrap.h \
camel-mime-filter-save.h \
camel-mime-filter-windows.h \
camel-mime-filter.h \
camel-mime-message.h \
camel-mime-parser.h \
camel-mime-part-utils.h \
camel-mime-part.h \
camel-mime-utils.h \
camel-movemail.h \
camel-multipart.h \
camel-multipart-encrypted.h \
camel-multipart-signed.h \
camel-object.h \
camel-operation.h \
camel-partition-table.h \
camel-provider.h \
camel-sasl.h \
camel-sasl-anonymous.h \
camel-sasl-cram-md5.h \
camel-sasl-digest-md5.h \
camel-sasl-gssapi.h \
camel-sasl-kerberos4.h \
camel-sasl-login.h \
camel-sasl-ntlm.h \
camel-sasl-plain.h \
camel-sasl-popb4smtp.h \
camel-seekable-stream.h \
camel-seekable-substream.h \
camel-service.h \
camel-session.h \
camel-smime-context.h \
camel-store.h \
camel-store-summary.h \
camel-stream-buffer.h \
camel-stream-filter.h \
camel-stream-fs.h \
camel-stream-mem.h \
camel-stream-null.h \
camel-stream-process.h \
camel-stream.h \
camel-string-utils.h \
camel-text-index.h \
camel-tcp-stream-raw.h \
camel-tcp-stream-ssl.h \
camel-tcp-stream.h \
camel-transport.h \
camel-types.h \
camel-uid-cache.h \
camel-url.h \
camel-url-scanner.h \
camel-utf8.h \
camel-vee-folder.h \
camel-vee-store.h \
camel-vtrash-folder.h \
camel.h
libcamel_la_LDFLAGS = -version-info 0:0:0
libcamel_la_LIBADD = \
$(top_builddir)/e-util/libeutil.la \
$(CAMEL_LIBS)
camel_lock_helper_SOURCES = \
camel-lock-helper.c \
camel-lock-helper.h
# NOTE: This needs to be cleaned up, it shouldn't link with all this crap,
# because it might be setuid.
camel_lock_helper_LDADD = \
camel-lock.o \
$(libcamel_la_LIBADD)
camel_index_control_SOURCES = \
camel-index-control.c
camel_index_control_LDADD = \
$(libcamel_la_LIBADD) \
libcamel.la
# $(EVOLUTION_MAIL_LIBS)
install-exec-hook:
@if test -n "$(CAMEL_LOCK_HELPER_USER)"; then \
if test `whoami` = root ; then \
chown $(CAMEL_LOCK_HELPER_USER) $(DESTDIR)$(camellibexecdir)/camel-lock-helper ; \
chmod u+s $(DESTDIR)$(camellibexecdir)/camel-lock-helper ; \
else \
echo '*** WARNING ***' ; \
echo "Camel will not be able to open mbox files until you perform the following steps:" ; \
echo " 1. Become root" ; \
echo " 2. chown $(CAMEL_LOCK_HELPER_USER) $(DESTDIR)$(sbindir)/camel-lock-helper" ; \
echo " 3. chmod u+s $(DESTDIR)$(sbindir)/camel-lock-helper" ; \
echo '*** WARNING ***' ; \
fi \
else \
echo "No user to chown to"; \
fi
@if test -n "$(CAMEL_LOCK_HELPER_GROUP)"; then \
if test `whoami` = root ; then \
chgrp $(CAMEL_LOCK_HELPER_GROUP) $(DESTDIR)$(camellibexecdir)/camel-lock-helper ; \
chmod g+s $(DESTDIR)$(camellibexecdir)/camel-lock-helper ; \
else \
echo '*** WARNING ***' ; \
echo "Camel will not be able to open mbox files until you perform the following steps:" ; \
echo " 1. Become root" ; \
echo " 2. chgrp $(CAMEL_LOCK_HELPER_GROUP) $(DESTDIR)$(camellibexecdir)/camel-lock-helper" ; \
echo " 3. chmod g+s $(DESTDIR)$(camellibexecdir)/camel-lock-helper" ; \
echo '*** WARNING ***' ; \
fi \
else \
echo "No user to chown to"; \
fi
noinst_HEADERS = \
camel-charset-map-private.h \
camel-private.h \
camel-search-private.h \
camel-html-parser.h
EXTRA_DIST = \
ChangeLog.pre-1-4 \
README
CAMEL
A generic Messaging Library
----
Introduction:
-------------
Camel is a generic messaging library. It supports the standard
messaging system for receiving and sending messages. It is the
messaging backend for Evolution.
The name "camel" stands for ... nothing. Open area of development there.
You know, that "bazaar" thing. Maybe could we organize a big contest on
gnome-list to find the best explanation :)
Camel draws heavily from JavaMail and the IMAP4rev1 RFC. People
wanting to hack on a provider should read the JavaMail API
specification, but CMC and MAPI are of interest too.
Organization:
-------------
The library is roughly a set of abstract classes, some kind of generic
"interfaces" (IDL interfaces, not Java interfaces).
Particular implementations are called providers.
Here are the basic objects:
* CamelService : An abstract class representing an access to a server.
Handles the connection and authentication to any server.
* CamelStore (CamelService): A hierarchy of folders on a server.
* CamelFolder : An object containing messages. A folder is always
associated with a store.
* CamelMessage : An object contained in folders. Is defined by a set
of attributes and a content. (Attributes include: the date it was
received, the sender address, .....)
* CamelTransport (CamelService): A way to send messages.
....
...
Important note for Camel hackers:
---------------------------------
Camel has been a lot of work, and has been conceived to be general
enough to be used outside the gnome-mailer. It is possible in the
future that it is used in software with licenses incompatible with the
GPL. For this reason, the copyright has to be owned by a unique
entity. Be sure, however, that Camel will always be available under
the GPL. Significant authors will always be consulted before any
special use of Camel. Moreover, in special situations, they may be
given the authorization to use Camel with a license different than the
GPL.
Thus, when adding code in Camel, always add the following lines at the
begining of the file:
/*
* Copyright 1999, 200x Ximian, Inc. (http://www.ximian.com)
*
* Author: Your name <your.email@address>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*/
You may also want to add your name to the author list inside this
header.
Please contact Ximian, Inc. (http://www.ximian.com) if you want to discuss
this copyright issue.
Happy hacking,
Ximian, Inc.
You want to hack on Camel ?
Thanks. Camel aims at being the best messaging
library for Linux and your help is welcome.
Please be sure to read the following files before
commiting any change or sending any patch:
CODING.STYLE
README.COPYRIGHT
Thanks.
Bertrand <Bertrand.Guiheneuf@aful.org>
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
/*
* Authors: Jeffrey Stedfast <fejj@ximian.com>
*
* Copyright 2000 Ximian, Inc. (www.ximian.com)
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of version 2 of the GNU General Public
* License as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public
* License along with this program; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*
*/
#include <time.h>
/* prototypes for functions dealing with broken date formats */
time_t parse_broken_date (const char *datestr, int *saveoffset);
This diff is collapsed.
/*
* Copyright (C) 2000 Ximian Inc.
*
* Authors: Michael Zucchi <notzed@ximian.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of version 2 of the GNU General Public
* License as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public
* License along with this program; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.