Package: im-sdk
Version: 11.4.1870-7
Severity: serious
Tags: patch
When building 'im-sdk' on amd64/unstable,
I get the following error:
LE.cpp: In member function 'void LEContext::bind_imlexec(IMLExec*)':
LE.cpp:316: error: cast from 'iml_session_t*' to 'int' loses precision
LE.cpp:316: error: cast from 'IMLExec*' to 'int' loses precision
LE.cpp: In member function 'bool LEContext::initialize()':
LE.cpp:450: error: cast from 'iml_session_t*' to 'int' loses precision
LE.cpp: In destructor 'LEContext::~LEContext()':
LE.cpp:491: error: cast from 'iml_session_t*' to 'int' loses precision
make[3]: *** [LE.o] Error 1
make[3]: Leaving directory
`/im-sdk-11.4.1870/build-tree/im-sdk-r11_4-1870/iiimsf/src'
With the attached patch 'im-sdk' can be compiled on amd64 using gcc-4.0.
The patch includes the patches from #320899.
Regards
Andreas Jochens
diff -urN ../tmp-orig/im-sdk-11.4.1870/debian/patches/005_gcc4_fix.patch
./debian/patches/005_gcc4_fix.patch
--- ../tmp-orig/im-sdk-11.4.1870/debian/patches/005_gcc4_fix.patch
1970-01-01 00:00:00.000000000 +0000
+++ ./debian/patches/005_gcc4_fix.patch 2005-09-07 12:35:12.000000000 +0000
@@ -0,0 +1,168 @@
+diff -Nru3 ./im-sdk-r11_4-1870/leif/unit/phonetic_im/mapfile/Makefile.am
im-sdk-r11_4-1870/leif/unit/phonetic_im/mapfile/Makefile.am
+--- ./im-sdk-r11_4-1870/leif/unit/phonetic_im/mapfile/Makefile.am
2004-08-16 05:40:06.000000000 -0700
++++ im-sdk-r11_4-1870/leif/unit/phonetic_im/mapfile/Makefile.am
2005-09-01 02:31:25.496312826 -0700
+@@ -34,6 +34,9 @@
+ -e "s/parse_small_token/parse_$*/g" \
+ -e "s/^void yyunput/static void yyunput/g" \
+ -e "s/^int yylen/static int yylen/g" \
++ -e "/^extern int yylen/d" \
++ -e "/^#undef YY_INPUT/i \
++ static int loc_input (char *buf, int ms);" \
+ -e "s/^YY_BUFFER_STATE yy_create_buffer/static YY_BUFFER_STATE
yy_create_buffer/g" \
+ -e "s/^void yy_load_buffer_state/static void yy_load_buffer_state/g" \
+ -e "s/^void yyrestart/static void yyrestart/g" \
+@@ -57,23 +60,25 @@
+ -e "s/^int yyprevious/static int yyprevious/g" \
+ -e "s/^char \*yysptr/static char \*yysptr/g" \
+ -e "s/^int yylineno/static int yylineno/g" \
++ -e "/^extern int yylineno/d" \
+ -e "s/^char yyextra/static char yyextra/g" \
+ -e "s/^char yymatch/static char yymatch/g" \
+ -e "s/^struct yywork \*yytop/static struct yywork \*yytop/g" \
+ -e "s/^struct yywork { YYTYPE verify, advance; } yycrank/static struct
yywork { YYTYPE verify, advance; } yycrank/g" \
+ -e "s/^FILE \*yyin/static FILE \*yyin/g" \
++ -e "/^extern FILE \*yyin/d" \
+ -e "s/^struct yysvf \*yybgin/static struct yysvf \*yybgin/g" \
+ -e "s/^int yyvstop/static int yyvstop/g" \
+ -e "s/^int yylook/static int yylook/g" \
+ -e "s/^struct yysvf yysvec/static struct yysvf yysvec/g" \
+ -e "s/^int yylex/static int yylex/g" \
+- -e "s/^yylex/static int yylex/g" \
++ -e "s/^extern int yywrap/static int yywrap/g" \
++ -e "/^extern int yylex/d" \
+ -e "s/^#define YY_DECL int yylex/#define YY_DECL static int yylex/g" \
+ -e "s/^# define input().*/# define input() (\*global_ptr++)/g" \
+ -e "s/^static int input().*/static int redef_input()/g" \
+ -e "s/^# define unput(c).*/# define unput(c) (\*--global_ptr=c)/g" \
+ -e "s/^#define unput(c).*/#define unput(c) (\*--global_ptr=c)/g" \
+- -e "/^#line/d" \
+ -e "/^static char \*global_ptr\;/i\
+ #define YY_NO_INPUT" -e "/^static char \*global_ptr\;/i\
+ #define YY_NO_UNPUT" -e "/^static char \*global_ptr\;/i\
+diff -Nru3 ./im-sdk-r11_4-1870/leif/unit/phonetic_im/mapfile/Makefile.in
../build-tree.new/im-sdk-r11_4-1870/leif/unit/phonetic_im/mapfile/Makefile.in
+--- im-sdk-r11_4-1870/leif/unit/phonetic_im/mapfile/Makefile.in
2004-08-16 06:28:05.000000000 -0700
++++ im-sdk-r11_4-1870/leif/unit/phonetic_im/mapfile/Makefile.in
2005-09-01 02:31:33.000000000 -0700
+@@ -593,6 +593,9 @@
+ -e "s/parse_small_token/parse_$*/g" \
+ -e "s/^void yyunput/static void yyunput/g" \
+ -e "s/^int yylen/static int yylen/g" \
++ -e "/^extern int yylen/d" \
++ -e "/^#undef YY_INPUT/i \
++ static int loc_input (char *buf, int ms);" \
+ -e "s/^YY_BUFFER_STATE yy_create_buffer/static YY_BUFFER_STATE
yy_create_buffer/g" \
+ -e "s/^void yy_load_buffer_state/static void yy_load_buffer_state/g" \
+ -e "s/^void yyrestart/static void yyrestart/g" \
+@@ -616,23 +619,25 @@
+ -e "s/^int yyprevious/static int yyprevious/g" \
+ -e "s/^char \*yysptr/static char \*yysptr/g" \
+ -e "s/^int yylineno/static int yylineno/g" \
++ -e "/^extern int yylineno/d" \
+ -e "s/^char yyextra/static char yyextra/g" \
+ -e "s/^char yymatch/static char yymatch/g" \
+ -e "s/^struct yywork \*yytop/static struct yywork \*yytop/g" \
+ -e "s/^struct yywork { YYTYPE verify, advance; } yycrank/static struct
yywork { YYTYPE verify, advance; } yycrank/g" \
+ -e "s/^FILE \*yyin/static FILE \*yyin/g" \
++ -e "/^extern FILE \*yyin/d" \
+ -e "s/^struct yysvf \*yybgin/static struct yysvf \*yybgin/g" \
+ -e "s/^int yyvstop/static int yyvstop/g" \
+ -e "s/^int yylook/static int yylook/g" \
+ -e "s/^struct yysvf yysvec/static struct yysvf yysvec/g" \
+ -e "s/^int yylex/static int yylex/g" \
+- -e "s/^yylex/static int yylex/g" \
++ -e "s/^extern int yywrap/static int yywrap/g" \
++ -e "/^extern int yylex/d" \
+ -e "s/^#define YY_DECL int yylex/#define YY_DECL static int yylex/g" \
+ -e "s/^# define input().*/# define input() (\*global_ptr++)/g" \
+ -e "s/^static int input().*/static int redef_input()/g" \
+ -e "s/^# define unput(c).*/# define unput(c) (\*--global_ptr=c)/g" \
+ -e "s/^#define unput(c).*/#define unput(c) (\*--global_ptr=c)/g" \
+- -e "/^#line/d" \
+ -e "/^static char \*global_ptr\;/i\
+ #define YY_NO_INPUT" -e "/^static char \*global_ptr\;/i\
+ #define YY_NO_UNPUT" -e "/^static char \*global_ptr\;/i\
+diff -Nru3 ./im-sdk-r11_4-1870/leif/canna/CannaLE.c
im-sdk-r11_4-1870/leif/canna/CannaLE.c
+--- ./im-sdk-r11_4-1870/leif/canna/CannaLE.c 2004-08-16 00:31:54.000000000
-0700
++++ im-sdk-r11_4-1870/leif/canna/CannaLE.c 2005-09-01 03:27:42.798116123
-0700
+@@ -118,6 +118,7 @@
+ void canna_status_draw_off(iml_session_t *s);
+ static void canna_change_mode(iml_session_t *s, int id);
+ static Bool canna_drop_privilege(const char *username);
++static int canna_get_current_mode(iml_session_t *s);
+
+ /* IF Method */
+ if_methods_t canna_methods = {
+--- ./im-sdk-r11_4-1870/leif/sampleja3/xaux_common/xaux_ext_common.h
2005-09-01 03:59:51.297887161 -0700
++++ im-sdk-r11_4-1870/leif/sampleja3/xaux_common/xaux_ext_common.h
2005-09-01 04:00:13.464928210 -0700
+@@ -80,10 +80,6 @@
+ extern Bool xaux_ext_Draw(xaux_class_t *, aux_ext_data_t *);
+ extern Bool xaux_ext_Done(xaux_class_t *, aux_ext_data_t *);
+
+-/* conversion utilities */
+-extern size_t utf16_mb(const char **, size_t *, char **, size_t *);
+-extern size_t mb_utf16(const char **, size_t *, char **, size_t *);
+-
+ #ifndef linux
+ #include <Xm/Xm.h>
+ #endif
+--- ./im-sdk-r11_4-1870/leif/sampleja3/xaux_common/xaux_ext_common.c
2004-08-16 00:31:54.000000000 -0700
++++ im-sdk-r11_4-1870/leif/sampleja3/xaux_common/xaux_ext_common.c
2005-09-01 04:01:15.176262833 -0700
+@@ -55,6 +55,16 @@
+ #include "xaux_common.h"
+ #include "xaux_ext_common.h"
+
++static Bool
++xaux_xs_send_message(
++ Display * display,
++ xaux_class_t * xc,
++ int im_id,
++ int ic_id,
++ aux_ext_data_type_t type,
++ Atom atom);
++
++
+ /* from iiimpAux.c */
+ static size_t
+ utf16_mb(
+
+diff -urN ../im-sdk-r11_4-1870/iiimsf/src/LE.cpp
im-sdk-r11_4-1870/iiimsf/src/LE.cpp
+--- ../im-sdk-r11_4-1870/iiimsf/src/LE.cpp 2004-08-16 07:41:39.000000000
+0000
++++ im-sdk-r11_4-1870/iiimsf/src/LE.cpp 2005-09-07 12:23:08.000000000
+0000
+@@ -313,7 +313,7 @@
+ {
+ // later, we should use TLS or something.
+ s->SessionContext = pimlex;
+- LOG_DEBUG("Bound imlexec:(%x -> %x)", (int) s, (int) pimlex);
++ LOG_DEBUG("Bound imlexec:(%lx -> %lx)", (long) s, (long) pimlex);
+ }
+
+ bool
+@@ -447,7 +447,7 @@
+ {
+ IMLock lock(get_leif_sync_object());
+ s = iml_construct_session(iml_desktop, &args[0], args.size());
+- LOG_DEBUG("Create session context(%x)", (int) s);
++ LOG_DEBUG("Create session context(%lx)", (long) s);
+ }
+ if (!s) return false;
+
+@@ -488,7 +488,7 @@
+ {
+ IMLock lock(get_leif_sync_object());
+ if (s) {
+- LOG_DEBUG("Destroy session context(%x)", (int) s);
++ LOG_DEBUG("Destroy session context(%lx)", (long) s);
+ if_DestroySC_WithoutDesktopDestruction(s);
+ }
+ }
+diff -urN ../im-sdk-r11_4-1870/iiimxcf/htt_xbe/lib/IMdkit/common/XIMPublic.cpp
im-sdk-r11_4-1870/iiimxcf/htt_xbe/lib/IMdkit/common/XIMPublic.cpp
+--- ../im-sdk-r11_4-1870/iiimxcf/htt_xbe/lib/IMdkit/common/XIMPublic.cpp
2004-08-16 07:42:18.000000000 +0000
++++ im-sdk-r11_4-1870/iiimxcf/htt_xbe/lib/IMdkit/common/XIMPublic.cpp
2005-09-07 12:34:06.000000000 +0000
+@@ -197,7 +197,7 @@
+ application_name = (char*)argp->value; // extension
+ break;
+ case DisableStatusArea:
+- disable_status_area = (Bool)argp->value; // extension
++ disable_status_area = (long)argp->value; // extension
+ break;
+ case DefaultFontName:
+ default_font_name = (char*)argp->value; // extension
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]