aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/.cvsignore7
-rw-r--r--tools/Makefile.am45
-rw-r--r--tools/evolution-addressbook-abuse.c139
-rw-r--r--tools/evolution-addressbook-clean.in24
-rw-r--r--tools/evolution-addressbook-export.c67
-rw-r--r--tools/evolution-addressbook-import.c93
-rwxr-xr-xtools/evolution-move-tasks135
-rwxr-xr-xtools/killev142
-rwxr-xr-xtools/verify-evolution-install.sh640
9 files changed, 0 insertions, 1292 deletions
diff --git a/tools/.cvsignore b/tools/.cvsignore
deleted file mode 100644
index 22a085436b..0000000000
--- a/tools/.cvsignore
+++ /dev/null
@@ -1,7 +0,0 @@
-Makefile
-Makefile.in
-evolution-addressbook-clean
-evolution-addressbook-import
-evolution-addressbook-export
-.deps
-.libs \ No newline at end of file
diff --git a/tools/Makefile.am b/tools/Makefile.am
deleted file mode 100644
index d4e442cb10..0000000000
--- a/tools/Makefile.am
+++ /dev/null
@@ -1,45 +0,0 @@
-bin_SCRIPTS = killev evolution-move-tasks evolution-addressbook-clean
-
-bin_PROGRAMS = evolution-addressbook-import evolution-addressbook-export
-noinst_PROGRAMS = evolution-addressbook-abuse
-
-INCLUDES = \
- -DG_LOG_DOMAIN=\"evolution-tools\" \
- $(EXTRA_GNOME_CFLAGS) \
- $(GNOME_INCLUDEDIR) \
- -I$(top_srcdir) \
- -I$(top_builddir) \
- $(BONOBO_HTML_GNOME_CFLAGS) \
- -DEVOLUTION_BINDIR=\""$(bindir)"\" \
- -DEVOLUTION_LOCALEDIR=\""$(localedir)"\" \
- -I$(top_srcdir)/addressbook
-
-EXTRA_DIST = $(bin_SCRIPTS) verify-evolution-install.sh \
- evolution-addressbook-clean.in
-
-evolution_addressbook_import_LDADD = \
- $(EXTRA_GNOME_LIBS) \
- $(BONOBO_HTML_GNOME_LIBS) \
- $(BONOBO_CONF_LIBS) \
- $(top_builddir)/addressbook/backend/ebook/libebook.la \
- $(top_builddir)/camel/libcamel.la \
- $(top_builddir)/libibex/libibex.la \
- $(top_builddir)/e-util/ename/libename.la \
- $(top_builddir)/libversit/libversit.la \
- $(top_builddir)/e-util/libeutil.la \
- $(top_builddir)/widgets/menus/libmenus.la
-
-evolution_addressbook_export_LDADD = \
- $(evolution_addressbook_import_LDADD)
-
-evolution_addressbook_abuse_LDADD = \
- $(evolution_addressbook_import_LDADD)
-
-CLEANFILES = evolution-addressbook-clean
-
-
-evolution-addressbook-clean: evolution-addressbook-clean.in Makefile
-## Use sed and then mv to avoid problems if the user interrupts.
- sed -e 's?\@EVOLUTION_BINDIR\@?$(bindir)?g' \
- < $(srcdir)/evolution-addressbook-clean.in > evolution-addressbook-clean.tmp \
- && mv evolution-addressbook-clean.tmp evolution-addressbook-clean
diff --git a/tools/evolution-addressbook-abuse.c b/tools/evolution-addressbook-abuse.c
deleted file mode 100644
index 44de75d780..0000000000
--- a/tools/evolution-addressbook-abuse.c
+++ /dev/null
@@ -1,139 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-
-#include <config.h>
-
-#include <liboaf/liboaf.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)
- gtk_exit (0);
- break;
- default:
- g_message ("something went wrong...");
- gtk_exit (status);
- 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);
- gtk_object_unref (GTK_OBJECT (card));
- }
-
- gtk_object_unref (GTK_OBJECT (book));
-}
-
-static gint
-abuse_timeout (gpointer foo)
-{
- EBook *book = e_book_new ();
- e_book_load_local_address_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 },
- { NULL, '\0', POPT_ARG_INCLUDE_TABLE, &oaf_popt_options, 0, NULL, 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 (PACKAGE, EVOLUTION_LOCALEDIR);
- textdomain (PACKAGE);
-
- gnome_init_with_popt_table ("evolution-addressbook-clean", "0.0",
- argc, argv, options, 0, NULL);
-
- oaf_init (argc, argv);
-
- if (bonobo_init (CORBA_OBJECT_NIL, CORBA_OBJECT_NIL, CORBA_OBJECT_NIL) == FALSE)
- g_error (_("Could not initialize Bonobo"));
-
- gtk_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 ec407296da..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_BINDIR@/evolution-addressbook-export`;
-if ($? != 0) {
- $! = $?;
- die $!;
-}
-
-$HOME = $ENV{"HOME"};
-
-system ("@EVOLUTION_BINDIR@/killev");
-do_system ("/bin/mv ${HOME}/evolution/local/Contacts/addressbook.db ${HOME}/evolution/local/Contacts/addressbook-backup.db");
-do_system ("@EVOLUTION_BINDIR@/evolution-addressbook-import --input-file $filename");
-do_system ("/bin/rm $filename");
-
diff --git a/tools/evolution-addressbook-export.c b/tools/evolution-addressbook-export.c
deleted file mode 100644
index cfc0237a02..0000000000
--- a/tools/evolution-addressbook-export.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-
-#include <config.h>
-
-#include <liboaf/liboaf.h>
-#include <bonobo/bonobo-main.h>
-#include <backend/ebook/e-book-util.h>
-#include <gnome.h>
-#include <fcntl.h>
-#include <gal/util/e-util.h>
-
-static void
-save_cards (EBook *book, EBookSimpleQueryStatus status, const GList *cards, gpointer closure)
-{
- char *filename = closure;
- char *vcard;
- int result;
- /* This has to be an array so that it's not const. */
- char tmpname[] = "/tmp/evo-addressbook-tmp.XXXXXX";
-
- vcard = e_card_list_get_vcard (cards);
-
- if (filename)
- result = e_write_file (filename, vcard, O_CREAT | O_EXCL);
- else
- result = e_write_file_mkstemp (tmpname, vcard);
- printf (tmpname);
- sync();
- gtk_exit (result);
-}
-
-static void
-use_addressbook (EBook *book, gpointer closure)
-{
- if (book == NULL)
- g_error (_("Error loading default addressbook."));
- e_book_simple_query (book, "(contains \"x-evolution-any-field\" \"\")", save_cards, closure);
-}
-
-int
-main (int argc, char *argv[])
-{
- char *filename = NULL;
-
- struct poptOption options[] = {
- { "output-file", '\0', POPT_ARG_STRING, &filename, 0, N_("Output File"), NULL },
- { NULL, '\0', POPT_ARG_INCLUDE_TABLE, &oaf_popt_options, 0, NULL, NULL },
- POPT_AUTOHELP
- { NULL, '\0', 0, NULL, 0, NULL, NULL }
- };
-
- bindtextdomain (PACKAGE, EVOLUTION_LOCALEDIR);
- textdomain (PACKAGE);
-
- gnome_init_with_popt_table ("evolution-addressbook-clean", "0.0",
- argc, argv, options, 0, NULL);
- oaf_init (argc, argv);
-
- if (bonobo_init (CORBA_OBJECT_NIL, CORBA_OBJECT_NIL, CORBA_OBJECT_NIL) == FALSE)
- g_error (_("Could not initialize Bonobo"));
-
- e_book_use_local_address_book (use_addressbook, filename);
-
- bonobo_main ();
-
- return 0;
-}
diff --git a/tools/evolution-addressbook-import.c b/tools/evolution-addressbook-import.c
deleted file mode 100644
index 9d79ccae0d..0000000000
--- a/tools/evolution-addressbook-import.c
+++ /dev/null
@@ -1,93 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-
-#include <config.h>
-
-#include <liboaf/liboaf.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)
- gtk_exit (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:
- gtk_exit (status);
- 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 },
- { NULL, '\0', POPT_ARG_INCLUDE_TABLE, &oaf_popt_options, 0, NULL, NULL },
- POPT_AUTOHELP
- { NULL, '\0', 0, NULL, 0, NULL, NULL }
- };
-
- bindtextdomain (PACKAGE, EVOLUTION_LOCALEDIR);
- textdomain (PACKAGE);
-
- gnome_init_with_popt_table ("evolution-addressbook-clean", "0.0",
- argc, argv, options, 0, NULL);
-
- if (filename == NULL) {
- g_error (_("No filename provided."));
- }
-
- oaf_init (argc, argv);
-
- if (bonobo_init (CORBA_OBJECT_NIL, CORBA_OBJECT_NIL, CORBA_OBJECT_NIL) == FALSE)
- g_error (_("Could not initialize Bonobo"));
-
- e_book_use_local_address_book (use_addressbook, filename);
-
- bonobo_main ();
-
- return 0;
-}
diff --git a/tools/evolution-move-tasks b/tools/evolution-move-tasks
deleted file mode 100755
index 05c27cbce2..0000000000
--- a/tools/evolution-move-tasks
+++ /dev/null
@@ -1,135 +0,0 @@
-#!/usr/bin/env perl
-# The above is a portable way to invoke Perl, according to the GNU Autotools
-# book. It is useful since we don't know where perl is installed.
-#
-# evolution-move-tasks: a Perl script to move tasks from the Calendar folder
-# to the new Tasks folder.
-#
-
-use diagnostics;
-
-# You may have to change this if your Evolution files are somewhere else.
-$EVOLUTION_DIR = "$ENV{'HOME'}/evolution";
-
-$CALENDAR_DIR = "$EVOLUTION_DIR/local/Calendar";
-$TASKS_DIR = "$EVOLUTION_DIR/local/Tasks";
-
-# Create the Tasks folder if needed.
-&EnsureTasksFolderExists ($TASKS_DIR);
-
-# Get any tasks from the calendar .ics file.
-$tasks = &LoadTasks ("$CALENDAR_DIR/calendar.ics");
-
-# Get any tasks already in the tasks .ics file.
-$tasks .= &LoadTasks ("$TASKS_DIR/tasks.ics");
-
-# Create a new Tasks .ics file containing all the tasks.
-&OutputTasks ("$TASKS_DIR/tasks.new", $tasks);
-
-# Move the existing tasks file to a backup.
-if (-e "$TASKS_DIR/tasks.ics") {
- rename "$TASKS_DIR/tasks.ics", "$TASKS_DIR/tasks.bak"
- || die "Can't rename $TASKS_DIR/tasks.ics to $TASKS_DIR/tasks.bak";
-}
-
-# Move the new file into position.
-rename "$TASKS_DIR/tasks.new", "$TASKS_DIR/tasks.ics"
- || die "Can't rename $TASKS_DIR/tasks.new to $TASKS_DIR/tasks.ics";
-
-# Move the new Calendar file (without the Tasks) into position.
-rename "$CALENDAR_DIR/calendar.ics.new", "$CALENDAR_DIR/calendar.ics"
- || die "Can't rename $TASKS_DIR/tasks.new to $TASKS_DIR/tasks.ics";
-
-0;
-
-
-# If the evolution/local/Tasks folder does not exist, this creates it and
-# creates the metadata XML file.
-sub EnsureTasksFolderExists {
- my ($tasks_dir) = @_;
-
- return if (-e $tasks_dir);
-
- print "Creating Tasks folder in: $tasks_dir\n";
-
- mkdir ($tasks_dir, 0777)
- || die "Can't create Tasks folder directory: $tasks_dir";
-
- $metadata = "$tasks_dir/folder-metadata.xml";
- open (METADATA, ">$metadata")
- || die "Can't create metadata file: $metadata";
-
- print METADATA <<EOF;
-<?xml version="1.0"?>
-<efolder>
- <type>tasks</type>
- <description>Tasks</description>
-</efolder>
-EOF
-
- close (METADATA);
-}
-
-
-sub LoadTasks {
- my ($icalendar_file) = @_;
-
- return "" if (! -e $icalendar_file);
-
- open (ICSFILE, $icalendar_file)
- || die "Can't open iCalendar file: $icalendar_file";
-
- open (NEWICSFILE, ">$icalendar_file.new")
- || die "Can't open iCalendar file: $icalendar_file.new";
-
- $tasks = "";
- $in_task = 0;
- while (<ICSFILE>) {
- if ($in_task) {
- $tasks .= $_;
-
- if (m/^END:VTODO/) {
- $in_task = 0;
- }
-
- } else {
- if (m/^BEGIN:VTODO/) {
- print "Found task\n";
-
- $tasks .= $_;
- $in_task = 1;
- } else {
- print NEWICSFILE $_;
- }
- }
- }
-
- close (NEWICSFILE);
- close (ICSFILE);
-
- return $tasks;
-}
-
-
-sub OutputTasks {
- my ($icalendar_file, $tasks) = @_;
-
- open (ICSFILE, ">$icalendar_file")
- || die "Can't create iCalendar file: $icalendar_file";
-
- print ICSFILE <<EOF;
-BEGIN:VCALENDAR
-CALSCALE
- :GREGORIAN
-PRODID
- :-//Helix Code//NONSGML Evolution Calendar//EN
-VERSION
- :2.0
-$tasks
-END:VCALENDAR
-EOF
-
- close (ICSFILE);
-}
-
-
diff --git a/tools/killev b/tools/killev
deleted file mode 100755
index 14b9f501cd..0000000000
--- a/tools/killev
+++ /dev/null
@@ -1,142 +0,0 @@
-#!/usr/bin/perl
-
-# set to 1 if you want some extra spew
-$debug=0;
-
-# Interfaces of CORBA servers that need to die.
-@idls = ("IDL:GNOME/Evolution/ShellComponent:1.0",
- "IDL:GNOME/Evolution/CalFactory:1.0",
- "IDL:GNOME/Evolution/BookFactory:1.0",
- "IDL:GNOME/Evolution/Importer:1.0",
- "IDL:GNOME/Evolution/IntelligentImporter:1.0",
- "IDL:GNOME/Evolution/Shell:1.0",
- "IDL:GNOME/Spell/Checker:0.1");
-
-
-# IIDs of specific CORBA servers that need to die that don't implement
-# useful interfaces (for querying, anyway)
-@iids = ("OAFIID:GNOME_Evolution_Calendar_AlarmNotify_Factory",
- "OAFIID:GNOME_GtkHTML_Editor_Factory",
- "OAFIID:Bonobo_Moniker_xmldb_Factory");
-
-##
-## You shouldn't have to change anything below this point
-##
-
-$sysname=`uname -s`;
-chop $sysname;
-
-if ($sysname eq "SunOS") {
- $killcmd="pkill";
-}
-else {
- $killcmd="killall";
-}
-
-sub kill_exe {
- my ($exe_name) = @_;
- my $lt_name = "lt-$exe_name";
- my $sub_exe_name = substr ($exe_name, 0, 16);
- my $sub_lt_name = substr ($lt_name, 0, 16);
-
- printf ("killing $exe_name\n");
-
- $redirect = "2> /dev/null";
-
- print "$killcmd -9 $exe_name\n" if ($debug);
- `$killcmd -9 $exe_name $redirect`;
-
- print "$killcmd -9 $lt_name\n" if ($debug);
- `$killcmd -9 $lt_name $redirect`;
-
- print "$killcmd -9 $sub_exe_name\n" if ($debug);
- `$killcmd -9 $sub_exe_name $redirect`;
-
- print "$killcmd -9 $sub_lt_name\n" if ($debug);
- `$killcmd -9 $sub_lt_name $redirect`;
-}
-
-sub kill_exes {
- while (($key, $value) = each %things_to_kill) {
- &kill_exe($key);
- }
-}
-
-sub add_exe {
- my ($exe_name) = @_;
- $things_to_kill{$exe_name} = $exe_name;
-}
-
-sub add_factory {
- my ($factory_iid) = @_;
-
- open (FACTORY_QUERY, "oaf-client -q -s \"iid == '$factory_iid'\"|");
- while (<FACTORY_QUERY>) {
- if (/type exe, location (.*)$/) {
- &add_exe ($1);
- }
- }
- close (FACTORY_QUERY);
-}
-
-# we need to do separate queries for iids because cvs OAF loses when
-# you do more than one 'iid ==' separated by OR's. It returns a list
-# of all CORBA servers. Cool, eh?
-
-sub run_iid_query {
- my $iid_query;
-
- for ($i = 0; $i < @iids; $i++) {
- $iid_query = "iid == '$iids[$i]'";
-
- #printf ("$iid_query\n");
-
- open (QUERY, "oaf-client -q -s \"$iid_query\"|");
- while (<QUERY>) {
- if (/type exe, location (.*)$/) {
- &add_exe ($1);
- }
- elsif (/type factory, location (.*)$/) {
- &add_factory ($1);
- }
- }
- close (QUERY);
- }
-}
-
-sub run_query {
- my ($idl_query, $iid_query, $oaf_query);
-
- $idl_query = "";
- for ($i = 0; $i < @idls; $i++) {
- $idl_query .= "repo_ids.has('$idls[$i]')";
- $idl_query .= " OR " if ($i < @idls - 1);
- }
-
- #$iid_query = "";
- #for ($i = 0; $i < @iids; $i++) {
- # $iid_query .= "iid == '$iids[$i]'";
- # $iid_query .= " OR " if ($i < @iids - 1);
- #}
-
- $oaf_query = $idl_query;
- #$oaf_query .= " OR $iid_query" if (@iids > 0);
-
- #printf ("$oaf_query\n");
-
- open (QUERY, "oaf-client -q -s \"$oaf_query\"|");
-
- while (<QUERY>) {
- if (/type exe, location (.*)$/) {
- &add_exe ($1);
- }
- elsif (/type factory, location (.*)$/) {
- &add_factory ($1);
- }
- }
- close (QUERY);
-}
-
-&run_query ();
-&run_iid_query ();
-&kill_exes();
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