From 6df1ab160842d01e3841eb7a12e2fcfecbbda1db Mon Sep 17 00:00:00 2001 From: Don Allingham Date: Sat, 27 Jul 2002 13:54:56 +0000 Subject: [PATCH] Updated GRAMPS shell script to build LD_PRELOAD variable correctly svn: r1100 --- gramps.sh.in | 38 ++++++++++++++++++++++++++++++++++++-- src/Makefile.in | 2 +- src/latin_utf8.py | 4 ++-- 3 files changed, 39 insertions(+), 5 deletions(-) diff --git a/gramps.sh.in b/gramps.sh.in index 90ae53cd8..c8a55b536 100644 --- a/gramps.sh.in +++ b/gramps.sh.in @@ -1,5 +1,24 @@ #! /bin/sh # @configure_input@ +# +# Gramps - a GTK+/GNOME based genealogy program +# +# Copyright (C) 2000 Donald N. Allingham +# +# 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 +# prefix=@prefix@ @@ -7,8 +26,23 @@ export GRAMPSDIR=@datadir@/@PACKAGE@ export PYTHONPATH=$GRAMPSDIR export GRAMPSI18N=@prefix@/share/locale -if [ -f /usr/X11R6/lib/libX11.so ] ; then - export LD_PRELOAD=/usr/X11R6/lib/libX11.so +preload="" + +# +# Mandrake has a tendency to build dynamic libraries without the proper +# dependencies in them. This causes havoc with the python gtk libraries. +# Preload the know problem libraries so that gramps does not fail under +# Mandrake +# +for l in /usr/X11R6/lib/libX11.so /usr/lib/libgdk-1.2.so.0 /usr/lib/libgdk_imlib.so.1 +do + if [ -f $l ]; then + preload="$preload $l" + fi +done + +if [ "$preload" != "" ]; then + export LD_PRELOAD="$preload" fi @PYTHON@ $GRAMPSDIR/gramps.py $* diff --git a/src/Makefile.in b/src/Makefile.in index ea6d8568b..9dc5562f7 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -114,7 +114,7 @@ SUBDIRS = docgen filters plugins data po # For intl. support, how do we compile? CFLAGS = -fPIC -shared -O @CFLAGS@ @CPPFLAGS@ -I@includedir@ -LDFLAGS = @LDFLAGS@ -L@libdir@ @LIBS@ +LDFLAGS = @LDFLAGS@ -L@libdir@ @LIBS@ CLEANFILES = ${INTLLIBS} MOSTLYCLEANFILES = diff --git a/src/latin_utf8.py b/src/latin_utf8.py index a02715439..6791634b6 100644 --- a/src/latin_utf8.py +++ b/src/latin_utf8.py @@ -22,7 +22,7 @@ import sys if sys.version[0] != '1': def utf8_to_latin(s): - return s.encode('latin-1') + return s.encode('latin-1','replace') def latin_to_utf8(s): return s @@ -37,7 +37,7 @@ else: def utf8_to_latin(s): y = UTF8String(s) try: - return y.encode("iso-8859-1") + return y.encode("iso-8859-1",'replace') except: return s