aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/.cvsignore11
-rw-r--r--tools/Makefile.am65
-rwxr-xr-xtools/csv2vcard236
-rw-r--r--tools/evolution-addressbook-abuse.c137
-rw-r--r--tools/evolution-addressbook-clean.in24
-rw-r--r--tools/evolution-addressbook-import.c90
-rw-r--r--tools/evolution-launch-composer.c357
-rw-r--r--tools/killev.c218
-rwxr-xr-xtools/verify-evolution-install.sh640
9 files changed, 0 insertions, 1778 deletions
diff --git a/tools/.cvsignore b/tools/.cvsignore
deleted file mode 100644
index 50044238d3..0000000000
--- a/tools/.cvsignore
+++ /dev/null
@@ -1,11 +0,0 @@
-.deps
-.libs
-Evolution-Composer*
-Makefile
-Makefile.in
-evolution-addressbook-abuse
-evolution-addressbook-clean
-evolution-addressbook-export
-evolution-addressbook-import
-evolution-launch-composer
-killev
diff --git a/tools/Makefile.am b/tools/Makefile.am
deleted file mode 100644
index 0f4ee59981..0000000000
--- a/tools/Makefile.am
+++ /dev/null
@@ -1,65 +0,0 @@
-privlibexec_SCRIPTS = \
- csv2vcard \
- evolution-addressbook-clean
-
-privlibexec_PROGRAMS = \
- evolution-addressbook-import \
- killev
-
-
-noinst_PROGRAMS = evolution-addressbook-abuse
-
-INCLUDES = \
- -DG_LOG_DOMAIN=\"evolution-tools\" \
- -I$(top_srcdir) \
- -I$(top_builddir) \
- -DEVOLUTION_LOCALEDIR=\""$(localedir)"\" \
- -DPREFIX=\""$(prefix)"\" \
- -DSYSCONFDIR=\""$(sysconfdir)"\" \
- -DDATADIR=\""$(datadir)"\" \
- -DLIBDIR=\""$(libdir)"\" \
- -I$(top_srcdir)/addressbook \
- -I$(top_srcdir)/addressbook/backend \
- -I$(top_builddir)/addressbook/backend \
- -DG_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED \
- $(GNOME_FULL_CFLAGS)
-
-EXTRA_DIST = $(privlibexec_SCRIPTS) verify-evolution-install.sh \
- evolution-addressbook-clean.in
-
-CORBA_SOURCE = \
- Evolution-Composer.h \
- Evolution-Composer-common.c \
- Evolution-Composer-skels.c \
- Evolution-Composer-stubs.c
-
-BUILT_SOURCES = $(CORBA_SOURCE)
-
-idls = \
- $(top_srcdir)/composer/Evolution-Composer.idl
-
-$(CORBA_SOURCE): $(idls)
- $(ORBIT_IDL) -I $(srcdir) $(IDL_INCLUDES) $(idls)
-
-evolution_addressbook_import_LDADD = \
- $(GNOME_FULL_LIBS) \
- $(top_builddir)/addressbook/backend/ebook/libebook.la \
- $(top_builddir)/widgets/menus/libmenus.la
-
-evolution_addressbook_abuse_LDADD = \
- $(evolution_addressbook_import_LDADD)
-
-killev_SOURCES = \
- killev.c
-
-killev_LDADD = \
- $(top_builddir)/e-util/libeutil.la
-
-CLEANFILES = evolution-addressbook-clean $(BUILT_SOURCES)
-
-
-evolution-addressbook-clean: evolution-addressbook-clean.in Makefile
-## Use sed and then mv to avoid problems if the user interrupts.
- sed -e 's?\@EVOLUTION_TOOLSDIR\@?$(privlibexecdir)?g' \
- < $(srcdir)/evolution-addressbook-clean.in > evolution-addressbook-clean.tmp \
- && mv evolution-addressbook-clean.tmp evolution-addressbook-clean
diff --git a/tools/csv2vcard b/tools/csv2vcard
deleted file mode 100755
index b968fbd9c3..0000000000
--- a/tools/csv2vcard
+++ /dev/null
@@ -1,236 +0,0 @@
-#!/usr/bin/perl -w
-#
-# cvs2vcard - Script to convert Outlook CSV files into VCard files
-# suitable to be imported into Evolution.
-#
-# Copyright (C) 2001 Ximian, Inc.
-#
-# 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.
-#
-# Author: Michael MacDonald <mjmac@ximian.com>
-#
-
-use strict;
-use diagnostics;
-use Text::ParseWords;
-
-sub usage
-{
- print STDERR << "--EndOfUsage";
-
-Takes a CSV-formatted list of contacts from Outlook and attempts to
-convert it into a list of VCards suitable for import into Evolution.
-
-Usage: $0 [infile outfile]
-
---EndOfUsage
-
- exit;
-}
-
-sub is_recognized_format
-{
- my $line = shift;
-
- # Making some assumptions here... Prolly OK.
- return $line =~ /(First Name|Middle Name|Last Name)/;
-}
-
-sub map_columns
-{
- my $line = shift;
-
- my @names = parse_line(',', 0, $line);
-
- my $ctr = 0;
- my %fieldmap = map { $_ => $ctr++ } @names;
-
- return %fieldmap;
-}
-
-sub build_vcard_attr_from_def
-{
- my ($def, $fields, $map) = @_;
-
- # Valid chars for lookup (from Outlook CSV) are
- # A-Za-z0-9_-'/
- # Valid chars for formatting of attr are
- # \s,|
- my @lookup = map { s/=0A$//; s/[^\w\s\-'\/]//; $_; } split /[\s,]*\|[\s,]*/, $def;
-
- foreach my $el (@lookup) {
- unless (defined($map->{ $el })) {
- print STDERR "$el is undefined\n";
- next;
- }
- if (defined($fields->[$map->{ $el }])) {
- unless ($fields->[$map->{ $el }] =~ /(^$|0\/0\/00)/) {
- $def =~ s/$el/$fields->[$map->{ $el }]/;
- } else {
- $def =~ s/((?<=\|)\s*)?$el(\s*?(?=\|))?(=0A)?,?//;
- }
- } else {
- $def =~ s/((?<=\|)\s*)?$el(\s*?(?=\|))?(=0A)?,?//;
- }
- }
- # Get rid of field delimiters
- $def =~ s/\|//g;
- # Snip off any trailing semicolons or whitespace
- $def =~ s/[\s;]*$//;
-
- return $def;
-}
-
-sub build_vcard_from_line {
- my ($line, %map) = @_;
- my %vcard;
-
- my @fields = parse_line(',', 0, $line);
-
- my %vcard_def = ( FN => 'Title |First Name |Middle Name |Last Name |Suffix',
- N => 'Last Name| Suffix|;First Name|;Middle Name|;Title',
- 'ADR;WORK' => 'PO Box|;Business Street 2|;Business Street|;Business City|;Business State|;Business Postal Code|;Business Country',
- 'LABEL;QUOTED-PRINTABLE;WORK' => 'PO Box |Business Street=0A|Business Street 2=0A|Business City,| Business State| Business Postal Code=0A|Business Country',
- 'TEL;WORK;VOICE' => 'Business Phone',
- 'TEL;WORK;VOICE2' => 'Business Phone 2',
- 'TEL;WORK;FAX' => 'Business Fax',
- 'TEL;WORK;COMPANY' => 'Company Main Phone',
- 'ADR;HOME' => ';Home Street 2|;Home Street|;Home City|;Home State|;Home Postal Code|;Home Country',
- 'LABEL;QUOTED-PRINTABLE;HOME' => 'Home Street=0A|Home Street 2=0A|Home City,| Home State| Home Postal Code=0A|Home Country',
- 'TEL;HOME;VOICE' => 'Home Phone',
- 'TEL;HOME;VOICE2' => 'Home Phone 2',
- 'TEL;HOME;FAX' => 'Home Fax',
- 'ADR;POSTAL' => ';Other Street 2|;Other Street|;Other City|;Other State|;Other Postal Code|;Other Country',
- 'LABEL;QUOTED-PRINTABLE;POSTAL' => 'Other Street=0A|Other Street 2=0A|Other City,| Other State| Other Postal Code=0A|Other Country',
- 'TEL;VOICE' => 'Other Phone',
- 'TEL;FAX' => 'Other Fax',
- 'TEL;CELL' => 'Mobile Phone',
- 'TEL;CAR' => 'Car Phone',
- 'TEL;PAGER' => 'Pager',
- 'TEL;PREF' => 'Primary Phone',
- 'TEL;ISDN' => 'ISDN',
- 'TEL;X-EVOLUTION-CALLBACK' => 'Callback',
- 'TEL;X-EVOLUTION-TTYTDD' => 'TTY/TDD Phone',
- 'TEL;X-EVOLUTION-TELEX' => 'Telex',
- 'TEL;X-EVOLUTION-RADIO' => 'Radio Phone',
- 'EMAIL;INTERNET' => 'E-mail Address',
- 'EMAIL;INTERNET2' => 'E-mail 2 Address',
- 'EMAIL;INTERNET3' => 'E-mail 3 Address',
- ORG => 'Company|;Department',
- TITLE => 'Job Title',
- ROLE => 'Profession',
- 'X-EVOLUTION-ASSISTANT' => "Assistant's Name",
- 'TEL;X-EVOLUTION-ASSISTANT' => "Assistant's Phone",
- 'X-EVOLUTION-SPOUSE' => 'Spouse',
- 'X-EVOLUTION-ANNIVERSARY' => 'Anniversary',
- 'X-EVOLUTION-MANAGER' => "Manager's Name",
- 'X-EVOLUTION-OFFICE' => 'Office Location',
- BDAY => 'Birthday',
- NOTE => 'Notes',
- FBURL => 'Internet Free Busy',
- URL => 'Web Page',
- );
-
- foreach my $key (keys(%vcard_def)) {
- my $attr = build_vcard_attr_from_def($vcard_def{ $key }, \@fields, \%map);
- if (defined($attr)) {
- $vcard{ $key } = $attr unless ($attr =~ /^$/);
- }
- }
-
- return %vcard;
-}
-
-sub print_vcard_to_fh
-{
- my ($fh, %vcard) = @_;
-
- print $fh "BEGIN:VCARD\n";
- foreach my $key (keys(%vcard)) {
- # Dirty hack because Evolution's vcard stores multiple email addrs
- # with same sttribute, hence key collision. Bleah.
- # Ugh! Same deal for multiple phones... (eg. bus. phone)
- #
- # And finally, while we're special-casing... Outlook exports dates
- # differently, so munge 'em if we find 'em.
- if ($key =~ /EMAIL;INTERNET/o) {
- (my $temp = $key) =~ s/\d$//;
- print $fh "$temp:$vcard{ $key }\n";
- } elsif ($key =~ /TEL;(HOME|WORK)/o) {
- (my $temp = $key) =~ s/\d$//;
- print $fh "$temp:$vcard{ $key }\n";
- } elsif ($key =~ /(BDAY|X\-EVOLUTION\-ANNIVERSARY)/o) {
- my $temp = $vcard{ $key };
- if ($temp =~ /(\d\d)\/(\d\d)\/(\d\d)/) {
- # Y2k !! MS Didn't learn anything.
- # Hope no one was born before 1915
- if ((1900 + $3) < 1915) {
- print $fh "$key:20$3-$1-$2\n";
- } else {
- print $fh "$key:19$3-$1-$2\n";
- }
- } else {
- # Something's funky... Just delete the attribute
- print STDERR "Couldn't figure out what to do with $key:$vcard{ $key }\n";
- delete($vcard{ $key });
- }
- } else {
- print $fh "$key:$vcard{ $key }\n";
- }
- }
- print $fh "END:VCARD\n\n";
-}
-
-my $in = $ARGV[0];
-my $out = $ARGV[1];
-
-usage() unless(defined($in) && defined($out));
-
-open (IN, $in)
- or die "Can't open($in): $!\n";
-
-open (OUT, ">$out")
- or die "Can't open($out): $!\n";
-
-my $linectr = 0;
-my %map;
-
-while (my $line = <IN>) {
- $line =~ s/\r//g;
- $line =~ s/\n$//;
- if ($linectr == 0) {
- $linectr++;
- usage() unless is_recognized_format($line);
- %map = map_columns($line);
- #if ($line =~ /\r\n$/) {
- # print STDERR "Apparenlty found DOS-style EOL indicators...\n";
- $/ = "\r\n";
- #}
- } else {
- $linectr++;
- while ($line =~ /^(("([^"]|\n|"")*")?,)*"([^"]|\n|"")*$/) {
- my $temp = $line;
- $line = <IN>;
- $line =~ s/\r//g;
- $line =~ s/\n$//;
- $line = "$temp $line";
- }
- my %vcard = build_vcard_from_line($line, %map);
- print_vcard_to_fh(\*OUT, %vcard);
- }
-}
-
-close(IN);
-close(OUT);
diff --git a/tools/evolution-addressbook-abuse.c b/tools/evolution-addressbook-abuse.c
deleted file mode 100644
index d01d6cb6e9..0000000000
--- a/tools/evolution-addressbook-abuse.c
+++ /dev/null
@@ -1,137 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-
-#include <config.h>
-
-#include <bonobo-activation/bonobo-activation.h>
-#include <bonobo/bonobo-main.h>
-
-#include <backend/ebook/e-book-util.h>
-#include <gnome.h>
-
-static int cards_to_add_total = 1000;
-static int cards_to_add = 50;
-static int call_count = 0;
-
-static gchar *
-make_random_string (void)
-{
- const gchar *elements = " abcdefghijklmnopqrstuvwxyz1234567890 ABCDEFGHIJKLMNOPQRSTUVWXYZ";
- gint len = strlen (elements);
- gint i, N = 5 + (random () % 10);
- gchar *str = g_malloc (N+1);
-
- for (i = 0; i < N; ++i) {
- str[i] = elements[random () % len];
- }
- str[i] = '\0';
-
- return str;
-}
-
-static gchar *
-make_random_vcard (void)
-{
- gchar *fa = make_random_string ();
- gchar *name = make_random_string ();
- gchar *email = make_random_string ();
- gchar *org = make_random_string ();
-
- gchar *vcard;
-
- vcard = g_strdup_printf ("BEGIN:VCARD\n"
- "X-EVOLUTION-FILE-AS:%s\n"
- "N:%s\n"
- "EMAIL;INTERNET:%s\n"
- "ORG:%s\n"
- "END:VCARD",
- fa, name, email, org);
- g_free (fa);
- g_free (name);
- g_free (email);
- g_free (org);
-
- return vcard;
-}
-
-/* ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** */
-
-static void
-add_cb (EBook *book, EBookStatus status, const char *id, gpointer closure)
-{
- switch (status) {
- case E_BOOK_STATUS_SUCCESS:
- --cards_to_add_total;
- g_message ("succesful add! (%d remaining)", cards_to_add_total);
- if (cards_to_add_total <= 0)
- g_main_loop_quit (NULL);
- break;
- default:
- g_message ("something went wrong...");
- g_main_loop_quit (NULL);
- break;
- }
-}
-
-static void
-use_addressbook (EBook *book, EBookStatus status, gpointer closure)
-{
- gint i;
-
- if (book == NULL || status != E_BOOK_STATUS_SUCCESS)
- g_error (_("Error loading default addressbook."));
-
- for (i = 0; i < cards_to_add; ++i) {
- gchar *vcard = make_random_vcard ();
- ECard *card = e_card_new (vcard);
- g_message ("adding %d", i);
- e_book_add_card (book, card, add_cb, NULL);
- g_free (vcard);
- g_object_unref (card);
- }
-
- g_object_unref (book);
-}
-
-static gint
-abuse_timeout (gpointer foo)
-{
- EBook *book = e_book_new ();
- e_book_load_default_book (book, use_addressbook, NULL);
-
- ++call_count;
- g_message ("timeout!");
- return call_count < cards_to_add_total / cards_to_add;
-}
-
-int
-main (int argc, char *argv[])
-{
- char *filename = NULL;
-
- struct poptOption options[] = {
- { "input-file", '\0', POPT_ARG_STRING, &filename, 0, N_("Input File"), NULL },
- POPT_AUTOHELP
- { NULL, '\0', 0, NULL, 0, NULL, NULL }
- };
-
- if (getenv ("ABUSE_THE_WOMBAT") == NULL) {
- g_print ("You probably don't want to use this program.\n"
- "It isn't very nice.\n");
- exit(0);
- }
-
- bindtextdomain (GETTEXT_PACKAGE, EVOLUTION_LOCALEDIR);
- textdomain (GETTEXT_PACKAGE);
-
- gnome_program_init ("evolution-addressbook-abuse", VERSION,
- LIBGNOMEUI_MODULE, argc, argv,
- GNOME_PROGRAM_STANDARD_PROPERTIES,
- GNOME_PARAM_POPT_TABLE, options,
- NULL);
-
- g_timeout_add (20, abuse_timeout, NULL);
-
- bonobo_main ();
-
- return 0;
-}
diff --git a/tools/evolution-addressbook-clean.in b/tools/evolution-addressbook-clean.in
deleted file mode 100644
index b7ee7ba167..0000000000
--- a/tools/evolution-addressbook-clean.in
+++ /dev/null
@@ -1,24 +0,0 @@
-#! /usr/bin/perl -w
-
-sub do_system
-{
- my ($command) = @_;
- system ($command);
- if ($? != 0) {
- die "Command failed: $command";
- }
-}
-
-$filename = `@EVOLUTION_TOOLSDIR@/evolution-addressbook-export`;
-if ($? != 0) {
- $! = $?;
- die $!;
-}
-
-$HOME = $ENV{"HOME"};
-
-system ("@EVOLUTION_TOOLSDIR@/killev");
-do_system ("/bin/mv ${HOME}/evolution/local/Contacts/addressbook.db ${HOME}/evolution/local/Contacts/addressbook-backup.db");
-do_system ("@EVOLUTION_TOOLSDIR@/evolution-addressbook-import --input-file $filename");
-do_system ("/bin/rm $filename");
-
diff --git a/tools/evolution-addressbook-import.c b/tools/evolution-addressbook-import.c
deleted file mode 100644
index e04a117e51..0000000000
--- a/tools/evolution-addressbook-import.c
+++ /dev/null
@@ -1,90 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-
-#include <config.h>
-
-#include <bonobo-activation/bonobo-activation.h>
-#include <bonobo/bonobo-main.h>
-#include <backend/ebook/e-book-util.h>
-#include <gnome.h>
-
-static int exec_ref_count = 0;
-
-static void
-ref_executable (void)
-{
- exec_ref_count ++;
-}
-
-static void
-unref_executable (void)
-{
- exec_ref_count --;
- if (exec_ref_count == 0)
- g_main_loop_quit (0);
-}
-
-static void
-add_cb (EBook *book, EBookStatus status, const char *id, gpointer closure)
-{
- switch (status) {
- case E_BOOK_STATUS_SUCCESS:
- unref_executable ();
- break;
- default:
- g_main_loop_quit (NULL);
- break;
- }
-}
-
-static void
-use_addressbook (EBook *book, gpointer closure)
-{
- GList *cards, *list;
- char *filename = closure;
-
- if (book == NULL)
- g_error (_("Error loading default addressbook."));
-
- cards = e_card_load_cards_from_file (filename);
-
- ref_executable ();
-
- for (list = cards; list; list = list->next) {
- ref_executable ();
- e_book_add_card (book, list->data, add_cb, closure);
- }
- sync();
-
- unref_executable ();
-}
-
-int
-main (int argc, char *argv[])
-{
- char *filename = NULL;
-
- struct poptOption options[] = {
- { "input-file", '\0', POPT_ARG_STRING, &filename, 0, N_("Input File"), NULL },
- POPT_AUTOHELP
- { NULL, '\0', 0, NULL, 0, NULL, NULL }
- };
-
- bindtextdomain (GETTEXT_PACKAGE, EVOLUTION_LOCALEDIR);
- textdomain (GETTEXT_PACKAGE);
-
- gnome_program_init ("evolution-addressbook-import", VERSION,
- LIBGNOMEUI_MODULE, argc, argv,
- GNOME_PROGRAM_STANDARD_PROPERTIES,
- GNOME_PARAM_POPT_TABLE, options,
- NULL);
-
- if (filename == NULL) {
- g_error (_("No filename provided."));
- }
-
- e_book_use_default_book (use_addressbook, filename);
-
- bonobo_main ();
-
- return 0;
-}
diff --git a/tools/evolution-launch-composer.c b/tools/evolution-launch-composer.c
deleted file mode 100644
index 8c89dbe480..0000000000
--- a/tools/evolution-launch-composer.c
+++ /dev/null
@@ -1,357 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-/*
- * evolution-sendmail.c -
- * Copyright (C) 2002, Ximian, Inc.
- *
- * Authors:
- * Christopher James Lahey <clahey@ximian.com>
- *
- * This file 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 file 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 file; if not, write to
- * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- **/
-
-#include <config.h>
-
-#include <Evolution-Composer.h>
-
-#include <string.h>
-#include <gal/util/e-util.h>
-#include <bonobo-activation/bonobo-activation.h>
-#include <gtk/gtkmain.h>
-
-#include <bonobo/bonobo-main.h>
-
-#include <libgnome/gnome-i18n.h>
-#include <libgnomeui/gnome-ui-init.h>
-
-#include <libgnomevfs/gnome-vfs-ops.h>
-#include <libgnomevfs/gnome-vfs-uri.h>
-#include <libgnomevfs/gnome-vfs-utils.h>
-#include <libgnomevfs/gnome-vfs-xfer.h>
-#include <libgnomevfs/gnome-vfs-init.h>
-
-#define READ_CHUNK_SIZE 8192
-
-#define E_SHELL_OAFIID "OAFIID:GNOME_Evolution_Shell"
-#define COMPOSER_OAFIID "OAFIID:GNOME_Evolution_Mail_Composer"
-#define NOTNULL(x) ((x) ? (x) : "")
-
-typedef struct {
- char *filename;
- char *basename;
- char *content;
- int size;
- char *description;
- char *content_type;
- gboolean show_inline;
-} attachment_t;
-
-GList *attachments; /* Of type attachment_t */
-
-char *subject;
-
-static void
-free_attachment (attachment_t *attachment)
-{
- g_free (attachment->content);
- g_free (attachment->filename);
- g_free (attachment->basename);
- g_free (attachment->content_type);
- g_free (attachment->description);
- g_free (attachment);
-}
-
-static GnomeVFSResult
-elc_read_entire_file (const char *uri,
- int *file_size,
- char **file_contents,
- char **content_type)
-{
- GnomeVFSResult result;
- GnomeVFSHandle *handle;
- char *buffer;
- GnomeVFSFileSize total_bytes_read;
- GnomeVFSFileSize bytes_read;
-
- *file_size = 0;
- *file_contents = NULL;
-
- /* Open the file. */
- result = gnome_vfs_open (&handle, uri, GNOME_VFS_OPEN_READ);
- if (result != GNOME_VFS_OK) {
- return result;
- }
-
- /* Read the whole thing. */
- buffer = NULL;
- total_bytes_read = 0;
- do {
- buffer = g_realloc (buffer, total_bytes_read + READ_CHUNK_SIZE);
- result = gnome_vfs_read (handle,
- buffer + total_bytes_read,
- READ_CHUNK_SIZE,
- &bytes_read);
- if (result != GNOME_VFS_OK && result != GNOME_VFS_ERROR_EOF) {
- g_free (buffer);
- gnome_vfs_close (handle);
- return result;
- }
-
- /* Check for overflow. */
- if (total_bytes_read + bytes_read < total_bytes_read) {
- g_free (buffer);
- gnome_vfs_close (handle);
- return GNOME_VFS_ERROR_TOO_BIG;
- }
-
- total_bytes_read += bytes_read;
- } while (result == GNOME_VFS_OK);
-
- if (content_type) {
- GnomeVFSFileInfo *info;
-
- info = gnome_vfs_file_info_new ();
- result = gnome_vfs_get_file_info_from_handle (handle, info,
- GNOME_VFS_FILE_INFO_GET_MIME_TYPE |
- GNOME_VFS_FILE_INFO_FOLLOW_LINKS);
- if (result == GNOME_VFS_OK)
- *content_type = g_strdup (gnome_vfs_file_info_get_mime_type (info));
- else
- *content_type = g_strdup ("application/octet-stream");
-
- gnome_vfs_file_info_unref (info);
- }
-
- /* Close the file. */
- result = gnome_vfs_close (handle);
- if (result != GNOME_VFS_OK) {
- g_free (buffer);
- return result;
- }
-
- /* Return the file. */
- *file_size = total_bytes_read;
- *file_contents = g_realloc (buffer, total_bytes_read);
- return GNOME_VFS_OK;
-}
-
-
-static void
-do_send (GNOME_Evolution_Composer composer_server)
-{
- CORBA_Environment ev;
-
- GNOME_Evolution_Composer_AttachmentData *attach_data;
-
- GNOME_Evolution_Composer_RecipientList *to_list, *cc_list, *bcc_list;
-
- CORBA_exception_init (&ev);
-
- attachments = g_list_reverse (attachments);
-
- while (attachments) {
- attachment_t *attachment = attachments->data;
- GList *temp;
-
- attach_data = GNOME_Evolution_Composer_AttachmentData__alloc();
- attach_data->_maximum = attach_data->_length = attachment->size;
- attach_data->_buffer = CORBA_sequence_CORBA_char_allocbuf (attach_data->_length);
- strcpy (attach_data->_buffer, attachment->content);
-
- GNOME_Evolution_Composer_attachData (composer_server,
- NOTNULL (attachment->content_type),
- NOTNULL (attachment->basename),
- NOTNULL (attachment->description),
- attachment->show_inline,
- attach_data,
- &ev);
-
- if (ev._major != CORBA_NO_EXCEPTION) {
- g_printerr ("evolution-sendmail.c: I couldn't attach data to the composer via CORBA! Aagh.\n");
- CORBA_exception_free (&ev);
- return;
- }
-
- CORBA_free (attach_data);
-
- free_attachment (attachment);
-
- temp = attachments;
- attachments = g_list_remove_link (attachments, attachments);
- g_list_free_1 (temp);
- }
-
- to_list = GNOME_Evolution_Composer_RecipientList__alloc ();
- to_list->_maximum = to_list->_length = 0;
-
- cc_list = GNOME_Evolution_Composer_RecipientList__alloc ();
- cc_list->_maximum = cc_list->_length = 0;
-
- bcc_list = GNOME_Evolution_Composer_RecipientList__alloc ();
- bcc_list->_maximum = bcc_list->_length = 0;
-
- GNOME_Evolution_Composer_setHeaders (composer_server, "", to_list, cc_list, bcc_list, NOTNULL (subject), &ev);
-
- CORBA_free (to_list);
- CORBA_free (cc_list);
- CORBA_free (bcc_list);
-
- GNOME_Evolution_Composer_show (composer_server, &ev);
-
- if (ev._major != CORBA_NO_EXCEPTION) {
- g_printerr ("evolution-sendmail.c: I couldn't show the composer via CORBA! Aagh.\n");
- CORBA_exception_free (&ev);
- return;
- }
-
- CORBA_exception_free (&ev);
-}
-
-
-static GNOME_Evolution_Composer
-get_composer ()
-{
- CORBA_Object shell;
- GNOME_Evolution_Composer composer;
-
- /* First, I obtain an object reference that represents the Shell, to make sure it's running. */
- shell = bonobo_activation_activate_from_id (E_SHELL_OAFIID, 0, NULL, NULL);
-
- printf ("shell == %p\n", shell);
-
- g_return_val_if_fail (shell != CORBA_OBJECT_NIL, NULL);
-
- /* Next, I obtain an object reference that represents the Composer. */
- composer = bonobo_activation_activate_from_id (COMPOSER_OAFIID, 0, NULL, NULL);
-
- printf ("composer == %p\n", composer);
-
- return composer;
-}
-
-static gboolean
-composer_timeout (gpointer data)
-{
- GNOME_Evolution_Composer composer;
-
- composer = get_composer ();
-
- if (composer != CORBA_OBJECT_NIL) {
- do_send (composer);
- gtk_main_quit ();
- return FALSE;
- } else {
- return TRUE;
- }
-}
-
-static void
-cb (poptContext con,
- enum poptCallbackReason reason,
- /*@null@*/ const struct poptOption * opt,
- /*@null@*/ const char * arg,
- /*@null@*/ const void * data)
-{
- const char *name = opt->longName;
- if (!strcmp (name, "add-attachment")) {
- attachment_t *new_attach = g_new (attachment_t, 1);
- new_attach->filename = g_strdup (arg);
- new_attach->basename = strrchr (new_attach->filename, '/');
- if (new_attach->basename)
- new_attach->basename ++;
- else
- new_attach->basename = new_attach->filename;
- new_attach->basename = g_strdup (new_attach->basename);
- if (new_attach->filename)
- elc_read_entire_file (new_attach->filename,
- &new_attach->size,
- &new_attach->content,
- &new_attach->content_type);
- new_attach->description = NULL;
- new_attach->show_inline = FALSE;
- if (new_attach->content) {
- attachments = g_list_prepend (attachments, new_attach);
- } else {
- free_attachment (new_attach);
- }
- } else if (!strcmp (name, "file-name")) {
- if (attachments) {
- attachment_t *attachment = attachments->data;
- g_free (attachment->basename);
- attachment->basename = g_strdup (arg);
- } else {
- }
- } else if (!strcmp (name, "content-type")) {
- if (attachments) {
- attachment_t *attachment = attachments->data;
- if (attachment->content_type) {
- }
- attachment->content_type = g_strdup (arg);
- } else {
- }
- } else if (!strcmp (name, "description")) {
- if (attachments) {
- attachment_t *attachment = attachments->data;
- if (attachment->description) {
- }
- attachment->description = g_strdup (arg);
- } else {
- }
- } else if (!strcmp (name, "show-inline")) {
- if (attachments) {
- attachment_t *attachment = attachments->data;
- if (attachment->show_inline) {
- }
- attachment->show_inline = TRUE;
- } else {
- }
- }
-}
-
-static struct poptOption cap_options[] = {
- { NULL, '\0', POPT_ARG_CALLBACK, cb, 0, NULL, NULL },
- { "add-attachment", 'a', POPT_ARG_STRING, NULL, 0, N_("An attachment to add."), NULL },
- { "content-type", 't', POPT_ARG_STRING, NULL, 0, N_("Content type of the attachment."), NULL },
- { "file-name", 'f', POPT_ARG_STRING, NULL, 0, N_("The filename to display in the mail."), NULL },
- { "description", 'd', POPT_ARG_STRING, NULL, 0, N_("Description of the attachment."), NULL },
- { "show-inline", 'i', POPT_ARG_NONE, NULL, 0, N_("Mark attachment to be shown inline by default."), NULL },
- { "subject", 's', POPT_ARG_STRING, &subject, 0, N_("Default subject for the message."), NULL },
- { NULL, '\0', 0, NULL, 0 }
-};
-
-int
-main(int argc, char *argv[])
-{
- GNOME_Evolution_Composer composer;
-
- bindtextdomain (PACKAGE, EVOLUTION_LOCALEDIR);
- textdomain (PACKAGE);
-
- gnome_program_init ("evolution-launch-composer", VERSION,
- LIBGNOMEUI_MODULE, argc, argv,
- GNOME_PROGRAM_STANDARD_PROPERTIES,
- GNOME_PARAM_POPT_TABLE, cap_options,
- NULL);
-
- composer = get_composer ();
-
- if (composer != CORBA_OBJECT_NIL) {
- do_send (composer);
- } else {
- g_timeout_add(1000, composer_timeout, NULL);
- bonobo_main ();
- }
-
- return 0;
-}
diff --git a/tools/killev.c b/tools/killev.c
deleted file mode 100644
index 0c735c0a19..0000000000
--- a/tools/killev.c
+++ /dev/null
@@ -1,218 +0,0 @@
-/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
-/* killev.c
- *
- * Copyright (C) 2003 Ximian, Inc.
- *
- * 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.
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <errno.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <sys/wait.h>
-
-#include <bonobo/bonobo-exception.h>
-#include <bonobo-activation/bonobo-activation.h>
-#include <libgnome/gnome-i18n.h>
-#include <libgnome/gnome-util.h>
-
-#include "e-util/e-lang-utils.h"
-
-typedef struct {
- char *location;
- GPtrArray *names;
-} KillevComponent;
-
-GSList *languages;
-GHashTable *components;
-
-static gboolean
-kill_process (const char *proc_name, KillevComponent *comp)
-{
- int status, i;
- char *command;
- GString *desc;
-
- command = g_strdup_printf (KILL_PROCESS_CMD " -0 %s 2> /dev/null",
- proc_name);
- status = system (command);
- g_free (command);
-
- if (status == -1 || !WIFEXITED (status)) {
- /* This most likely means that KILL_PROCESS_CMD wasn't
- * found, so just bail completely.
- */
- fprintf (stderr, _("Could not execute '%s': %s\n"),
- KILL_PROCESS_CMD, strerror (errno));
- exit (1);
- }
-
- if (WEXITSTATUS (status) != 0)
- return FALSE;
-
- desc = g_string_new (NULL);
- for (i = 0; i < comp->names->len; i++) {
- if (i > 0)
- g_string_append (desc, " / ");
- g_string_append (desc, comp->names->pdata[i]);
- }
-
- printf (_("Shutting down %s (%s)\n"), proc_name, desc->str);
- g_string_free (desc, TRUE);
- command = g_strdup_printf (KILL_PROCESS_CMD " -9 %s 2> /dev/null",
- proc_name);
- system (command);
- g_free (command);
- return TRUE;
-};
-
-static const char *patterns[] = {
- "%s", "%.16s", "lt-%s", "lt-%.13s"
-};
-static const int n_patterns = G_N_ELEMENTS (patterns);
-
-static gboolean
-kill_component (gpointer key, gpointer value, gpointer data)
-{
- KillevComponent *comp = value;
- char *base_name, *exe_name, *dash;
- int i;
-
- base_name = g_strdup (comp->location);
- try_again:
- for (i = 0; i < n_patterns; i++) {
- exe_name = g_strdup_printf (patterns[i], base_name);
- if (kill_process (exe_name, comp)) {
- g_free (exe_name);
- g_free (base_name);
- return TRUE;
- }
- g_free (exe_name);
- }
-
- dash = strrchr (base_name, '-');
- if (dash && !strcmp (dash + 1, BASE_VERSION)) {
- *dash = '\0';
- goto try_again;
- }
-
- g_free (base_name);
- return TRUE;
-}
-
-static void
-add_matching_query (const char *query)
-{
- Bonobo_ServerInfoList *info_list;
- Bonobo_ServerInfo *info;
- CORBA_Environment ev;
- const char *location, *name;
- KillevComponent *comp;
- int i;
-
- CORBA_exception_init (&ev);
-
- info_list = bonobo_activation_query (query, NULL, &ev);
- if (ev._major != CORBA_NO_EXCEPTION) {
- printf ("Bonobo activation failure: %s\n",
- bonobo_exception_get_text (&ev));
- CORBA_exception_free (&ev);
- return;
- }
-
- for (i = 0; i < info_list->_length; i++) {
- info = &info_list->_buffer[i];
-
- if (strcmp (info->server_type, "exe") != 0)
- continue;
-
- location = info->location_info;
- if (strchr (location, '/'))
- location = strrchr (location, '/') + 1;
-
- comp = g_hash_table_lookup (components, location);
- if (!comp) {
- comp = g_new (KillevComponent, 1);
- comp->location = g_strdup (location);
- comp->names = g_ptr_array_new ();
- g_hash_table_insert (components, comp->location, comp);
- }
-
- name = bonobo_server_info_prop_lookup (info, "name", languages);
- if (name)
- g_ptr_array_add (comp->names, g_strdup (name));
- }
-
- CORBA_free (info_list);
- CORBA_exception_free (&ev);
-}
-
-static void
-add_matching_repo_id (const char *repo_id)
-{
- char *query;
-
- query = g_strdup_printf ("repo_ids.has ('%s')", repo_id);
- add_matching_query (query);
- g_free (query);
-}
-
-static void
-add_matching_iid (const char *iid)
-{
- char *query;
-
- query = g_strdup_printf ("iid == '%s'", iid);
- add_matching_query (query);
- g_free (query);
-}
-
-int
-main (int argc, char **argv)
-{
- bindtextdomain (GETTEXT_PACKAGE, EVOLUTION_LOCALEDIR);
- bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
- textdomain (GETTEXT_PACKAGE);
-
- gnome_program_init (PACKAGE, VERSION, LIBGNOME_MODULE, argc, argv,
- GNOME_PROGRAM_STANDARD_PROPERTIES,
- NULL);
-
- languages = e_get_language_list ();
- components = g_hash_table_new (g_str_hash, g_str_equal);
-
- add_matching_repo_id ("IDL:GNOME/Evolution/Shell:1.0");
- g_hash_table_foreach_remove (components, kill_component, NULL);
-
- add_matching_repo_id ("IDL:GNOME/Evolution/ShellComponent:1.0");
- add_matching_repo_id ("IDL:GNOME/Evolution/Calendar/CalFactory:1.0");
- add_matching_repo_id ("IDL:GNOME/Evolution/BookFactory:1.0");
- add_matching_repo_id ("IDL:GNOME/Evolution/Importer:1.0");
- add_matching_repo_id ("IDL:GNOME/Evolution/IntelligentImporter:1.0");
- add_matching_repo_id ("IDL:GNOME/Spell/Checker:0.1");
-
- add_matching_iid ("OAFIID:GNOME_Evolution_Calendar_AlarmNotify_Factory");
- add_matching_iid ("OAFIID:GNOME_GtkHTML_Editor_Factory:3.0");
-
- g_hash_table_foreach_remove (components, kill_component, NULL);
-
- return 0;
-}
diff --git a/tools/verify-evolution-install.sh b/tools/verify-evolution-install.sh
deleted file mode 100755
index 32a911009d..0000000000
--- a/tools/verify-evolution-install.sh
+++ /dev/null
@@ -1,640 +0,0 @@
-#!/bin/sh
-#
-# Verifies that Evolution and all its supporting components
-# are installed correctly. A tool to weed out common
-# build problems.
-#
-# (C)2000 Helix Code, Inc.
-# Author: Peter Williams <peterw@helixcode.com>
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Library 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 Library General Public License for more details.
-#
-# You should have received a copy of the GNU Library General Public
-# License along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-
-problem() {
- echo "I detected the following problem: $problem"
- if test x"$rpmsystem" = xyes ; then
- echo "Suggested solution via RPM: $rpmsolution"
- fi
- if test x"$debsystem" = xyes ; then
- echo "Suggested solution via DEB: $debsolution"
- fi
- echo "Suggested solution via sources: $srcsolution"
- if test x"$comment" != x ; then
- echo ""
- echo "$comment"
- fi
- exit 1
-}
-
-check_config() {
- #bigname=$1
- #cfgname=$2
- #pkgname=$3
- eval $1=\${$1-$2}
-
- eval val=\$$1
- if type $val </dev/null 1>/dev/null 2>&1 ; then
- :
- else
- problem="Cannot find $2 or it ($val) is not executable"
- rpmsolution="Install or reinstall the '$3-devel' package"
- debsolution="Install or reinstall the $3 development libraries." #FIXME
- srcsolution="Get the latest release of $3 and install it."
- comment="If you know that $3 is installed, try setting the
-environment variable $1 to its location"
- problem
- fi
-}
-
-check_prefix() {
- #othercfg=$1
- #othername=$2
- #strict=$3
-
- eval otherpfx=\`\$$1 --prefix\`
- if test x"$3" = xstrict ; then
- if test x"$otherpfx" != x"$gl_prefix" ; then
- problem="gnome-libs and $2 do not share the same prefix"
- rpmsolution="This problem shouldn't happen with RPM installations. Verify your installation of Helix Gnome."
- debsolution="This problem shouldn't happen with DEB installations. Verify your installation of Helix Gnome."
- srcsolution="Re-run 'configure' in $2's source directory with the flag '--prefix=$gl_prefix'."
- problem
- fi
- else
- IFSbak="$IFS"
- ok="$GNOME_PATH:$gl_prefix"
- IFS=":"
- passed=no
-
- for e in $ok; do
- if test x"$e" != x ; then
- if test $otherpfx = $e ; then
- passed=yes;
- fi
- fi
- done
-
- IFS="$IFSbak"
-
- if test x"$passed" = xno ; then
- problem="$2 is not in GNOME_PATH or the same prefix as gnome-libs"
- rpmsolution="This problem shouldn't happen with RPM installations. Verify your installation of Helix Gnome."
- debsolution="This problem shouldn't happen with DEB installations. Verify your installation of Helix Gnome."
- srcsolution="Re-run 'configure' in $2's source directory with the flag '--prefix=$gl_prefix'."
- comment="Try exporting an environment variable 'GNOME_PATH' with the prefix of $2."
- problem
- fi
- fi
-}
-
-check_sysconf() {
- #othercfg=$1
- #othername=$2
-
- eval othersysc=\`\$$1 --sysconfdir\`
- if test x"$othersysc" != x"$gl_sysconf" ; then
- problem="gnome-libs and $2 do not share the same sysconfdir"
- rpmsolution="This problem shouldn't happen with RPM installations. Verify your installation of Helix Gnome."
- debsolution="This problem shouldn't happen with DEB installations. Verify your installation of Helix Gnome."
- srcsolution="Re-run 'configure' in $2's source directory with the flag '--sysconfdir=$gl_sysconf'."
- problem
- fi
-}
-
-check_oafinfo() {
- #basename=$1
- #othername=$2
-
- base=$1.oafinfo
- search="${oaf_prefix}/share/oaf:$OAF_INFO_PATH"
- IFSback="$IFS"
- IFS=":"
- ok=no
-
- for ping in $search ; do
- if test x"$ping" != x ; then
- if test -f $ping/$base ; then
- file=$ping/$base
- ok=yes
- fi
- fi
- done
-
- IFS="$IFSback"
-
- if test x$ok = xno ; then
- problem="$1.oafinfo isn't installed into Gnome's prefix or in OAF_INFO_PATH"
- rpmsolution="This problem shouldn't happen with RPM installations. Verify your installation of Helix Gnome."
- debsolution="This problem shouldn't happen with DEB installations. Verify your installation of Helix Gnome."
- srcsolution="Re-run 'configure' in $2's source directory with the flag '--datadir=$gl_datadir'."
- comment="Another likely cause of this problem would be a failed installation of $2.
-You should check to see that the install succeeded. You may also add the
-location of $1.oafinfo to the environment variable OAF_INFO_PATH"
- problem
- fi
-
- iids=`cat $file |grep iid= |sed -e 's,.*iid="\([^"]*\)".*,\1,'`
- IFS="
-"
-
- tempfile="temp-$$-verifier"
- for iid in $iids ; do
- #echo "Attempting to activate IID \"$iid\"..."
- $OAF_CLIENT -qs "iid == '$iid'" >$tempfile
- result=`cat $tempfile |grep exception`
- if test x"$result" != x ; then
- problem="The component $2 (in $file) couldn't be activated by OAF"
- rpmsolution="Verify that $file is valid and that oaf and $2 are correctly installed."
- debsolution="Verify that $file is valid and that oaf and $2 are correctly installed."
- srcsolution="Verify that $file is valid and that oaf and $2 are correctly installed."
- comment="$OAF_CLIENT reported this:
-`cat $tempfile`"
- rm -f $tempfile
- problem
- fi
- done
- rm -f $tempfile
-
- IFS="$IFSback"
-}
-
-check_bin() {
- #name=$1
- #othername=$2
-
- IFSbak="$IFS"
- IFS=":"
- passed=no
- exepath=
-
- for ping in $PATH; do
- if test x"$ping" != x -a -x $ping/$1 ; then
- if test x"$passed" = xyes ; then
- problem="The binary $1 is installed in more than one location"
- rpmsolution="Make sure that you only have one copy of the package installed"
- debsolution="Make sure that you only have one copy of the package installed"
- srcsolution="Make sure that you only have one copy of the package installed"
- comment="You probably have a package that was installed in two different prefixes,
-either from source twice or from source and from RPM/deb. Remove the older copy.
-(Note: \"make uninstall\" works on tarballs but may damage your gettext installation)"
- problem
- fi
- passed=yes;
- exepath="$ping/$1"
- fi
- done
-
- IFS="$IFSbak"
-
- if test x"$passed" = xno ; then
- problem="The binary $1 isn't in your PATH"
- rpmsolution="This problem shouldn't happen with RPM installations. Verify your installation of Helix Gnome."
- debsolution="This problem shouldn't happen with DEB installations. Verify your installation of Helix Gnome."
- srcsolution="Re-run 'configure' in $2's source directory with the flag '--bindir=$gl_bindir'."
- comment="Another likely cause of this problem would be a failed installation of $2.
-You should check to see that the install succeeded."
- problem
- fi
-
- lddfile=temp-$$-verify-ldd
- $LDD $exepath </dev/null >$lddfile 2>/dev/null
-
- if test x$? != x0 ; then
- problem="The binary $1 isn't linked correctly"
- rpmsolution="Make sure that all its dependencies are installed correctly"
- debsolution="Make sure that all its dependencies are installed correctly"
- srcsolution="Recompile $2 and make sure that it links correctly."
- comment="LDD reported the following:
-`cat $lddfile`
-"
- problem
- fi
-
- IFS="
-"
-
- use_bonobox=no
- use_bonobo=no
-
- for ping in `cat $libfile` ; do
- libname=`echo "$ping" |sed -e 's,^@@\([^@][^@]*\)@@[^@][^@]*@@,\1,'`
- libpfx=`echo "$ping" |sed -e 's,^@@[^@][^@]*@@\([^@][^@]*\)@@,\1,'`
-
- match="`cat $lddfile |grep \"${libname}\.\"`"
-
- if test x"$match" != x ; then
- theirlib="`echo $match |sed -e 's,.*=> \([^ ]*\).*$,\1,'`"
- theirdir="`dirname $theirlib`"
-
- if test x"$theirdir" != x"$libpfx" ; then
- problem="The binary $1 is linked against the wrong copy of $libname"
- rpmsolution="The package owning $libname is probably installed twice. Make sure that it's installed correctly."
- debsolution="The package owning $libname is probably installed twice. Make sure that it's installed correctly."
- srcsolution="The package owning $libname is probably installed twice. Make sure that it's installed correctly."
- comment="The version of $libname in $libpfx was expected"
- problem
- elif test x"$libname" = xlibbonobox ; then
- use_bonobox=yes
- elif test x"$libname" = xlibbonobo ; then
- use_bonobo=yes
- fi
- fi
- done
-
- rm -f $lddfile
- IFS="$IFSback"
-
- if test x"$need_bonobox" = xyes -a x"$use_bonobo" = xyes -a x"$use_bonobox" != xyes ; then
- problem="The binary $1 is linked against Bonobo but not Bonobo-X"
- rpmsolution="Get the newest possible version of $2, or install it from source if that fails"
- debsolution="Get the newest possible version of $2, or install it from source if that fails"
- srcsolution="Run './config.status --recheck' in $2's source directory and reinstall it"
- problem
- fi
-}
-
-check_no_gnorba() {
- #libs=$1
- #othername=$2
-
- ping=`echo $1 |grep 'gnorba'`
-
- if test x"$ping" != x ; then
- problem="$2 was built using Gnorba, not OAF"
- rpmsolution="This problem shouldn't happen with RPM installations. Verify your installation of Helix Gnome."
- debsolution="This problem shouldn't happen with DEB installations. Verify your installation of Helix Gnome."
- srcsolution="Update $2 and re-run 'configure' in its source directory with the flag '--enable-oaf=yes'."
- problem
- fi
-}
-
-add_lib_to_check() {
- #lib = $1
- #path = $2
-
- echo "@@${1}@@${2}@@" >>$libfile
-}
-
-########################################
-
-versionparse3() {
- #inst_version=$1
- #reqd_version=$2
- #package=$3
-
- inst_version=`versiongrab3 "$1"`
- inst_major=`echo $inst_version |sed -e 's,\([0-9][0-9]*\)\..*\..*,\1,'`
- inst_minor=`echo $inst_version |sed -e 's,.*\.\([0-9][0-9]*\)\..*,\1,'`
- inst_micro=`echo $inst_version |sed -e 's,.*\..*\.\([0-9][0-9]*\),\1,'`
-
- reqd_version=`versiongrab3 "$2"`
- reqd_major=`echo $reqd_version |sed -e 's,\([0-9][0-9]*\)\..*\..*,\1,'`
- reqd_minor=`echo $reqd_version |sed -e 's,.*\.\([0-9][0-9]*\)\..*,\1,'`
- reqd_micro=`echo $reqd_version |sed -e 's,.*\..*\.\([0-9][0-9]*\),\1,'`
-
- ok=yes
- if test $inst_major -lt $reqd_major ; then
- ok=no
- elif test $inst_major -gt $reqd_major ; then
- ok=yes
- elif test $inst_minor -lt $reqd_minor; then
- ok=no
- elif test $inst_minor -gt $reqd_minor; then
- ok=yes
- elif test $inst_micro -lt $reqd_micro; then
- ok=no
- fi
-
- if test x$ok = xno ; then
- problem="Package $3 is not new enough ($1 detected, $2 required)"
- rpmsolution="Obtain a newer version and install it"
- depsolution="Obtain a newer version and install it"
- srcsolution="Obtain a newer version and install it"
- comment="If you think you have a newer installation, make sure that the
-package is not installed twice."
- problem
- fi
-}
-
-versiongrab3() {
- echo $1 |sed -e 's,.*\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*,\1,'
-}
-
-check_module3() {
- #$1=gnome-libs name
- #$2=package
- #$3=version
- $GNOME_CONFIG --modversion $1 1>/dev/null 2>/dev/null </dev/null
- if test x$? != x0 ; then
- problem="Package $2 doesn't seem to be installed."
- rpmsolution="Get and install the packages '$2' and '$2-devel'"
- debsolution="Get and install the package $2 and its development libraries" #FIXME
- srcsolution="Download the source and install the package $2"
- comment="If you think the package is installed, check that its prefix is $gl_prefix --
-${1}Conf.sh should be installed into `$GNOME_CONFIG --libdir`"
- problem
- fi
-
- instversion=`$GNOME_CONFIG --modversion $1`
-
- #eew eew hacky
- # gnome-vfs used to be versioned gnome-vfs-0.1,
- # and gnome-vfs-0.2, but then they moved to three figs--
- # now it's gnome-vfs-0.2.0
-
- if test $2 = gnome-vfs ; then
- case "$instversion" in
- gnome-vfs-0.1)
- problem="Package gnome-vfs is not new enough (0.1 detected, $3 required)"
- rpmsolution="Obtain a newer version and install it"
- depsolution="Obtain a newer version and install it"
- srcsolution="Obtain a newer version and install it"
- comment="If you think you have a newer installation, make sure that the
-package is not installed twice."
- problem
- ;;
- gnome-vfs-0.2)
- instversion="gnome-vfs-0.2.0"
- ;;
- *)
- #nothing, version is ok
- ;;
- esac
- fi
-
- versionparse3 "$instversion" "$3" "$2"
-}
-
-########################################
-
-versionparse2() {
- #inst_version=$1
- #reqd_version=$2
- #package=$3
-
- inst_version=`versiongrab2 "$1"`
- inst_major=`echo $inst_version |sed -e 's,\([0-9][0-9]*\)\..*,\1,'`
- inst_minor=`echo $inst_version |sed -e 's,.*\.\([0-9][0-9]*\),\1,'`
-
- reqd_version=`versiongrab2 "$2"`
- reqd_major=`echo $reqd_version |sed -e 's,\([0-9][0-9]*\)\..*,\1,'`
- reqd_minor=`echo $reqd_version |sed -e 's,.*\.\([0-9][0-9]*\),\1,'`
-
- ok=yes
- if test $inst_major -lt $reqd_major ; then
- ok=no
- elif test $inst_major -gt $reqd_major ; then
- ok=yes
- elif test $inst_minor -lt $reqd_minor; then
- ok=no
- fi
-
- if test x$ok = xno ; then
- problem="Package $3 is not new enough ($1 detected, $2 required)"
- rpmsolution="Obtain a newer version and install it"
- depsolution="Obtain a newer version and install it"
- srcsolution="Obtain a newer version and install it"
- comment="If you think you have a newer installation, make sure that the
-package is not installed twice."
- problem
- fi
-}
-
-versiongrab2() {
- echo $1 |sed -e 's,.*\([0-9][0-9]*\.[0-9][0-9]*\).*,\1,'
-}
-
-check_module2() {
- #$1=gnome-libs name
- #$2=package
- #$3=version
- $GNOME_CONFIG --modversion $1 1>/dev/null 2>/dev/null </dev/null
- if test x$? != x0 ; then
- problem="Package $2 doesn't seem to be installed."
- rpmsolution="Get and install the packages '$2' and '$2-devel'"
- debsolution="Get and install the package $2 and its development libraries" #FIXME
- srcsolution="Download the source and install the package $2"
- comment="If you think the package is installed, check that its prefix is $gl_prefix --
-${1}Conf.sh should be installed into `$GNOME_CONFIG --libdir`"
- problem
- fi
-
- instversion=`$GNOME_CONFIG --modversion $1`
- versionparse2 "$instversion" "$3" "$2"
-}
-
-########################################
-
-#prep
-libfile=temp-$$-libs-verifier
-
-if test -d /var/lib/rpm ; then
- rpmsystem=yes
- RPM=${RPM_PROG-rpm}
-
- $RPM --version 1>/dev/null 2>/dev/null </dev/null
- if test x$? != x0 ; then
- problem="The rpm executable ($RPM) does not seem to work."
- rpmsolution="none, if rpm doesn't work."
- debsolution="not applicable."
- srcsolution="download and install rpm manually."
- comment="If rpm really won't work then there is something wrong with your system."
- problem
- fi
-else
- rpmsystem=no
-fi
-
-if test -d /var/lib/dpkg ; then
- debsystem=yes
- #FIXME: check if deb works
-else
- debsystem=no
-fi
-
-if test x"$GNOME_PATH" != x ; then
- PATH="$GNOME_PATH:$PATH"
-fi
-
-if test x"$LDD" = x ; then
- if ldd -r /lib/libc.so </dev/null 1>/dev/null 2>&1 ; then
- LDD="ldd -r"
- elif type ldd </dev/null 1>/dev/null 2>&1; then
- LDD="ldd"
- else
- problem="Cannot find ldd"
- rpmsolution="Make sure that glibc is correctly installed!?!?!?"
- debsolution="Make sure that glibc is correctly installed!?!?!?"
- srcsolution="See above"
- comment="If you think that you have ldd, export an environment
-vairable LDD that points to it."
- problem
- fi
-fi
-
-#gnome-libs
-check_config GNOME_CONFIG gnome-config gnome-libs
-
-gl_version=`$GNOME_CONFIG --version` # |sed -e 's,.*\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*,\1,'`
-gl_sysconf=`$GNOME_CONFIG --sysconfdir`
-gl_prefix=`$GNOME_CONFIG --prefix`
-gl_datadir=`$GNOME_CONFIG --datadir`
-gl_bindir=`$GNOME_CONFIG --bindir`
-
-versionparse3 "$gl_version" "1.0.59" "gnome-libs"
-add_lib_to_check libgnome `$GNOME_CONFIG --libdir`
-add_lib_to_check libgnomeui `$GNOME_CONFIG --libdir`
-
-#libunicode
-check_config UNICODE_CONFIG unicode-config libunicode
-check_prefix UNICODE_CONFIG libunicode
-versionparse2 "`$UNICODE_CONFIG --version`" "0.4" libunicode
-add_lib_to_check libunicode "`$UNICODE_CONFIG --prefix`/lib"
-
-#ORBit
-check_config ORBIT_CONFIG orbit-config ORBit
-check_prefix ORBIT_CONFIG ORBit
-add_lib_to_check libORBit "`$ORBIT_CONFIG --prefix`/lib"
-
-#oaf
-check_config OAF_CONFIG oaf-config oaf
-check_prefix OAF_CONFIG oaf
-versionparse3 "`$OAF_CONFIG --version`" "0.4.0" "oaf"
-add_lib_to_check liboaf "`$OAF_CONFIG --prefix`/lib"
-check_bin oafd
-
-OAF_CLIENT=${OAF_CLIENT-oaf-client}
-if type $OAF_CLIENT </dev/null >/dev/null 2>&1 ; then
- :
-else
- problem="oaf-client couldn't be found"
- rpmsolution="Install the 'oaf-devel' package"
- debsolution="Install the oaf development libraries"
- srcsolution="Make sure that oaf is installed correctly"
- comment="If you think you have oaf-client installed, try exporting an
-environment variable OAF_CLIENT pointing to it"
- problem
-fi
-
-oaf_prefix=`$OAF_CONFIG --prefix`
-check_oafinfo oafd oaf
-
-#gconf
-#check_config GCONF_CONFIG gconf-config GConf
-#check_prefix GCONF_CONFIG GConf
-#versionparse2 "`$GCONF_CONFIG --version`" "0.5" GConf
-#if type gconfd-1 </dev/null >/dev/null 2>/dev/null; then
-# check_oafinfo gconfd-1 GConf
-# check_bin gconfd-1
-#else
-# check_oafinfo gconfd GConf
-# check_bin gconfd
-#fi
-#check_no_gnorba "`$GCONF_CONFIG --libs`" GConf
-
-#gnome vfs
-check_module3 vfs gnome-vfs "0.2.0"
-check_no_gnorba "`$GNOME_CONFIG --libs vfs`" gnome-vfs
-add_lib_to_check libgnomevfs "`$GNOME_CONFIG --libdir vfs`"
-
-#gnome print
-check_module2 print gnome-print "0.20"
-check_no_gnorba "`$GNOME_CONFIG --libs print`" gnome-print
-add_lib_to_check libgnomeprint "`$GNOME_CONFIG --libdir print`"
-
-#bonobo
-check_module2 bonobo bonobo "0.15"
-check_prefix "GNOME_CONFIG bonobo" bonobo strict
-add_lib_to_check libbonobo "`$GNOME_CONFIG --libdir bonobo`"
-
-if gnome-config --modversion bonobox </dev/null 1>/dev/null 2>&1 ; then
- need_bonobox=yes
- check_module2 bonobox bonobo "0.16"
- check_prefix "GNOME_CONFIG bonobox" bonobo strict
- add_lib_to_check libbonobox "`$GNOME_CONFIG --libdir bonobox`"
-fi
-
-check_oafinfo audio-ulaw bonobo
-check_bin bonobo-audio-ulaw bonobo
-check_no_gnorba "`$GNOME_CONFIG --libs bonobo`" bonobo
-
-#gtkhtml
-check_module2 gtkhtml GtkHTML "0.5"
-add_lib_to_check libgtkhtml "`$GNOME_CONFIG --libdir html`"
-check_oafinfo html-editor-control GtkHTML
-check_bin html-editor-control GtkHTML
-check_no_gnorba "`$GNOME_CONFIG --libs gtkhtml`" GtkHTML
-
-#evolution
-
-if test x"$EVOLUTION_PREFIX" = x ; then
- IFSback="$IFS"
- IFS=":"
- passed=no
-
- for ping in $PATH ; do
- if test x"$ping" != x -a -x $ping/evolution ; then
- if test x"$passed" = xyes ; then
- problem="Evolution is installed in more than one prefix"
- rpmsolution="Make sure that you only have one copy of Evolution installed"
- debsolution="Make sure that you only have one copy of Evolution installed"
- srcsolution="Make sure that you only have one copy of Evolution installed"
- comment="Evolution was probably installed in two different prefixes,
-either from source twice or from source and from RPM/deb. Remove the older copy.
-(Note: \"make uninstall\" works on tarballs but may damage your gettext installation)"
- problem
- else
- passed=yes
- e_prefix=$ping
- fi
- fi
- done
-
- IFS="$IFSbak"
-
- if test x"$passed" != xyes ; then
- problem="Evolution does not appear to have been installed"
- rpmsolution="Make sure that Evolution was installed properly (rpm -V evolution)"
- debsolution="Make sure that Evolution was installed properly"
- srcsolution="Run 'make install' in the evolution source directory"
- comment="I couldn't find evolution in this path: $PATH"
- problem
- fi
-
- e_prefix="`echo $e_prefix |sed -e 's,\(.*\)/[^/][^/]*,\1,'`"
- echo "Guessed that evolution is installed in prefix $e_prefix"
-else
- e_prefix="$EVOLUTION_PREFIX"
-fi
-
-add_lib_to_check libcal-client "$e_prefix/lib"
-add_lib_to_check libcamel "$e_prefix/lib"
-add_lib_to_check libcamelvee "$e_prefix/lib/evolution/camel-providers/0.5"
-check_oafinfo addressbook evolution
-check_oafinfo calendar-control evolution
-check_oafinfo evolution-mail evolution
-check_oafinfo evolution-calendar evolution
-check_oafinfo evolution-addressbook-select-names evolution
-check_oafinfo wombat evolution
-check_bin evolution-mail evolution
-check_bin evolution-calendar evolution
-check_bin evolution-addressbook evolution
-check_bin wombat evolution
-check_bin evolution evolution
-
-#done
-rm -f $libfile
-echo "Your Gnome system appears to be properly set up. Enjoy Evolution!"
-exit 0