Skip Menu |

This queue is for tickets about the MIME-Fast CPAN distribution.

Report information
The Basics
Id: 17654
Status: open
Priority: 0/
Queue: MIME-Fast

People
Owner: Nobody in particular
Requestors: domm [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: 1.6
Fixed in: (no value)



Subject: Cannot compile MIME::Fast
I cannot compile MIME::Fast. I've attached the output of perl Makefile.PL and make. I've tried gmime 2.1.19, 2.1.10 and 2.1.9, but none worked
Subject: output_perl_makefile_pl
Download output_perl_makefile_pl
application/octet-stream 168b

Message body not shown because it is not plain text.

Subject: output_make
Download output_make
application/octet-stream 3.8k

Message body not shown because it is not plain text.

From: deez [...] gmx.net
On Wed Feb 15 05:49:26 2006, guest wrote: Show quoted text
> I cannot compile MIME::Fast. I've attached the output of perl > Makefile.PL and make. > > I've tried gmime 2.1.19, 2.1.10 and 2.1.9, but none worked
Your version did compile, with warnings though (the module will still work). From 2.1.10 on some header definitions changed in gmime, which causes compile errors for MIME::Fast. The attached patch fixes it, and works at least up to gmime 2.2.9. To patch run "patch < mime-fast-1.6.1.patch" inside the MIME::Fast directory.
--- MIME-Fast-1.6/gmime-stream-perlio.h 2004-12-16 21:28:51.000000000 +0100 +++ MIME-Fast-1.6.1/gmime-stream-perlio.h 2007-07-02 10:57:28.000000000 +0200 @@ -36,11 +36,11 @@ #include <gmime/gmime-stream.h> #define GMIME_TYPE_STREAM_PERLIO (g_mime_stream_perlio_get_type ()) -#define GMIME_STREAM_PERLIO(obj) (GMIME_CHECK_CAST ((obj), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIO)) -#define GMIME_STREAM_PERLIO_CLASS(klass) (GMIME_CHECK_CLASS_CAST ((klass), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIOClass)) -#define GMIME_IS_STREAM_PERLIO(obj) (GMIME_CHECK_TYPE ((obj), GMIME_TYPE_STREAM_PERLIO)) -#define GMIME_IS_STREAM_PERLIO_CLASS(klass) (GMIME_CHECK_CLASS_TYPE ((klass), GMIME_TYPE_STREAM_PERLIO)) -#define GMIME_STREAM_PERLIO_GET_CLASS(obj) (GMIME_CHECK_GET_CLASS ((obj), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIOClass)) +#define GMIME_STREAM_PERLIO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIO)) +#define GMIME_STREAM_PERLIO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIOClass)) +#define GMIME_IS_STREAM_PERLIO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GMIME_TYPE_STREAM_PERLIO)) +#define GMIME_IS_STREAM_PERLIO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GMIME_TYPE_STREAM_PERLIO)) +#define GMIME_STREAM_PERLIO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIOClass)) typedef struct _GMimeStreamPerlIO GMimeStreamPerlIO; typedef struct _GMimeStreamPerlIOClass GMimeStreamPerlIOClass;
Hi, the previous patch does not work with gmime-2.2.22. I've attached a pach that works with that version.
Subject: mime-fast-1.6-gmime-2.2.22.patch
diff -Nur MIME-Fast-1.6-orig/cinclude/gmime-newfunc.c MIME-Fast-1.6/cinclude/gmime-newfunc.c --- MIME-Fast-1.6-orig/cinclude/gmime-newfunc.c 2003-06-16 18:04:46.000000000 +0200 +++ MIME-Fast-1.6/cinclude/gmime-newfunc.c 2011-08-09 09:01:59.596859554 +0200 @@ -29,10 +29,10 @@ enc = g_mime_part_get_encoding(mime_part); switch (enc) { case GMIME_PART_ENCODING_BASE64: - lsize = BASE64_ENCODE_LEN(lsize); + lsize = GMIME_BASE64_ENCODE_LEN(lsize); break; case GMIME_PART_ENCODING_QUOTEDPRINTABLE: - lsize = QP_ENCODE_LEN(lsize); + lsize = GMIME_QP_ENCODE_LEN(lsize); break; } } diff -Nur MIME-Fast-1.6-orig/gmime-stream-perlio.h MIME-Fast-1.6/gmime-stream-perlio.h --- MIME-Fast-1.6-orig/gmime-stream-perlio.h 2004-12-16 21:28:51.000000000 +0100 +++ MIME-Fast-1.6/gmime-stream-perlio.h 2011-08-09 09:01:59.596859554 +0200 @@ -36,11 +36,11 @@ #include <gmime/gmime-stream.h> #define GMIME_TYPE_STREAM_PERLIO (g_mime_stream_perlio_get_type ()) -#define GMIME_STREAM_PERLIO(obj) (GMIME_CHECK_CAST ((obj), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIO)) -#define GMIME_STREAM_PERLIO_CLASS(klass) (GMIME_CHECK_CLASS_CAST ((klass), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIOClass)) -#define GMIME_IS_STREAM_PERLIO(obj) (GMIME_CHECK_TYPE ((obj), GMIME_TYPE_STREAM_PERLIO)) -#define GMIME_IS_STREAM_PERLIO_CLASS(klass) (GMIME_CHECK_CLASS_TYPE ((klass), GMIME_TYPE_STREAM_PERLIO)) -#define GMIME_STREAM_PERLIO_GET_CLASS(obj) (GMIME_CHECK_GET_CLASS ((obj), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIOClass)) +#define GMIME_STREAM_PERLIO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIO)) +#define GMIME_STREAM_PERLIO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIOClass)) +#define GMIME_IS_STREAM_PERLIO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GMIME_TYPE_STREAM_PERLIO)) +#define GMIME_IS_STREAM_PERLIO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GMIME_TYPE_STREAM_PERLIO)) +#define GMIME_STREAM_PERLIO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GMIME_TYPE_STREAM_PERLIO, GMimeStreamPerlIOClass)) typedef struct _GMimeStreamPerlIO GMimeStreamPerlIO; typedef struct _GMimeStreamPerlIOClass GMimeStreamPerlIOClass; diff -Nur MIME-Fast-1.6-orig/t/parser.t MIME-Fast-1.6/t/parser.t --- MIME-Fast-1.6-orig/t/parser.t 2004-12-17 12:57:59.000000000 +0100 +++ MIME-Fast-1.6/t/parser.t 2011-08-09 09:02:28.616890870 +0200 @@ -140,6 +140,7 @@ my $content = "Content-Type: text/html"; $param->write_to_string(1, $content); +$content =~ s/[\n]*$//s; is($content,'Content-Type: text/html; charset=iso8859-2', 'Param::write_to_string works');