Remove UNICODE_CFLAGS (and some other stuff that's redundant with
authorDan Winship <danw@src.gnome.org>
Thu, 26 Apr 2001 18:21:32 +0000 (18:21 +0000)
committerDan Winship <danw@src.gnome.org>
Thu, 26 Apr 2001 18:21:32 +0000 (18:21 +0000)
* Makefile.am (INCLUDES): Remove UNICODE_CFLAGS (and some other
stuff that's redundant with EXTRA_GNOME_CFLAGS)
(libcamel_la_LIBADD): Replace UNICODE_LIBS with GAL_LIBS.

* camel-search-private.c:
* camel-pgp-context.c:
* camel-mime-utils.c: Use gunicode interfaces rather than
libunicode.

* camel-charset-map.c: Use gunicode rather than libunicode. (The
charmap-regen code still depends on libunicode though.)

* camel-mime-filter-charset.h:
* tests/message/test2.c (convert): Use iconv rather than
unicode_iconv.

* providers/smtp/Makefile.am (libcamelsmtp_la_LIBADD):
* providers/pop3/Makefile.am (libcamelpop3_la_LIBADD):
* providers/local/Makefile.am (libcamellocal_la_LIBADD): Remove
UNICODE_LIBS.

* camel.c (camel_init): Remove call to unicode_init.

* camel-mime-parser.c: Remove unused unicode.h include.

13 files changed:
camel/ChangeLog
camel/Makefile.am
camel/camel-charset-map.c
camel/camel-mime-filter-charset.h
camel/camel-mime-parser.c
camel/camel-mime-utils.c
camel/camel-pgp-context.c
camel/camel-search-private.c
camel/camel.c
camel/providers/local/Makefile.am
camel/providers/pop3/Makefile.am
camel/providers/smtp/Makefile.am
camel/tests/message/test2.c

index f949548..a65bb55 100644 (file)
@@ -1,5 +1,32 @@
 2001-04-26  Dan Winship  <danw@ximian.com>
 
+       * Makefile.am (INCLUDES): Remove UNICODE_CFLAGS (and some other
+       stuff that's redundant with EXTRA_GNOME_CFLAGS)
+       (libcamel_la_LIBADD): Replace UNICODE_LIBS with GAL_LIBS.
+
+       * camel-search-private.c: 
+       * camel-pgp-context.c: 
+       * camel-mime-utils.c: Use gunicode interfaces rather than
+       libunicode.
+
+       * camel-charset-map.c: Use gunicode rather than libunicode. (The
+       charmap-regen code still depends on libunicode though.)
+
+       * camel-mime-filter-charset.h: 
+       * tests/message/test2.c (convert): Use iconv rather than
+       unicode_iconv.
+
+       * providers/smtp/Makefile.am (libcamelsmtp_la_LIBADD): 
+       * providers/pop3/Makefile.am (libcamelpop3_la_LIBADD): 
+       * providers/local/Makefile.am (libcamellocal_la_LIBADD): Remove
+       UNICODE_LIBS.
+
+       * camel.c (camel_init): Remove call to unicode_init.
+
+       * camel-mime-parser.c: Remove unused unicode.h include.
+
+2001-04-26  Dan Winship  <danw@ximian.com>
+
        * camel-service.c (get_host): Use e_gethostbyname_r.
        (camel_service_gethost): Remove unused var.
 
index 9c44351..5c24cd0 100644 (file)
@@ -10,10 +10,7 @@ lib_LTLIBRARIES = libcamel.la
 INCLUDES = -I.. -I$(srcdir)/..                          \
        -I$(top_srcdir)/intl                     \
        -I$(top_srcdir)/e-util                   \
-       $(GNOME_INCLUDEDIR)                      \
-       $(GLIB_CFLAGS)                           \
        $(GNOME_XML_CFLAGS)                      \
-       $(UNICODE_CFLAGS)                        \
        $(EXTRA_GNOME_CFLAGS)                    \
        $(KRB4_CFLAGS)                           \
        $(NSPR_CFLAGS)                           \
@@ -173,7 +170,7 @@ libcamelinclude_HEADERS =                   \
 libcamel_la_LDFLAGS = -version-info 0:0:0 -rpath $(libdir)
 
 libcamel_la_LIBADD = $(top_builddir)/e-util/libeutil.la \
-       $(UNICODE_LIBS)                         \
+       $(GAL_LIBS)                             \
        $(KRB4_LDFLAGS)                         \
        $(NSPR_LDFLAGS)                         \
        $(NSS_LDFLAGS)
index dac774b..d7aa876 100644 (file)
@@ -201,7 +201,7 @@ void main(void)
 
 #include "camel-charset-map.h"
 #include "camel-charset-map-private.h"
-#include <unicode.h>
+#include <gal/unicode/gunicode.h>
 #include <locale.h>
 #include <string.h>
 #include <glib.h>
@@ -224,13 +224,14 @@ camel_charset_step(CamelCharset *c, const char *in, int len)
 
        /* check what charset a given string will fit in */
        while (inptr < inend) {
-               unicode_char_t c;
+               gunichar c;
                const char *newinptr;
-               newinptr = unicode_get_utf8(inptr, &c);
+               newinptr = g_utf8_next_char(inptr);
                if (newinptr == NULL) {
                        inptr++;
                        continue;
                }
+               c = g_utf8_get_char(inptr);
                inptr = newinptr;
                if (c<=0xffff) {
                        mask &= charset_mask(c);
index ba1586c..f9c78e8 100644 (file)
@@ -22,7 +22,7 @@
 #define _CAMEL_MIME_FILTER_CHARSET_H
 
 #include <camel/camel-mime-filter.h>
-#include <unicode.h>
+#include <iconv.h>
 
 #define CAMEL_MIME_FILTER_CHARSET(obj)         CAMEL_CHECK_CAST (obj, camel_mime_filter_charset_get_type (), CamelMimeFilterCharset)
 #define CAMEL_MIME_FILTER_CHARSET_CLASS(klass) CAMEL_CHECK_CLASS_CAST (klass, camel_mime_filter_charset_get_type (), CamelMimeFilterCharsetClass)
@@ -35,7 +35,7 @@ struct _CamelMimeFilterCharset {
 
        struct _CamelMimeFilterCharsetPrivate *priv;
 
-       unicode_iconv_t ic;
+       iconv_t ic;
        char *from;
        char *to;
 };
index d08beff..77c39dd 100644 (file)
@@ -35,8 +35,6 @@
 #include <stdio.h>
 #include <errno.h>
 
-#include <unicode.h>
-
 #include <regex.h>
 #include <ctype.h>
 
index 5103233..7e48668 100644 (file)
@@ -38,7 +38,6 @@
 #define MAXHOSTNAMELEN 1024
 #endif
 
-#include <unicode.h>
 #include <iconv.h>
 
 #include <time.h>
@@ -48,6 +47,7 @@
 #include <regex.h>
 
 #include <glib.h>
+#include <gal/unicode/gunicode.h>
 
 #include "camel-mime-utils.h"
 #include "camel-charset-map.h"
@@ -128,7 +128,7 @@ static unsigned char camel_mime_base64_rank[256] = {
   if any of these change, then the tables above should be regenerated
   by compiling this with -DBUILD_TABLE, and running.
 
-  gcc -DCLEAN_DATE -o buildtable -I.. `glib-config --cflags --libs` -lunicode -DBUILD_TABLE camel-mime-utils.c camel-charset-map.c
+  gcc -DCLEAN_DATE -o buildtable -I.. `gnome-config --cflags --libs gal` -DBUILD_TABLE camel-mime-utils.c camel-charset-map.c
   ./buildtable
 
 */
@@ -1277,18 +1277,19 @@ header_encode_string (const unsigned char *in)
        word = NULL;
        start = inptr;
        while (inptr && *inptr) {
-               unicode_char_t c;
+               gunichar c;
                const char *newinptr;
                
-               newinptr = unicode_get_utf8 (inptr, &c);
+               newinptr = g_utf8_next_char (inptr);
                if (newinptr == NULL) {
                        w(g_warning ("Invalid UTF-8 sequence encountered (pos %d, char '%c'): %s",
                                     (inptr-in), inptr[0], in));
                        inptr++;
                        continue;
                }
+               c = g_utf8_get_char (inptr);
                
-               if (unicode_isspace (c) && !last_was_space) {
+               if (g_unichar_isspace (c) && !last_was_space) {
                        /* we've reached the end of a 'word' */
                        if (word && !(last_was_encoded && encoding)) {
                                g_string_append_len (out, start, word - start);
@@ -1327,11 +1328,11 @@ header_encode_string (const unsigned char *in)
                } else if (c >= 256) {
                        encoding = MAX (encoding, 2);
                        last_was_space = FALSE;
-               } else if (!unicode_isspace (c)) {
+               } else if (!g_unichar_isspace (c)) {
                        last_was_space = FALSE;
                }
                
-               if (!unicode_isspace (c) && !word)
+               if (!g_unichar_isspace (c) && !word)
                        word = inptr;
                
                inptr = newinptr;
@@ -1422,19 +1423,20 @@ header_encode_phrase_get_words (const unsigned char *in)
        start = inptr;
        encoding = 0;
        while (inptr && *inptr) {
-               unicode_char_t c;
+               gunichar c;
                const char *newinptr;
                
-               newinptr = unicode_get_utf8 (inptr, &c);
+               newinptr = g_utf8_next_char (inptr);
                if (newinptr == NULL) {
                        w(g_warning ("Invalid UTF-8 sequence encountered (pos %d, char '%c'): %s",
                                     (inptr - in), inptr[0], in));
                        inptr++;
                        continue;
                }
+               c = g_utf8_get_char (inptr);
                
                inptr = newinptr;
-               if (unicode_isspace (c)) {
+               if (g_unichar_isspace (c)) {
                        if (count > 0) {
                                word = g_new0 (struct _phrase_word, 1);
                                word->start = start;
index f69efde..f34d5f8 100644 (file)
@@ -31,8 +31,6 @@
 
 #include "camel-charset-map.h"
 
-#include <gtk/gtk.h> /* for _() macro */
-
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -52,8 +50,8 @@
 #include <unistd.h>
 #include <signal.h>
 
-#include <unicode.h>
 #include <iconv.h>
+#include <gal/unicode/gunicode.h>
 
 #define d(x)
 
@@ -992,14 +990,13 @@ pgp_verify (CamelCipherContext *ctx, CamelStream *istream,
                        *outbuf = '\0';
                } else {
                        const char *inptr, *inend;
-                       unicode_char_t c;
                        
                        inptr = diagnostics;
                        inend = inptr + inlen;
                        
                        while (inptr && inptr < inend) {
-                               inptr = unicode_get_utf8 (inptr, &c);
-                               *outbuf++ = c & 0xff;
+                               *outbuf++ = g_utf8_get_char (inptr) & 0xff;
+                               inptr = g_utf8_next_char (inptr);
                        }
                        
                        *outbuf = '\0';
index de374c6..e46cc29 100644 (file)
 #include "camel-multipart.h"
 #include "camel-stream-mem.h"
 #include "e-util/e-sexp.h"
-#include <unicode.h>
 
 #include "camel-search-private.h"
 
+#include <gal/unicode/gunicode.h>
+
 #define d(x)
 
 /* builds the regex into pattern */
@@ -190,55 +191,16 @@ header_soundex(const char *header, const char *match)
        return truth;
 }
 
-#if 0
-/* Why do it this way when the unicode lib already has a function to do this? */
-static unicode_char_t
-utf8_get (const char **inp)
-{
-       guint32 c, v = 0, s, shift;
-       const unsigned char *p = *inp;
-
-       if (p == NULL)
-               return 0;
-
-       s = *p++;
-       if ((s & 0x80) == 0) {  /* 7 bit char */
-               v = s;
-       } else if (s>0xf7) {    /* invalid char, we can only have upto 4 bits encoded */
-               p = NULL;
-       } else if (s>=0xc0) {   /* valid start char */
-               shift = 0;
-               do {
-                       c = *p++;
-                       if ((c & 0xc0) == 0x80) {
-                               v = (v<<6) | (c&0x3f);
-                               shift += 5;
-                       } else {
-                               *inp = NULL;
-                               return 0;
-                       }
-                       s <<= 1;
-               } while ((s & 0x80) != 0);
-               v |= s << shift;
-       } else {                /* invalid start char, internal char */
-               p = NULL;
-       }
-
-       *inp = p;
-       return v;
-}
-#endif
-
-static unicode_char_t
+static gunichar
 utf8_get (const char **inp)
 {
        const unsigned char *p = *inp;
-       unicode_char_t c;
+       gunichar c;
        
        g_return_val_if_fail (p != NULL, 0);
        
-       p = unicode_get_utf8 (p, &c);
-       *inp = p;
+       c = g_utf8_get_char (p);
+       *inp = g_utf8_next_char (p);
        
        return c;
 }
@@ -246,8 +208,8 @@ utf8_get (const char **inp)
 static const char *
 camel_ustrstrcase (const char *haystack, const char *needle)
 {
-       unicode_char_t *nuni, *puni;
-       unicode_char_t u;
+       gunichar *nuni, *puni;
+       gunichar u;
        const char *p;
        
        g_return_val_if_fail (haystack != NULL, NULL);
@@ -258,11 +220,11 @@ camel_ustrstrcase (const char *haystack, const char *needle)
        if (strlen(haystack) == 0)
                return NULL;
        
-       puni = nuni = alloca (sizeof (unicode_char_t) * strlen (needle));
+       puni = nuni = alloca (sizeof (gunichar) * strlen (needle));
        
        p = needle;
        while ((u = utf8_get (&p)))
-               *puni++ = unicode_tolower (u);
+               *puni++ = g_unichar_tolower (u);
        
        /* NULL means there was illegal utf-8 sequence */
        if (!p)
@@ -270,9 +232,9 @@ camel_ustrstrcase (const char *haystack, const char *needle)
        
        p = haystack;
        while ((u = utf8_get (&p))) {
-               unicode_char_t c;
+               gunichar c;
                
-               c = unicode_tolower (u);
+               c = g_unichar_tolower (u);
                /* We have valid stripped char */
                if (c == nuni[0]) {
                        const gchar *q = p;
@@ -283,7 +245,7 @@ camel_ustrstrcase (const char *haystack, const char *needle)
                                if (!q || !u)
                                        return NULL;
                                
-                               c = unicode_tolower (u);                                
+                               c = g_unichar_tolower (u);                              
                                if (c != nuni[npos])
                                        break;
                                
@@ -311,15 +273,15 @@ camel_ustrstrcase (const char *haystack, const char *needle)
 static int
 camel_ustrcasecmp (const char *s1, const char *s2)
 {
-       unicode_char_t u1, u2 = 0;
+       gunichar u1, u2 = 0;
        
        CAMEL_SEARCH_COMPARE (s1, s2, NULL);
        
        u1 = utf8_get (&s1);
        u2 = utf8_get (&s2);
        while (u1 && u2) {
-               u1 = unicode_tolower (u1);
-               u2 = unicode_tolower (u2);
+               u1 = g_unichar_tolower (u1);
+               u2 = g_unichar_tolower (u2);
                if (u1 < u2)
                        return -1;
                else if (u1 > u2)
@@ -341,15 +303,15 @@ camel_ustrcasecmp (const char *s1, const char *s2)
 static int
 camel_ustrncasecmp (const char *s1, const char *s2, size_t len)
 {
-       unicode_char_t u1, u2 = 0;
+       gunichar u1, u2 = 0;
        
        CAMEL_SEARCH_COMPARE (s1, s2, NULL);
        
        u1 = utf8_get (&s1);
        u2 = utf8_get (&s2);
        while (len > 0 && u1 && u2) {
-               u1 = unicode_tolower (u1);
-               u2 = unicode_tolower (u2);
+               u1 = g_unichar_tolower (u1);
+               u2 = g_unichar_tolower (u2);
                if (u1 < u2)
                        return -1;
                else if (u1 > u2)
index 6228c72..f2d8b8d 100644 (file)
@@ -27,7 +27,6 @@
 #include <config.h>
 #endif
 
-#include <unicode.h>
 #ifdef HAVE_NSS
 #include <nspr.h>
 #include <prthread.h>
@@ -53,8 +52,6 @@ camel_init (const char *certdb_dir, gboolean nss_init)
        if (getenv ("CAMEL_VERBOSE_DEBUG"))
                camel_verbose_debug = TRUE;
        
-       unicode_init ();
-       
 #ifdef HAVE_NSS
        if (nss_init) {
                PR_Init (PR_SYSTEM_THREAD, PR_PRIORITY_NORMAL, 10);
index 9130f62..9c6b353 100644 (file)
@@ -53,6 +53,6 @@ noinst_HEADERS =                              \
 
 libcamellocal_la_LDFLAGS = -version-info 0:0:0
 
-libcamellocal_la_LIBADD = $(top_builddir)/e-util/libeutil.la $(top_builddir)/libibex/libibex.la $(UNICODE_LIBS)
+libcamellocal_la_LIBADD = $(top_builddir)/e-util/libeutil.la $(top_builddir)/libibex/libibex.la
 
 EXTRA_DIST = libcamellocal.urls
index 57fb938..476e3d3 100644 (file)
@@ -32,6 +32,6 @@ libcamelpop3include_HEADERS =                 \
 
 libcamelpop3_la_LDFLAGS = $(KRB4_LDFLAGS) -version-info 0:0:0
 
-libcamelpop3_la_LIBADD = $(top_builddir)/e-util/libeutil.la $(UNICODE_LIBS)
+libcamelpop3_la_LIBADD = $(top_builddir)/e-util/libeutil.la
 
 EXTRA_DIST = libcamelpop3.urls
index 45e1d77..74597f5 100644 (file)
@@ -31,6 +31,6 @@ libcamelsmtpinclude_HEADERS =                 \
 
 libcamelsmtp_la_LDFLAGS = -version-info 0:0:0
 
-libcamelsmtp_la_LIBADD = $(top_builddir)/e-util/libeutil.la $(UNICODE_LIBS)
+libcamelsmtp_la_LIBADD = $(top_builddir)/e-util/libeutil.la
 
 EXTRA_DIST = libcamelsmtp.urls
index abeafa9..95b0e32 100644 (file)
@@ -7,8 +7,7 @@
 #include <unistd.h>
 #include <string.h>
 #include <stdio.h>
-
-#include <unicode.h>
+#include <iconv.h>
 
 #include <camel/camel-internet-address.h>
 #include <camel/camel-address.h>
 
 static char *convert(const char *in, const char *from, const char *to)
 {
-       unicode_iconv_t ic = unicode_iconv_open(to, from);
+       iconv_t ic = iconv_open(to, from);
        char *out, *outp;
        const char *inp;
        int inlen, outlen;
 
-       if (ic == (unicode_iconv_t)-1)
+       if (ic == (iconv_t)-1)
                return g_strdup(in);
 
        inlen = strlen(in);
@@ -31,19 +30,19 @@ static char *convert(const char *in, const char *from, const char *to)
        outp = out = g_malloc(outlen);
        inp = in;
 
-       if (unicode_iconv(ic, &inp, &inlen, &outp, &outlen) == -1) {
+       if (iconv(ic, &inp, &inlen, &outp, &outlen) == -1) {
                test_free(out);
-               unicode_iconv_close(ic);
+               iconv_close(ic);
                return g_strdup(in);
        }
 
-       if (unicode_iconv(ic, NULL, 0, &outp, &outlen) == -1) {
+       if (iconv(ic, NULL, 0, &outp, &outlen) == -1) {
                test_free(out);
-               unicode_iconv_close(ic);
+               iconv_close(ic);
                return g_strdup(in);
        }
 
-       unicode_iconv_close(ic);
+       iconv_close(ic);
 
        *outp = 0;
 
@@ -51,17 +50,17 @@ static char *convert(const char *in, const char *from, const char *to)
        /* lets see if we can convert back again? */
        {
                char *nout, *noutp;
-               unicode_iconv_t ic = unicode_iconv_open(from, to);
+               iconv_t ic = iconv_open(from, to);
 
                inp = out;
                inlen = strlen(out);
                outlen = inlen*5 + 16;
                noutp = nout = g_malloc(outlen);
-               if (unicode_iconv(ic, &inp, &inlen, &noutp, &outlen) == -1
-                   || unicode_iconv(ic, NULL, 0, &noutp, &outlen) == -1) {
+               if (iconv(ic, &inp, &inlen, &noutp, &outlen) == -1
+                   || iconv(ic, NULL, 0, &noutp, &outlen) == -1) {
                        g_warning("Cannot convert '%s' \n from %s to %s: %s\n", in, to, from, strerror(errno));
                }
-               unicode_iconv_close(ic);
+               iconv_close(ic);
        }
 
        /* and lets see what camel thinks out optimal charset is */