From 8603d0d8a0bf5ab1205826845c0d4e31517709a27fb9e8835446aaff4f4ddf99 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Mon, 15 Jan 2007 23:13:17 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/fwnn?expand=0&rev=1 --- .gitattributes | 23 ++ FreeWnn-1.1.1-a017.dif | 547 ++++++++++++++++++++++++++ FreeWnn-1.1.1-a017.tar.bz2 | 3 + FreeWnn-fixes.patch | 480 +++++++++++++++++++++++ FreeWnn-fsstnd.patch | 56 +++ FreeWnn-include.patch | 35 ++ FreeWnn-ja.patch | 133 +++++++ FreeWnn-lib64.patch | 11 + FreeWnn-noroot.patch | 255 ++++++++++++ FreeWnn-returnvalue.diff | 11 + FreeWnn-s390x.patch | 217 +++++++++++ FreeWnn-sighandler.patch | 39 ++ FreeWnn-uum.patch | 54 +++ FreeWnn-warnings.patch | 31 ++ conflicting-prototypes.patch | 112 ++++++ fwnn.changes | 174 +++++++++ fwnn.spec | 733 +++++++++++++++++++++++++++++++++++ rcfcwnn | 90 +++++ rcfkwnn | 90 +++++ rcftwnn | 90 +++++ rcfwnn | 90 +++++ ready | 0 22 files changed, 3274 insertions(+) create mode 100644 .gitattributes create mode 100644 FreeWnn-1.1.1-a017.dif create mode 100644 FreeWnn-1.1.1-a017.tar.bz2 create mode 100644 FreeWnn-fixes.patch create mode 100644 FreeWnn-fsstnd.patch create mode 100644 FreeWnn-include.patch create mode 100644 FreeWnn-ja.patch create mode 100644 FreeWnn-lib64.patch create mode 100644 FreeWnn-noroot.patch create mode 100644 FreeWnn-returnvalue.diff create mode 100644 FreeWnn-s390x.patch create mode 100644 FreeWnn-sighandler.patch create mode 100644 FreeWnn-uum.patch create mode 100644 FreeWnn-warnings.patch create mode 100644 conflicting-prototypes.patch create mode 100644 fwnn.changes create mode 100644 fwnn.spec create mode 100644 rcfcwnn create mode 100644 rcfkwnn create mode 100644 rcftwnn create mode 100644 rcfwnn create mode 100644 ready diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/FreeWnn-1.1.1-a017.dif b/FreeWnn-1.1.1-a017.dif new file mode 100644 index 0000000..476736e --- /dev/null +++ b/FreeWnn-1.1.1-a017.dif @@ -0,0 +1,547 @@ +--- Xsi/PubdicPlus/pod.c ++++ Xsi/PubdicPlus/pod.c 2001/09/04 16:59:45 +@@ -26,13 +26,15 @@ + + #include + +-#define bzero(a, c) memset(a, 0, c) +- + #if __STDC__ + #include ++#include ++#include + #else + extern char *malloc (); + #endif ++ ++#define bzero(a, c) memset(a, 0, c) + + #define POD_WCHAR + +--- Xsi/Wnn/include/jllib.h ++++ Xsi/Wnn/include/jllib.h 2001/09/04 18:55:55 +@@ -248,58 +248,58 @@ + #define jl_set_lang(buf, lang) js_set_lang((buf)->env, lang) + + /* extern function defines */ +-extern struct wnn_buf *jl_open_lang (); +-extern struct wnn_env *jl_connect_lang (); +-extern struct wnn_env *jl_env_get (); +-extern struct wnn_jdata *jl_word_info_e (); +-extern w_char *jl_hinsi_name_e (); ++extern struct wnn_buf *jl_open_lang (const char *, const char *, const char *, const char *, int (*) (const char *), int (*) (const char *), int); ++extern struct wnn_env *jl_connect_lang (const char *, const char *, const char *, const char *, int (*) (const char *), int (*) (const char *), int); ++extern struct wnn_env *jl_env_get (struct wnn_buf *); ++extern struct wnn_jdata *jl_word_info_e (struct wnn_env *, int, int); ++extern w_char *jl_hinsi_name_e (struct wnn_env *, int); + +-extern void jl_close (); +-extern int jl_dic_add_e (); +-extern int jl_dic_comment_set_e (); +-extern int jl_dic_delete_e (); +-extern int jl_dic_list_e (); +-extern int jl_dic_save_all_e (); +-extern int jl_dic_save_e (); +-extern int jl_dic_use_e (); +-extern void jl_disconnect (); +-extern void jl_disconnect_if_server_dead (); +-extern void jl_env_set (); +-extern int jl_fuzokugo_get_e (); +-extern int jl_fuzokugo_set_e (); +-extern void jl_get_zenkouho_kanji (); +-extern int jl_hinsi_dicts_e (); +-extern int jl_hinsi_list_e (); +-extern int jl_hinsi_number_e (); +-extern int jl_isconnect_e (); +-extern int jl_kanji_len (); +-extern int jl_kill (); +-extern int jl_nobi_conv (); +-extern int jl_nobi_conv_e2 (); +-extern int jl_param_get_e (); +-extern int jl_param_set_e (); +-extern int jl_ren_conv (); +-extern int jl_set_env_wnnrc (); +-extern int jl_set_env_wnnrc1 (); +-extern int jl_set_jikouho (); +-extern int jl_set_jikouho_dai (); +-extern int jl_tan_conv (); +-extern int jl_update_hindo (); +-extern int jl_word_add_e (); +-extern int jl_word_comment_set_e (); +-extern int jl_word_delete_e (); +-extern int jl_word_search_by_env_e (); +-extern int jl_word_search_e (); +-extern int jl_word_use_e (); +-extern int jl_yomi_len (); +-extern int jl_zenkouho (); +-extern int jl_zenkouho_dai (); +-extern int wnn_get_area (); ++extern void jl_close (struct wnn_buf *); ++extern int jl_dic_add_e (struct wnn_env *, char *, char *, int, int, int, int, char *, char *, int (*) (const char *), int (*) (const char *)); ++extern int jl_dic_comment_set_e (struct wnn_env *, int, w_char *); ++extern int jl_dic_delete_e (struct wnn_env *, int); ++extern int jl_dic_list_e (struct wnn_env *, WNN_DIC_INFO **); ++extern int jl_dic_save_all_e (struct wnn_env *); ++extern int jl_dic_save_e (struct wnn_env *, int); ++extern int jl_dic_use_e (struct wnn_env *, int, int); ++extern void jl_disconnect (struct wnn_env *); ++extern void jl_disconnect_if_server_dead (struct wnn_env *); ++extern void jl_env_set (struct wnn_buf *, struct wnn_env *); ++extern int jl_fuzokugo_get_e (struct wnn_env *, char *); ++extern int jl_fuzokugo_set_e (struct wnn_env *, char *); ++extern void jl_get_zenkouho_kanji (struct wnn_buf *, int, w_char *); ++extern int jl_hinsi_dicts_e (struct wnn_env *, int, int **); ++extern int jl_hinsi_list_e (struct wnn_env *, int, w_char *, w_char ***); ++extern int jl_hinsi_number_e (struct wnn_env *, w_char *); ++extern int jl_isconnect_e (struct wnn_env *); ++extern int jl_kanji_len (struct wnn_buf *, int, int); ++extern int jl_kill (struct wnn_buf *, int, int); ++extern int jl_nobi_conv (struct wnn_buf *, int, int, int, int, int); ++extern int jl_nobi_conv_e2 (struct wnn_buf *, struct wnn_env *, int, int, int, int, int); ++extern int jl_param_get_e (struct wnn_env *, struct wnn_param *); ++extern int jl_param_set_e (struct wnn_env *, struct wnn_param *); ++extern int jl_ren_conv (struct wnn_buf *, w_char *, int, int, int); ++extern int jl_set_env_wnnrc (struct wnn_env *, const char *, int (*) (const char *), int (*) (const char *)); ++extern int jl_set_env_wnnrc1 (struct wnn_env *, const char *, int (*) (const char *), int (*) (const char *), int); ++extern int jl_set_jikouho (struct wnn_buf *, int); ++extern int jl_set_jikouho_dai (struct wnn_buf *, int); ++extern int jl_tan_conv (struct wnn_buf *, w_char *, int, int, int, int); ++extern int jl_update_hindo (struct wnn_buf *, int, int); ++extern int jl_word_add_e (struct wnn_env *, int, w_char *, w_char *, w_char *, int, int); ++extern int jl_word_comment_set_e (struct wnn_env *, int, int, w_char *); ++extern int jl_word_delete_e (struct wnn_env *, int, int); ++extern int jl_word_search_by_env_e (struct wnn_env *, w_char *, struct wnn_jdata **); ++extern int jl_word_search_e (struct wnn_env *, int, w_char *, struct wnn_jdata **); ++extern int jl_word_use_e (struct wnn_env *, int, int); ++extern int jl_yomi_len (struct wnn_buf *, int, int); ++extern int jl_zenkouho (struct wnn_buf *, int, int, int); ++extern int jl_zenkouho_dai (struct wnn_buf *, int, int, int, int); ++extern int wnn_get_area (struct wnn_buf *, int, int, w_char *, int); + +-extern char *wnn_perror (); +-extern char *wnn_perror_lang (); ++extern char *wnn_perror (void); ++extern char *wnn_perror_lang (char *); + + #ifdef CONVERT_by_STROKE +-extern void jl_get_zenkouho_yomi (); ++extern void jl_get_zenkouho_yomi (struct wnn_buf *, int, w_char *); + #endif + #endif /* JLLIB */ +--- Xsi/Wnn/jlib/jl.c ++++ Xsi/Wnn/jlib/jl.c 2001/09/04 19:06:21 +@@ -38,6 +38,8 @@ + #include "commonhd.h" + #include "wnn_config.h" + #include ++#include ++#include + #include + #ifdef SYSVR2 + # include +@@ -145,7 +147,7 @@ + static void make_space_for (); + static void make_space_for_bun (); + static void make_space_for_zenkouho (); +-static void message_out (); ++static void message_out (int (*) (const char *), const char *, ...); + static int ren_conv1 (); + static void set_dai (); + static void set_sho (); +@@ -261,7 +263,7 @@ + static struct wnn_env * + find_same_env (js, env_n, lang) + register WNN_JSERVER_ID *js; +- register char *env_n; ++ register const char *env_n; + char *lang; + { + register int k; +@@ -300,7 +302,7 @@ + add_new_env (js, env, env_n, server_n, lang) + register WNN_JSERVER_ID *js; + register struct wnn_env *env; +- char *env_n, *server_n, *lang; ++ const char *env_n, *server_n, *lang; + { + register int k; + +@@ -421,15 +423,16 @@ + + struct wnn_env * + jl_connect_lang (env_n, server_n, lang, wnnrc_n, error_handler, message_handler, timeout) +- register char *env_n, *server_n, *wnnrc_n, *lang; +- int (*error_handler) (), (*message_handler) (); ++ register const char *env_n, *server_n, *wnnrc_n, *lang; ++ int (*error_handler) (const char *), (*message_handler) (const char *); + int timeout; + { + register WNN_JSERVER_ID *js = NULL; + struct wnn_env *env; + int env_exist; + char p_lang[16]; +- register char *p, *l; ++ register char *p; ++ const char *l; + extern char *getenv (); + extern char *_wnn_get_machine_of_serv_defs (); + +@@ -562,8 +565,8 @@ + + struct wnn_buf * + jl_open_lang (env_n, server_n, lang, wnnrc_n, error_handler, message_handler, timeout) +- char *env_n, *server_n, *wnnrc_n, *lang; +- int (*error_handler) (), (*message_handler) (); ++ const char *env_n, *server_n, *wnnrc_n, *lang; ++ int (*error_handler) (const char *), (*message_handler) (const char *); + int timeout; + { + register int k, dmy; +@@ -1490,7 +1493,7 @@ + int prio; + int rw, hrw, rev; + char *pwd_dic, *pwd_hindo; +- int (*error_handler) (), (*message_handler) (); ++ int (*error_handler) (const char *), (*message_handler) (const char *); + { + char tmp[256]; + char pwd[WNN_PASSWD_LEN], hpwd[WNN_PASSWD_LEN]; +@@ -1505,7 +1508,7 @@ + jl_disconnect (env); + return (-1); + } +- if ((int) error_handler == WNN_NO_CREATE || (rw == WNN_DIC_RDONLY)) ++ if (error_handler == (int (*) (const char *)) WNN_NO_CREATE || (rw == WNN_DIC_RDONLY)) + { + sprintf (tmp, "%s \"%s\" %s", msg_get (wnn_msg_cat, 200, NULL, env->lang), dic_name, msg_get (wnn_msg_cat, 201, NULL, env->lang)); + /* +@@ -1519,7 +1522,7 @@ + /* + "辞書ファイル \"%s\" が無いよ。作る?(Y/N)", + */ +- if ((int) error_handler == WNN_CREATE || call_error_handler (error_handler, tmp)) ++ if (error_handler == (int (*) (const char *)) WNN_CREATE || call_error_handler (error_handler, tmp)) + { + if (create_file (env, dic_name, JISHO, -1, /* -1 is dummy */ + pwd_dic, (hindo_name && *hindo_name) ? "" : pwd_hindo, error_handler, message_handler) == -1) +@@ -1544,7 +1547,7 @@ + jl_disconnect (env); + return (-1); + } +- if ((int) error_handler == WNN_NO_CREATE || (hrw == WNN_DIC_RDONLY)) ++ if (error_handler == (int (*) (const char *)) WNN_NO_CREATE || (hrw == WNN_DIC_RDONLY)) + { + sprintf (tmp, "%s \"%s\" %s", msg_get (wnn_msg_cat, 203, NULL, env->lang), hindo_name, msg_get (wnn_msg_cat, 201, NULL, env->lang)); + /* +@@ -1558,7 +1561,7 @@ + /* + "頻度ファイル \"%s\" が無いよ。作る?(Y/N)", + */ +- if ((int) error_handler == WNN_CREATE || call_error_handler (error_handler, tmp)) ++ if (error_handler == (int (*) (const char *)) WNN_CREATE || call_error_handler (error_handler, tmp)) + { + if (create_file (env, hindo_name, HINDO, fid, "", pwd_hindo, error_handler, message_handler) == -1) + return (-1); +@@ -1587,7 +1590,7 @@ + } + else if (wnn_errorno == WNN_HINDO_NO_MATCH) + { +- if ((int) error_handler == WNN_NO_CREATE) ++ if (error_handler == (int (*) (const char *)) WNN_NO_CREATE) + { + return (-1); + } +@@ -1595,7 +1598,7 @@ + /* + "辞書と頻度 \"%s\" の整合性が無いよ。作り直す?(Y/N)", + */ +- if (!((int) error_handler == WNN_CREATE || call_error_handler (error_handler, tmp))) ++ if (!(error_handler == (int (*) (const char *)) WNN_CREATE || call_error_handler (error_handler, tmp))) + { + return (-1); + } +@@ -1671,7 +1674,7 @@ + create_pwd_file (env, pwd_file, error_handler, message_handler) + register struct wnn_env *env; + char *pwd_file; +- int (*error_handler) (), (*message_handler) (); ++ int (*error_handler) (const char *), (*message_handler) (const char *); + { + FILE *fp; + char gomi[256]; +@@ -2731,17 +2734,17 @@ + int + jl_set_env_wnnrc (env, wnnrc_n, error_handler, message_handler) + register struct wnn_env *env; +- char *wnnrc_n; +- int (*error_handler) (), (*message_handler) (); ++ const char *wnnrc_n; ++ int (*error_handler) (const char *), (*message_handler) (const char *); + { + int level = 0; + int x; + wnn_errorno = 0; +- if ((int) error_handler == WNN_CREATE) ++ if (error_handler == (int (*) (const char *)) WNN_CREATE) + { + confirm_state = CREATE_WITHOUT_CONFIRM; + } +- else if ((int) error_handler == WNN_NO_CREATE) ++ else if (error_handler == (int (*) (const char *)) WNN_NO_CREATE) + { + confirm_state = NO_CREATE; + } +@@ -2757,8 +2760,8 @@ + int + jl_set_env_wnnrc1 (env, wnnrc_n, error_handler, message_handler, level) + register struct wnn_env *env; +- char *wnnrc_n; +- int (*error_handler) (), (*message_handler) (); ++ const char *wnnrc_n; ++ int (*error_handler) (const char *), (*message_handler) (const char *); + int level; + { + register int num; +@@ -2811,7 +2814,7 @@ + { + /* dic_add */ + int prio, rdonly, hrdonly, rev; +- int (*error_handler1) () = (int (*)()) 0; ++ int (*error_handler1) (const char *) = (int (*) (const char *)) 0; + expand_expr_all (s[0], env); + if (num < 3 || !REAL_PARAM (s[1])) + { +@@ -2837,11 +2840,11 @@ + else if (confirm_state == CREATE_WITHOUT_CONFIRM) + { + +- error_handler1 = (int (*)()) WNN_CREATE; ++ error_handler1 = (int (*) (const char *)) WNN_CREATE; + } + else if (confirm_state == NO_CREATE) + { +- error_handler1 = (int (*)()) WNN_NO_CREATE; ++ error_handler1 = (int (*) (const char *)) WNN_NO_CREATE; + } + if (jl_dic_add_e (env, s[0], s[1], rev, prio, rdonly, hrdonly, s[5], s[6], error_handler1, message_handler) == -1 && wnn_errorno != 0) + { +@@ -2972,7 +2975,7 @@ + + if (*s != '~' && *s != '@') + return (0); +- if ((int) strlen (s) >= EXPAND_PATH_LENGTH) ++ if (strlen (s) >= EXPAND_PATH_LENGTH) + return (-1); + + s1 = s; +@@ -2995,12 +2998,12 @@ + { + if (*s1) + { +- noerr = expandsuc = (NULL != (u = getpwnam (s1)) && (int) strlen (p = u->pw_dir) + (int) strlen (tmp) < EXPAND_PATH_LENGTH); ++ noerr = expandsuc = (NULL != (u = getpwnam (s1)) && strlen (p = u->pw_dir) + strlen (tmp) < EXPAND_PATH_LENGTH); + + } + else + { +- noerr = expandsuc = (NULL != (p = getenv ("HOME")) && (int) strlen (p) + (int) strlen (tmp) < EXPAND_PATH_LENGTH); ++ noerr = expandsuc = (NULL != (p = getenv ("HOME")) && strlen (p) + strlen (tmp) < EXPAND_PATH_LENGTH); + } + + } +@@ -3008,13 +3011,13 @@ + { /* then, *s must be '@' */ + if (!strcmp (s1, "HOME")) + { +- noerr = expandsuc = (NULL != (p = getenv ("HOME")) && (int) strlen (p) + (int) strlen (tmp) < EXPAND_PATH_LENGTH); ++ noerr = expandsuc = (NULL != (p = getenv ("HOME")) && strlen (p) + strlen (tmp) < EXPAND_PATH_LENGTH); + } + else if (!strcmp (s1, "WNN_DIC_DIR")) + { + char buf[EXPAND_PATH_LENGTH]; + expandsuc = 1; +- noerr = (NULL != (p = getenv ("HOME")) && (int) strlen (p) + (int) strlen (tmp) < EXPAND_PATH_LENGTH); ++ noerr = (NULL != (p = getenv ("HOME")) && strlen (p) + strlen (tmp) < EXPAND_PATH_LENGTH); + strcpy (buf, p); + strcat (buf, "/"); + +@@ -3031,15 +3034,15 @@ + } + else if (!strcmp (s1, "LIBDIR")) + { +- noerr = expandsuc = ((int) strlen (p = LIBDIR) + (int) strlen (tmp) < EXPAND_PATH_LENGTH); ++ noerr = expandsuc = (strlen (p = LIBDIR) + strlen (tmp) < EXPAND_PATH_LENGTH); + } + else if (!strcmp (s1, "ENV")) + { /* Added */ +- noerr = expandsuc = (NULL != (p = env_name (env)) && (int) strlen (p) + (int) strlen (tmp) < EXPAND_PATH_LENGTH); ++ noerr = expandsuc = (NULL != (p = env_name (env)) && strlen (p) + strlen (tmp) < EXPAND_PATH_LENGTH); + } + else if (!strcmp (s1, "USR")) + { +- noerr = expandsuc = (NULL != (p = getlogname ()) && (int) strlen (p) + (int) strlen (tmp) < EXPAND_PATH_LENGTH); ++ noerr = expandsuc = (NULL != (p = getlogname ()) && strlen (p) + strlen (tmp) < EXPAND_PATH_LENGTH); + } + else + { /* @HOME, @LIBDIR @ENV igai ha kaenai */ +@@ -3063,7 +3066,7 @@ + + total = 0; + flag = 0; +- while (*st != NULL) ++ while (*st != 0) + { + if (isdigit (*st)) + { +@@ -3122,7 +3125,7 @@ + int d; + int fid; + char *pwd_dic, *pwd_hindo; +- int (*error_handler) (), (*message_handler) (); ++ int (*error_handler) (const char *), (*message_handler) (const char *); + { + char pwd[WNN_PASSWD_LEN], hpwd[WNN_PASSWD_LEN]; + int rev_dict_type; +@@ -3230,7 +3233,7 @@ + make_dir_rec1 (env, path, error_handler, message_handler) + struct wnn_env *env; + register char *path; +- int (*error_handler) (), (*message_handler) (); ++ int (*error_handler) (const char *), (*message_handler) (const char *); + { + char gomi[128]; + register char *c; +@@ -3253,7 +3256,7 @@ + make_dir1 (env, dirname, error_handler, message_handler) + register struct wnn_env *env; + register char *dirname; +- int (*error_handler) (), (*message_handler) (); ++ int (*error_handler) (const char *), (*message_handler) (const char *); + { + char gomi[128]; + if (dirname[0] == C_LOCAL) +@@ -3274,7 +3277,7 @@ + return (0); /* dir already exists */ + } + } +- if ((int) error_handler != WNN_CREATE) ++ if (error_handler != (int (*) (const char *)) WNN_CREATE) + { + sprintf (gomi, "%s \"%s\" %s%s", msg_get (wnn_msg_cat, 210, NULL, env->lang), dirname, msg_get (wnn_msg_cat, 201, NULL, env->lang), msg_get (wnn_msg_cat, 202, NULL, env->lang)); + /* +@@ -3311,8 +3314,8 @@ + + static int + call_error_handler (error_handler, c) +- int (*error_handler) (); +- char *c; ++ int (*error_handler) (const char *); ++ const char *c; + { + register int x; + x = error_handler (c); +@@ -3327,16 +3330,16 @@ + } + + static void +-message_out (message_handler, format, s1, s2, s3, s4, s5, s6, s7, s8) +- int (*message_handler) (); +- char *format; +- int s1, s2, s3, s4, s5, s6, s7, s8; ++message_out (int (*message_handler) (const char *), const char *format, ...) + { + char buf[256]; ++ va_list args; + + if (message_handler) + { +- sprintf (buf, format, s1, s2, s3, s4, s5, s6, s7, s8); ++ va_start (args, format); ++ vsprintf (buf, format, args); ++ va_end (args); + (*message_handler) (buf); + } + } +--- Xsi/Wnn/jlib/js.c ++++ Xsi/Wnn/jlib/js.c 2001/09/04 17:34:48 +@@ -900,7 +900,7 @@ + free((char *)env); + */ + set_current_js (env->js_id); +- handler_of_jserver_dead (NULL); ++ handler_of_jserver_dead (-1); + snd_env_head (&tmp_env, JS_DISCONNECT); + snd_flush (); + x = get4com (); +--- Xsi/Wnn/jutil/atod.c ++++ Xsi/Wnn/jutil/atod.c 2001/09/04 16:59:45 +@@ -39,6 +39,8 @@ + + #include + #include ++#include ++#include + #include "commonhd.h" + #include "wnn_config.h" + #include "jslib.h" +--- Xsi/Wnn/jutil/atorev.c ++++ Xsi/Wnn/jutil/atorev.c 2001/09/04 16:59:45 +@@ -35,6 +35,7 @@ + + #include + #include ++#include + #include "commonhd.h" + #include "jslib.h" + #include "jh.h" +--- Xsi/Wnn/jutil/dtoa.c ++++ Xsi/Wnn/jutil/dtoa.c 2001/09/04 16:59:45 +@@ -38,6 +38,8 @@ + #endif /* lint */ + + #include ++#include ++#include + #include "commonhd.h" + #include "wnn_config.h" + #include "jslib.h" +--- Xsi/Wnn/jutil/wddel.c ++++ Xsi/Wnn/jutil/wddel.c 2001/09/04 16:59:45 +@@ -38,6 +38,7 @@ + #endif /* lint */ + + #include ++#include + #include "commonhd.h" + #include "wnn_config.h" + #include "jllib.h" +--- Xsi/Wnn/jutil/wdreg.c ++++ Xsi/Wnn/jutil/wdreg.c 2001/09/04 16:59:45 +@@ -38,6 +38,7 @@ + #endif /* lint */ + + #include ++#include + #include + #include + #include "commonhd.h" +--- Xsi/Wnn/uum/history.c ++++ Xsi/Wnn/uum/history.c 2001/09/04 16:59:45 +@@ -30,6 +30,7 @@ + */ + + #include ++#include + #include "commonhd.h" + #include "sdefine.h" + #include "sheader.h" +--- Xsi/Wnn/uum/sheader.h ++++ Xsi/Wnn/uum/sheader.h 2001/09/04 16:59:45 +@@ -320,6 +320,7 @@ + extern void set_keypad_on (); + extern void set_keypad_off (); + extern void set_scroll_region (); ++#define setenv fwnn_setenv + extern void setenv (); + extern int setutmp (); + extern int st_colum (); diff --git a/FreeWnn-1.1.1-a017.tar.bz2 b/FreeWnn-1.1.1-a017.tar.bz2 new file mode 100644 index 0000000..2005c0d --- /dev/null +++ b/FreeWnn-1.1.1-a017.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aab3bdf1e78e1ad4cd25dced0a13ecf0af8e556c49f875a7e3bbf3f99de16afa +size 2906933 diff --git a/FreeWnn-fixes.patch b/FreeWnn-fixes.patch new file mode 100644 index 0000000..e51c1f8 --- /dev/null +++ b/FreeWnn-fixes.patch @@ -0,0 +1,480 @@ +--- FreeWnn-1.1.1-a017/Xsi/Wnn/etc/pwd.c.xx 2005-06-15 15:42:17.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/etc/pwd.c 2005-06-15 15:42:22.000000000 +0200 +@@ -34,6 +34,7 @@ + */ + #ifndef JS + #include ++#include + #include "commonhd.h" + #include "jslib.h" + #include "wnn_os.h" +--- FreeWnn-1.1.1-a017/Xsi/Wnn/etc/msg.c.xx 2005-06-15 15:42:31.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/etc/msg.c 2005-06-15 15:50:20.000000000 +0200 +@@ -48,71 +48,11 @@ + */ + + #include ++#include + #include "commonhd.h" + #include "wnn_os.h" + #include "msg.h" + +-extern char *getenv (); +- +-#ifdef hpux +-void * +-bsearch (ky, bs, nel, width, compar) +- const void *ky; +- const void *bs; +- size_t nel; +- size_t width; +- int (*compar) (const void *, const void *); +-#else +-static char * +-bsearch (ky, bs, nel, width, compar) +- char *ky; +- char *bs; +- unsigned long nel; +- unsigned long width; +- int (*compar) (); +-#endif /* hpux */ +-{ +- char *key = ky; +- char *base = bs; +- int two_width = width + width; +- char *last = base + width * (nel - 1); +- +- register char *p; +- register int ret; +-#ifdef hpux +- register int tmp; +-#endif +- +- while (last >= base) +- { +- p = base + width * ((last - base) / two_width); +- ret = (*compar) ((void *) key, (void *) p); +- +- if (ret == 0) +- return ((char *) p); /* found */ +-#ifdef hpux +- if (ret < 0) +- { +- tmp = p; +- tmp -= width; +- last = tmp; +- } +- else +- { +- tmp = p; +- tmp += width; +- base = tmp; +- } +-#else /* hpux */ +- if (ret < 0) +- last = p - width; +- else +- base = p + width; +-#endif /* hpux */ +- } +- return ((char *) 0); /* not found */ +-} +- + static char * + getlang (lang) + char *lang; +--- FreeWnn-1.1.1-a017/Xsi/Wnn/etc/xutoj.c.xx 2005-06-15 15:58:39.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/etc/xutoj.c 2005-06-15 15:58:46.000000000 +0200 +@@ -31,6 +31,7 @@ + + #define NEED_CR + ++#include + #include "commonhd.h" + #include "wnn_config.h" + #include "wnn_os.h" +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jlib/getopt.c.xx 2005-06-15 15:41:17.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jlib/getopt.c 2005-06-15 15:49:17.000000000 +0200 +@@ -29,6 +29,10 @@ + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#include ++#include ++#include ++ + /*LINTLIBRARY*/ + /*********************************************************************** + getopt.c +@@ -40,8 +44,6 @@ + 加えて下さい。 + + ***********************************************************************/ +-#define NULL 0 +-#define EOF (-1) + #define ERR_PRINT(s, c) \ + if(opterr){ \ + char errbuf[2]; \ +@@ -55,8 +57,6 @@ + #ifdef BSD42 + #define strchr index + #endif +-extern int strcmp (); +-extern char *strchr (); + + int opterr = 1; + int optind = 1; +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/Makefile.in.xx 2005-06-15 15:52:36.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/Makefile.in 2005-06-15 15:52:48.000000000 +0200 +@@ -46,8 +46,8 @@ + OBJ0= de.o + OBJ1= de_vars.o dispatch.o do_dic_env.o do_dic_no.o do_filecom.o error.o jbiki.o jbiki_b.o jishoop.o jserver_id.o rd_jishoop.o readfile.o b_index.o jishosub.o jmt0.o malloc.o kai_area.o mknode0.o mknode1.o mknode2.o renbn_kai.o bnsetu_kai.o daibn_kai.o jikouho.o jikouho_d.o fzk.o atojis.o get_kaiarea.o snd_rcv.o do_henkan.o do_henkan1.o do_env.o do_hindo_s.o initjserv.o hinsi_list.o sisheng.o w_string.o + +-SRC2= $(WNNJLIBSRC)/getopt.c +-OBJ2= getopt.o ++SRC2= ++OBJ2= + SRC3= $(WNNJLIBSRC)/wnnerrmsg.c + OBJ3= wnnerrmsg.o + +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/de.c.xx 2005-06-15 15:38:43.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/de.c 2005-06-15 15:56:03.000000000 +0200 +@@ -320,6 +320,7 @@ + demon_main (); + + demon_fin (); ++ return 0; + } + + static void +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/error.c.xx 2005-06-15 15:38:43.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/error.c 2005-06-15 15:39:45.000000000 +0200 +@@ -35,6 +35,8 @@ + #include + #include + #include ++#include ++#include + #include "commonhd.h" + #include "de_header.h" + #include +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/initjserv.c.xx 2005-06-15 15:38:43.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/initjserv.c 2005-06-15 15:40:51.000000000 +0200 +@@ -32,6 +32,7 @@ + #include + + #include ++#include + #include + + #if defined(HAVE_SYS_TYPES_H) +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/jikouho.c.xx 2005-06-15 15:38:43.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/jikouho.c 2005-06-15 15:40:30.000000000 +0200 +@@ -34,6 +34,7 @@ + ************************************************/ + #include + #include ++#include + #include "commonhd.h" + #include "de_header.h" + #include "jdata.h" +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/jikouho_d.c.xx 2005-06-15 15:38:43.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/jikouho_d.c 2005-06-15 15:56:33.000000000 +0200 +@@ -34,6 +34,7 @@ + ************************************************/ + #include + #include ++#include + #include "commonhd.h" + #include "de_header.h" + #include "jdata.h" +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/malloc.c.xx 2005-06-15 15:38:43.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/malloc.c 2005-06-15 15:47:12.000000000 +0200 +@@ -48,10 +46,6 @@ + extern void *realloc (void *, size_t); + extern void *calloc (size_t, size_t); + #else +-extern char *malloc (); +-extern void free (); +-extern char *realloc (); +-extern char *calloc (); + #endif /* hpux */ + + #ifdef hpux +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jutil/wnnstat.c.xx 2005-06-15 15:57:00.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jutil/wnnstat.c 2005-06-15 15:58:06.000000000 +0200 +@@ -34,6 +34,7 @@ + #endif /* lint */ + + #include ++#include + #include "jslib.h" + #include "jllib.h" + #include "jd_sock.h" +--- FreeWnn-1.1.1-a017/Xsi/Wnn/uum/jikouho.c.xx 2005-06-15 15:59:10.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/jikouho.c 2005-06-15 16:01:08.000000000 +0200 +@@ -30,6 +30,7 @@ + */ + + #include ++#include + #include "jllib.h" + #include "commonhd.h" + #include "sdefine.h" +--- FreeWnn-1.1.1-a017/Xsi/Wnn/uum/jutil.c.xx 2005-06-15 15:59:10.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/jutil.c 2005-06-15 16:01:19.000000000 +0200 +@@ -33,6 +33,7 @@ + /* 活辞書とはカレントユーザ辞書のことだよ */ + + #include ++#include + #include "commonhd.h" + #include "jslib.h" + #include "jllib.h" +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jlib/Makefile.in.xx 2005-06-15 16:08:06.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jlib/Makefile.in 2005-06-15 16:08:54.000000000 +0200 +@@ -49,8 +49,8 @@ + + OBJ1= js.o wnnerrmsg.o jl.o + +-SRC2= getopt.c +-OBJ2= getopt.o ++SRC2= ++OBJ2= + SRC3= $(WNNETCSRC)/msg.c + OBJ3= msg.o + SRC4= $(WNNETCSRC)/yincoding.c +@@ -87,19 +87,6 @@ + + all:: $(OBJS) libwnn.a + +-all:: libgetopt.a +- +-libgetopt.a: $(OBJ2) $(EXTRALIBRARYDEPS) +- $(RM) $@ +- $(AR) $@ $(OBJ2) +- $(RANLIB) $@ +- +-lintlib:: llib-lgetopt.ln +- +-llib-lgetopt.ln: $(SRC2) $(EXTRALIBRARYDEPS) +- $(RM) $@ +- $(LINT) $(LINTLIBFLAG)getopt $(LINTFLAGS) $(SRC2) +- + js.o : js.c $(WNNETCSRC)/bdic.c $(WNNETCSRC)/pwd.c $(WNNETCSRC)/gethinsi.c + + lint: +--- FreeWnn-1.1.1-a017/Xsi/cWnn/jlib/Makefile.in.xx 2005-06-15 16:13:51.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/cWnn/jlib/Makefile.in 2005-06-15 16:14:09.000000000 +0200 +@@ -37,7 +37,7 @@ + + LIB_MT_DEFINES = LibraryMTDefines + +-LINKS = getopt.c jl.c js.c kankana.c wnnerrmsg.c ++LINKS = jl.c js.c kankana.c wnnerrmsg.c + JLIBDEFINES = -DWRITE_CHECK + INCLUDES = -I$(CWNNINCLUDESRC) -I$(TOP) + DEFINES = $(CWNNDEFINES) $(CWNNLANGDEF) $(JLIBDEFINES) +@@ -50,8 +50,8 @@ + + OBJ1= js.o wnnerrmsg.o jl.o + +-SRC2= getopt.c +-OBJ2= getopt.o ++SRC2= ++OBJ2= + SRC3= $(CWNNETCSRC)/msg.c + OBJ3= msg.o + SRC4= $(CWNNETCSRC)/yincoding.c +@@ -90,17 +90,6 @@ + + includes:: $(LINKS) + +-getopt.c: $(WNNJLIBSRC)/getopt.c +- $(RM) $@ +- $(LN) $? $@ +- +-includes:: getopt.c +- +-depend:: getopt.c +- +-clean:: +- $(RM) getopt.c +- + jl.c: $(WNNJLIBSRC)/jl.c + $(RM) $@ + $(LN) $? $@ +@@ -145,19 +134,6 @@ + clean:: + $(RM) wnnerrmsg.c + +-all:: libgetopt.a +- +-libgetopt.a: $(OBJ2) $(EXTRALIBRARYDEPS) +- $(RM) $@ +- $(AR) $@ $(OBJ2) +- $(RANLIB) $@ +- +-lintlib:: llib-lgetopt.ln +- +-llib-lgetopt.ln: $(SRC2) $(EXTRALIBRARYDEPS) +- $(RM) $@ +- $(LINT) $(LINTLIBFLAG)getopt $(LINTFLAGS) $(SRC2) +- + js.o : js.c $(CWNNETCSRC)/bdic.c $(CWNNETCSRC)/pwd.c $(CWNNETCSRC)/gethinsi.c + + lint: +--- FreeWnn-1.1.1-a017/Xsi/cWnn/jserver/Makefile.in.xx 2005-06-15 16:19:54.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/cWnn/jserver/Makefile.in 2005-06-15 16:20:03.000000000 +0200 +@@ -50,8 +50,8 @@ + OBJ0= de.o + OBJ1= de_vars.o dispatch.o do_dic_env.o do_dic_no.o do_filecom.o error.o jbiki.o jbiki_b.o jishoop.o rd_jishoop.o readfile.o b_index.o jishosub.o jmt0.o malloc.o kai_area.o mknode0.o mknode1.o mknode2.o renbn_kai.o bnsetu_kai.o daibn_kai.o jikouho.o jikouho_d.o fzk.o atojis.o get_kaiarea.o snd_rcv.o do_henkan.o do_henkan1.o do_env.o do_hindo_s.o initjserv.o hinsi_list.o sisheng.o w_string.o + +-SRC2= $(CWNNJLIBSRC)/getopt.c +-OBJ2= getopt.o ++SRC2= ++OBJ2= + SRC3= $(CWNNJLIBSRC)/wnnerrmsg.c + OBJ3= wnnerrmsg.o + +--- FreeWnn-1.1.1-a017/Xsi/kWnn/jlib/Makefile.in.xx 2005-06-15 16:24:30.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/kWnn/jlib/Makefile.in 2005-06-15 16:24:46.000000000 +0200 +@@ -38,7 +38,7 @@ + + LIB_MT_DEFINES = LibraryMTDefines + +-LINKS = getopt.c jl.c js.c wnnerrmsg.c ++LINKS = jl.c js.c wnnerrmsg.c + JLIBDEFINES = -DWRITE_CHECK + INCLUDES = -I$(KWNNINCLUDESRC) -I$(TOP) + DEFINES = $(KWNNDEFINES) $(KWNNLANGDEF) $(CWNNLANGDEF) $(JLIBDEFINES) +@@ -52,8 +52,8 @@ + + OBJ1= js.o wnnerrmsg.o jl.o + +-SRC2= getopt.c +-OBJ2= getopt.o ++SRC2= ++OBJ2= + SRC3= $(KWNNETCSRC)/msg.c + OBJ3= msg.o + SRC4= $(KWNNETCSRC)/strings.c +@@ -94,17 +94,6 @@ + + includes:: $(LINKS) + +-getopt.c: $(WNNJLIBSRC)/getopt.c +- $(RM) $@ +- $(LN) $? $@ +- +-includes:: getopt.c +- +-depend:: getopt.c +- +-clean:: +- $(RM) getopt.c +- + jl.c: $(WNNJLIBSRC)/jl.c + $(RM) $@ + $(LN) $? $@ +@@ -138,19 +127,6 @@ + clean:: + $(RM) wnnerrmsg.c + +-all:: libgetopt.a +- +-libgetopt.a: $(OBJ2) $(EXTRALIBRARYDEPS) +- $(RM) $@ +- $(AR) $@ $(OBJ2) +- $(RANLIB) $@ +- +-lintlib:: llib-lgetopt.ln +- +-llib-lgetopt.ln: $(SRC2) $(EXTRALIBRARYDEPS) +- $(RM) $@ +- $(LINT) $(LINTLIBFLAG)getopt $(LINTFLAGS) $(SRC2) +- + js.o : js.c $(KWNNETCSRC)/bdic.c $(KWNNETCSRC)/pwd.c $(KWNNETCSRC)/gethinsi.c + + lint: +--- FreeWnn-1.1.1-a017/Xsi/kWnn/jserver/Makefile.in.xx 2005-06-15 16:28:10.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/kWnn/jserver/Makefile.in 2005-06-15 16:28:19.000000000 +0200 +@@ -48,8 +48,8 @@ + OBJ0= de.o + OBJ1= de_vars.o dispatch.o do_dic_env.o do_dic_no.o do_filecom.o error.o jbiki.o jbiki_b.o jishoop.o rd_jishoop.o readfile.o b_index.o jishosub.o jmt0.o malloc.o kai_area.o mknode0.o mknode1.o mknode2.o renbn_kai.o bnsetu_kai.o daibn_kai.o jikouho.o jikouho_d.o fzk.o atojis.o get_kaiarea.o snd_rcv.o do_henkan.o do_henkan1.o do_env.o do_hindo_s.o initjserv.o hinsi_list.o sisheng.o w_string.o + +-SRC2= $(KWNNJLIBSRC)/getopt.c +-OBJ2= getopt.o ++SRC2= ++OBJ2= + SRC3= $(KWNNJLIBSRC)/wnnerrmsg.c + OBJ3= wnnerrmsg.o + +--- FreeWnn-1.1.1-a017/Xsi/Wnn/romkan/rk_modread.c.xx 2005-06-15 16:36:32.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/romkan/rk_modread.c 2005-06-15 16:37:09.000000000 +0200 +@@ -37,6 +37,7 @@ + ***********************************************************************/ + /* Version 3.0 + */ ++#include + #include "rk_header.h" + #include "rk_extvars.h" + #ifdef WNNDEFAULT +@@ -110,6 +111,7 @@ + if (!mystrcmp (hyo[i].name, wd)) + return (i); + ERRMOD (9); ++ exit(1); + /*NOTREACHED*/} + + /** モード表の読み込み */ +--- FreeWnn-1.1.1-a017/Xsi/PubdicPlus/pod.c.xx 2005-06-15 16:35:54.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/PubdicPlus/pod.c 2005-06-15 16:36:02.000000000 +0200 +@@ -1361,6 +1361,7 @@ + } + } + ++void + shrinkargs (argv, n, count) + char **argv; + int n, count; +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/initjserv.c.xx 2005-06-15 16:54:09.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/initjserv.c 2005-06-15 16:55:02.000000000 +0200 +@@ -428,7 +428,7 @@ + return (num); + case 'd': + case 'D': +- return (atoi (*(st + 1))); ++ return atoi (st + 1); + case 'o': + case 'O': + sscanf (st + 1, "%o", &num); +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/malloc.c.xx 2005-06-15 16:55:19.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/malloc.c 2005-06-15 16:56:24.000000000 +0200 +@@ -42,13 +42,7 @@ + #undef realloc + #undef free + +-#ifdef hpux +-extern void *malloc (size_t); +-extern void free (void *); +-extern void *realloc (void *, size_t); +-extern void *calloc (size_t, size_t); +-#else +-#endif /* hpux */ ++#include + + #ifdef hpux + void * +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jlib.V3/jlv3.c.xx 2005-06-15 17:02:52.000000000 +0200 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jlib.V3/jlv3.c 2005-06-15 17:03:22.000000000 +0200 +@@ -52,6 +52,9 @@ + + + #include ++#include ++#include ++#include + #include + #include + #include diff --git a/FreeWnn-fsstnd.patch b/FreeWnn-fsstnd.patch new file mode 100644 index 0000000..bd685de --- /dev/null +++ b/FreeWnn-fsstnd.patch @@ -0,0 +1,56 @@ +diff -Naur FreeWnn-1.1.1-a013.orig/Xsi/makerule.mk.in FreeWnn-1.1.1-a013/Xsi/makerule.mk.in +--- FreeWnn-1.1.1-a013.orig/Xsi/makerule.mk.in Wed Sep 29 01:56:24 1999 ++++ FreeWnn-1.1.1-a013/Xsi/makerule.mk.in Mon Jan 31 13:26:50 2000 +@@ -113,7 +113,7 @@ + prefix = @prefix@ + exec_prefix = @exec_prefix@ + PREFIX = @prefix@ +- WNNWNNDIR = ${PREFIX}/lib/wnn ++ WNNWNNDIR = /etc/FreeWnn + WNNBINDIR = ${PREFIX}/bin + WNNINCDIR = @includedir@ + WNNLIBDIR = @libdir@ +@@ -125,9 +125,9 @@ + WNNTOP = $(IMTOP)/Wnn +- JWNNLANG = ja_JP ++ JWNNLANG = ja + JWNNWNNDIR = $(WNNWNNDIR)/$(JWNNLANG) +- JWNNBINDIR = $(WNNBINDIR)/Wnn4 ++ JWNNBINDIR = $(WNNBINDIR) + JWNNINCDIR = $(WNNINCDIR)/wnn +- JWNNDICDIR = $(JWNNWNNDIR)/dic ++ JWNNDICDIR = /var/lib/wnn/$(JWNNLANG)/dic + JWNNPUBDICDIR = $(JWNNDICDIR)/pubdic + JWNNWNNCONSDICDIR = $(JWNNDICDIR)/wnncons + JWNNFZKSRCDIR = $(JWNNDICDIR)/src +@@ -155,8 +155,8 @@ + CWNNLANG = zh_CN + CWNNWNNDIR = $(WNNWNNDIR)/$(CWNNLANG) + CWNNINCDIR = $(WNNINCDIR)/cwnn +- CWNNBINDIR = $(WNNBINDIR)/cWnn4 +- CWNNDICDIR = $(CWNNWNNDIR)/dic ++ CWNNBINDIR = $(WNNBINDIR) ++ CWNNDICDIR = /var/lib/wnn/$(CWNNLANG)/dic + CWNNSYSDICDIR = $(CWNNDICDIR)/sys + CWNNCDSRC = $(CWNNTOP)/cd + CWNNCDICSRC = $(CWNNTOP)/cdic +@@ -178,8 +178,8 @@ + KWNNLANG = ko_KR + KWNNWNNDIR = $(WNNWNNDIR)/$(KWNNLANG) + KWNNINCDIR = $(WNNINCDIR)/kwnn +- KWNNBINDIR = $(WNNBINDIR)/kWnn4 +- KWNNDICDIR = $(KWNNWNNDIR)/dic ++ KWNNBINDIR = $(WNNBINDIR) ++ KWNNDICDIR = /var/lib/wnn/$(KWNNLANG)/dic + KWNNSYSDICDIR = $(KWNNDICDIR)/sys + KWNNKDSRC = $(KWNNTOP)/kd + KWNNKDICSRC = $(KWNNTOP)/kdic +@@ -199,7 +199,7 @@ + + TWNNLANG = zh_TW + TWNNWNNDIR = $(WNNWNNDIR)/$(TWNNLANG) +- TWNNDICDIR = $(TWNNWNNDIR)/dic ++ TWNNDICDIR = /var/lib/wnn/$(TWNNLANG)/dic + TWNNSYSDICDIR = $(TWNNDICDIR)/sys + TWNNTDSRC = $(CWNNTOP)/td + TWNNTDICSRC = $(CWNNTOP)/tdic diff --git a/FreeWnn-include.patch b/FreeWnn-include.patch new file mode 100644 index 0000000..5137639 --- /dev/null +++ b/FreeWnn-include.patch @@ -0,0 +1,35 @@ +diff -pur FreeWnn-1.1.1-a017-547/Xsi/PubdicPlus/ctopd.c FreeWnn-1.1.1-a017/Xsi/PubdicPlus/ctopd.c +--- FreeWnn-1.1.1-a017-547/Xsi/PubdicPlus/ctopd.c 2000-02-23 16:32:03.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/PubdicPlus/ctopd.c 2005-09-22 14:14:02.000000000 +0200 +@@ -25,6 +25,7 @@ static char rcsid[] = "$Id: ctopd.c,v 1. + #endif + + #include ++#include + + static char *program; + +diff -pur FreeWnn-1.1.1-a017-547/Xsi/PubdicPlus/wtopd.c FreeWnn-1.1.1-a017/Xsi/PubdicPlus/wtopd.c +--- FreeWnn-1.1.1-a017-547/Xsi/PubdicPlus/wtopd.c 2000-02-23 16:32:03.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/PubdicPlus/wtopd.c 2005-09-22 14:12:49.000000000 +0200 +@@ -25,6 +25,8 @@ static char rcsid[] = "$Id: wtopd.c,v 1. + #endif + + #include ++#include ++#include + + static char *program; + +diff -pur FreeWnn-1.1.1-a017-547/Xsi/Wnn/uum/ttyfdslot.c FreeWnn-1.1.1-a017/Xsi/Wnn/uum/ttyfdslot.c +--- FreeWnn-1.1.1-a017-547/Xsi/Wnn/uum/ttyfdslot.c 2000-02-23 16:31:45.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/ttyfdslot.c 2005-09-22 14:22:49.000000000 +0200 +@@ -37,6 +37,8 @@ + #if defined(BSD42) && (! defined(BSD43)) || defined(linux) + + #include ++#include ++#include + #define SLOTSIZ 32 + + char *ttyname (); diff --git a/FreeWnn-ja.patch b/FreeWnn-ja.patch new file mode 100644 index 0000000..38f051c --- /dev/null +++ b/FreeWnn-ja.patch @@ -0,0 +1,133 @@ +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/etc/msg.c Mon Mar 20 17:31:33 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/etc/msg.c Fri Aug 18 15:20:20 2000 +@@ -457,12 +457,12 @@ + { + struct msg_cat *cd; + +- cd = msg_open ("msg", "%L", "ja_JP"); ++ cd = msg_open ("msg", "%L", "ja"); + +- printf (msg_get (cd, 5, "message not found\n", "ja_JP"), 555); ++ printf (msg_get (cd, 5, "message not found\n", "ja"), 555); + printf (msg_get (cd, 6, "message not found\n", "zh_CN")); + printf (msg_get (cd, -1, "", "ja_JP"), 555); +- printf (msg_get (cd, 2, "message not found\n", "ja_JP"), "abc"); ++ printf (msg_get (cd, 2, "message not found\n", "ja"), "abc"); + printf (msg_get (cd, 100, "message not found\n", "zh_CN"), "abc"); + } + #endif /* not_use */ +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/include/jd_sock.h Wed Feb 23 16:31:29 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/include/jd_sock.h Fri Aug 18 15:41:45 2000 +@@ -67,7 +67,7 @@ + #ifdef JAPANESE /* Japanese */ + # define WNN_PORT_IN (0x5701) + static char *sockname = "/tmp/jd_sockV4"; /* for jserver */ +-# define LANG_NAME "ja_JP" ++# define LANG_NAME "ja" + # define SERVERNAME "wnn4" + # define MESSAGE_FILE "jserver.msg" + #else /* JAPANESE */ +@@ -98,7 +98,7 @@ + + # define WNN_PORT_IN (0x5701) + static char *sockname = "/tmp/jd_sockV4"; /* for jserver */ +-# define LANG_NAME "ja_JP" ++# define LANG_NAME "ja" + # define SERVERNAME "wnn4" + # define MESSAGE_FILE "jserver.msg" + #endif /* KOREAN */ +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/include/jslib.h Wed Feb 23 16:31:30 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/include/jslib.h Fri Aug 18 15:42:49 2000 +@@ -394,8 +394,8 @@ + /* + JSLIB function declaration + */ +-#define js_open(server, timeout) js_open_lang(server, "ja_JP", timeout) +-#define js_connect(server,env_name) js_connect_lang(server, env_name, "ja_JP") ++#define js_open(server, timeout) js_open_lang(server, "ja", timeout) ++#define js_connect(server,env_name) js_connect_lang(server, env_name, "ja") + + extern WNN_JSERVER_ID *js_open_lang (); + extern int js_close (); +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/include/msg.h Wed Feb 23 16:31:30 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/include/msg.h Fri Aug 18 15:43:29 2000 +@@ -50,7 +50,7 @@ + /* + #define DEF_LANG "C" + */ +-#define DEF_LANG "ja_JP" ++#define DEF_LANG "ja" + + extern struct msg_cat *msg_open (); + extern char *msg_get (); +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/include/wnn_config.h Wed Feb 23 16:31:30 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/include/wnn_config.h Fri Aug 18 15:46:02 2000 +@@ -44,7 +44,7 @@ + #define WNN_CSERVER_ENV "CSERVER" + #define WNN_KSERVER_ENV "KSERVER" + #define WNN_TSERVER_ENV "TSERVER" +-#define WNN_J_LANG "ja_JP" ++#define WNN_J_LANG "ja" + #define WNN_C_LANG "zh_CN" + #define WNN_K_LANG "ko_KR" + #define WNN_T_LANG "zh_TW" +@@ -79,7 +79,7 @@ + /* for jserver */ + #ifndef SERVER_INIT_FILE + # ifdef JAPANESE +-# define SERVER_INIT_FILE "/ja_JP/jserverrc" ++# define SERVER_INIT_FILE "/ja/jserverrc" + # else /* JAPANESE */ + # ifdef CHINESE + # ifdef TAIWANESE +@@ -91,7 +91,7 @@ + # ifdef KOREAN + # define SERVER_INIT_FILE "/ko_KR/kserverrc" + # else /* KOREAN */ +-# define SERVER_INIT_FILE "/ja_JP/jserverrc" /* Default */ ++# define SERVER_INIT_FILE "/ja/jserverrc" /* Default */ + # endif /* KOREAN */ + # endif /* CHINESE */ + # endif /* JAPANESE */ +@@ -109,7 +109,7 @@ + + #define ENVRCFILE "/wnnenvrc" + #ifndef HINSIDATA_FILE +-# define HINSIDATA_FILE "/ja_JP/hinsi.data" ++# define HINSIDATA_FILE "/ja/hinsi.data" + #endif /* HINSIDATA_FILE */ + + #define USR_DIC_DIR_VAR "@USR" +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jd/serverdefs Sun Jan 30 04:40:48 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jd/serverdefs Fri Aug 18 15:46:43 2000 +@@ -30,7 +30,7 @@ + ; + + ;lang_name machine_name unix_domain_socket_name service_name port_num +-ja_JP jserver /tmp/jd_sockV4 wnn4 22273 ++ja jserver /tmp/jd_sockV4 wnn4 22273 + japanese jserver /tmp/jd_sockV4 wnn4 22273 + nihongo jserver /tmp/jd_sockV4 wnn4 22273 + zh_CN cserver /tmp/cd_sockV4 wnn4_Cn 22289 +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jlib/jl.c Mon Mar 20 17:21:12 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jlib/jl.c Fri Aug 18 15:47:44 2000 +@@ -442,7 +442,7 @@ + if (!lang || !*lang) + { + /* Sorry! Default is Japanese. :-) */ +- strcpy (p_lang, "ja_JP"); ++ strcpy (p_lang, "ja"); + } + else + { +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/header.c Wed Feb 23 16:31:42 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/header.c Fri Aug 18 15:48:36 2000 +@@ -131,7 +131,7 @@ + + FuncDataBase function_db[] = { + #ifdef JAPANESE +- {"ja_JP", ++ {"ja", + {NULL, NULL, call_t_redraw_move_normal, + call_t_redraw_move_1_normal, call_t_redraw_move_2_normal, + call_t_print_l_normal, NULL, char_len_normal, char_q_len_normal, diff --git a/FreeWnn-lib64.patch b/FreeWnn-lib64.patch new file mode 100644 index 0000000..4dd5543 --- /dev/null +++ b/FreeWnn-lib64.patch @@ -0,0 +1,11 @@ +--- FreeWnn-1.1.1-a017/Xsi/makerule.mk.in 2002/03/15 11:10:47 1.1 ++++ FreeWnn-1.1.1-a017/Xsi/makerule.mk.in 2002/03/15 11:11:14 +@@ -90,7 +90,7 @@ + ALLDEFINES = $(INCLUDES) -DFUNCPROTO=15 -DNARROWPROTO $(DEFINES) + CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(ALLDEFINES) + LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES) +-LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) -L/usr/lib/termcap ++LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) -L@libdir@/termcap + + CCLINK = $(CC) + diff --git a/FreeWnn-noroot.patch b/FreeWnn-noroot.patch new file mode 100644 index 0000000..1c208a1 --- /dev/null +++ b/FreeWnn-noroot.patch @@ -0,0 +1,255 @@ +--- FreeWnn-1.1.1-a017/Xsi/Contrib/dic/gerodic/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/Contrib/dic/gerodic/Makefile.in +@@ -62,9 +62,7 @@ + install:: ${OBJ} + @if [ -d $(DESTDIR)$(GERODIR) ]; then set +x; \ + else (set -x; $(MKDIRHIER) $(DESTDIR)$(GERODIR)); fi +- chown ${WNNOWNER} $(DESTDIR)$(GERODIR) +- @INSTALL@ $(INSTALLFLAGS) $(INSTDATFLAGS) -o ${WNNOWNER} ${OBJ} $(DESTDIR)$(GERODIR) +- ${WNNTOUCH} $(DESTDIR)$(GERODIR)/${OBJ} ++ @INSTALL@ $(INSTALLFLAGS) $(INSTDATFLAGS) ${OBJ} $(DESTDIR)$(GERODIR) + + clean:: + $(RM) ${OBJ} +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/Makefile.in +@@ -36,7 +36,7 @@ + JSERVERDEFINES = -DJSERVER -DWRITE_CHECK + INCLUDES = -I$(WNNINCLUDESRC) -I$(TOP) + DEFINES = $(WNNDEFINES) $(JSERVERDEFINES) $(WNNTERM) +-LOCAL_INSTFLAGS = $(INSTUIDFLAGS) -o $(WNNOWNER) ++LOCAL_INSTFLAGS = + SERVERINITDEF = -DSERVER_INIT_FILE=\"/$(JWNNLANG)/jserverrc\" + HINSIDEFINES = -DHINSIDATA_FILE=\"/$(JWNNLANG)/hinsi.data\" + +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jutil/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jutil/Makefile.in +@@ -35,7 +35,7 @@ + + INCLUDES = -I$(WNNINCLUDESRC) + DEFINES = $(WNNDEFINES) $(WNNLANGDEF) +- INSTALLFLAGS = $(INSTBINFLAGS) $(INSTPGMFLAGS) -o $(WNNOWNER) ++ INSTALLFLAGS = $(INSTBINFLAGS) $(INSTPGMFLAGS) + HINSIDEFINE = -DHINSIDATA_FILE=\"/$(JWNNLANG)/hinsi.data\" + + CLIENTPROGRAMS = wnnstat wnnkill wddel wdreg +--- FreeWnn-1.1.1-a017/Xsi/Wnn/pubdicplus/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/pubdicplus/Makefile.in +@@ -33,7 +33,7 @@ + + INSTALL = @INSTALL@ + +- INSTALLFLAGS = $(INSTLIBFLAGS) -o $(WNNOWNER) ++ INSTALLFLAGS = $(INSTLIBFLAGS) + ATOD = $(WNNJUTILSRC)/atod + ATOF = $(WNNJUTILSRC)/atof + WNNTOUCH = $(WNNJUTILSRC)/wnntouch +@@ -371,8 +371,7 @@ + install:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; + @for i in $(JWNNDICDIR); do if [ -d $(DESTDIR)$$i ]; then \ +- set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i; \ +- chown $(WNNOWNER) $(DESTDIR)$$i); fi \ ++ set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i); fi \ + done + + install:: $(DIC) +--- FreeWnn-1.1.1-a017/Xsi/Wnn/uum/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/Makefile.in +@@ -36,7 +36,7 @@ + UUMOWNER = root + INCLUDES = -I$(WNNINCLUDESRC) -I$(WNNROMKANSRC) + DEFINES = $(SIGNAL_DEFINES) $(WNNDEFINES) $(WNNLANGDEF) +-LOCAL_INSTFLAGS = $(INSTUIDFLAGS) -o $(UUMOWNER) ++LOCAL_INSTFLAGS = + LOCAL_LIBRARIES = $(WNNJLIB) $(WNNCONVLIB) + + SRC1= epilogue.c header.c kensaku.c kuten.c jis_in.c prologue.c touroku.c jikouho.c jutil.c w_string.c printf.c termio.c hinsi.c termcap.c ttyfdslot.c setutmp.c redraw.c history.c key_bind.c screen.c basic_op.c uif.c cursor.c jhlp.c select_ele.c inspect.c wnnrc_op.c functions.c +--- FreeWnn-1.1.1-a017/Xsi/Wnn/wnncons/dic/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/wnncons/dic/Makefile.in +@@ -33,7 +33,7 @@ + + INSTALL = @INSTALL@ + +- INSTALLFLAGS = $(INSTLIBFLAGS) -o $(WNNOWNER) ++ INSTALLFLAGS = $(INSTLIBFLAGS) + ATOD = $(WNNJUTILSRC)/atod + WNNTOUCH = $(WNNJUTILSRC)/wnntouch + HINSI = $(WNNJDSRC)/hinsi.data +--- FreeWnn-1.1.1-a017/Xsi/Xwnmo/xjutil/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/Xwnmo/xjutil/Makefile.in +@@ -22,7 +22,7 @@ + + include @top_srcdir@/makerule.mk + +-LOCAL_INSTFLAGS = $(INSTBINFLAGS) -o $(WNNOWNER) ++LOCAL_INSTFLAGS = + INCLUDES = -I. $(XWNMOINCLUDES) -I$(XWNMOSRC) + + DEPLIBS = $(XWNMOJLIB) +--- FreeWnn-1.1.1-a017/Xsi/Xwnmo/xwnmo/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/Xwnmo/xwnmo/Makefile.in +@@ -22,7 +22,7 @@ + + include @top_srcdir@/makerule.mk + +-LOCAL_INSTFLAGS = $(INSTBINFLAGS) -o $(WNNOWNER) ++LOCAL_INSTFLAGS = + INCLUDES = $(XWNMOINCLUDES) + + DEPLIBS = $(XWNMOJLIB) +--- FreeWnn-1.1.1-a017/Xsi/cWnn/cdic/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/cWnn/cdic/Makefile.in +@@ -25,7 +25,7 @@ + include @top_srcdir@/makerule.mk + + INSTALL = @INSTALL@ +-INSTALLFLAGS = $(INSTLIBFLAGS) -o $(WNNOWNER) ++INSTALLFLAGS = $(INSTLIBFLAGS) + + ATOD = $(CWNNJUTILSRC)/catod + ATOF = $(CWNNJUTILSRC)/catof +@@ -34,7 +34,7 @@ + # HINSI = ./cixing.data + FZK_FLAG = + +- INSTALLFLAGS = -m 644 -o $(WNNOWNER) ++ INSTALLFLAGS = -m 644 + + FULL = full.con + FULLR = full.conR +@@ -69,8 +69,7 @@ + install:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; + @for i in $(CWNNDICDIR); do if [ -d $(DESTDIR)$$i ]; then \ +- set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i; \ +- chown $(WNNOWNER) $(DESTDIR)$$i); fi \ ++ set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i); fi \ + done + + install:: $(ALLTGT) +--- FreeWnn-1.1.1-a017/Xsi/cWnn/jserver/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/cWnn/jserver/Makefile.in +@@ -36,7 +36,7 @@ + JSERVERDEFINES = -DJSERVER -DWRITE_CHECK + INCLUDES = -I$(CWNNINCLUDESRC) -I$(TOP) + DEFINES = $(CWNNDEFINES) $(JSERVERDEFINES) $(WNNTERM) $(CWNNLANGDEF) +-LOCAL_INSTFLAGS = $(INSTUIDFLAGS) -o $(WNNOWNER) ++LOCAL_INSTFLAGS = + SERVERINITDEF = -DSERVER_INIT_FILE=\"/$(CWNNLANG)/cserverrc\" + HINSIDEFINE = -DHINSIDATA_FILE=\"/$(CWNNLANG)/cixing.data\" + TSERVERINITDEF = -DSERVER_INIT_FILE=\"/$(TWNNLANG)/tserverrc\" +--- FreeWnn-1.1.1-a017/Xsi/cWnn/jutil/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/cWnn/jutil/Makefile.in +@@ -32,7 +32,7 @@ + include @top_srcdir@/makerule.mk + + INSTALL = @INSTALL@ +-INSTALLFLAGS = $(INSTBINFLAGS) $(INSTPGMFLAGS) -o $(WNNOWNER) ++INSTALLFLAGS = $(INSTBINFLAGS) $(INSTPGMFLAGS) + + INCLUDES = -I$(CWNNINCLUDESRC) + DEFINES = $(CWNNDEFINES) $(CWNNLANGDEF) +--- FreeWnn-1.1.1-a017/Xsi/cWnn/tdic/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/cWnn/tdic/Makefile.in +@@ -25,7 +25,7 @@ + include @top_srcdir@/makerule.mk + + INSTALL = @INSTALL@ +-INSTALLFLAGS = $(INSTLIBFLAGS) -o $(WNNOWNER) ++INSTALLFLAGS = $(INSTLIBFLAGS) + + ATOD = $(CWNNJUTILSRC)/catod + ATOF = $(CWNNJUTILSRC)/catof +@@ -34,7 +34,7 @@ + # HINSI = ./cixing.data + FZK_FLAG = + +- INSTALLFLAGS = -m 644 -o $(WNNOWNER) ++ INSTALLFLAGS = -m 644 + + FULL = full.con + FULLR = full.conR +@@ -69,8 +69,7 @@ + install:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; + @for i in $(TWNNDICDIR); do if [ -d $(DESTDIR)$$i ]; then \ +- set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i; \ +- chown $(WNNOWNER) $(DESTDIR)$$i); fi \ ++ set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i); fi \ + done + + install:: $(ALLTGT) +--- FreeWnn-1.1.1-a017/Xsi/cWnn/uum/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/cWnn/uum/Makefile.in +@@ -36,7 +36,7 @@ + UUMOWNER = root + INCLUDES = -I$(CWNNINCLUDESRC) -I$(CWNNROMKANSRC) + DEFINES = $(CWNNDEFINES) $(CWNNLANGDEF) +-LOCAL_INSTFLAGS = $(INSTUIDFLAGS) -o $(UUMOWNER) ++LOCAL_INSTFLAGS = + LOCAL_LIBRARIES = $(CWNNJLIB) $(CWNNCONVLIB) + + HDRS= buffer.h cvtcode.h sdefine.h sheader.h +--- FreeWnn-1.1.1-a017/Xsi/kWnn/jserver/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/kWnn/jserver/Makefile.in +@@ -36,7 +36,7 @@ + JSERVERDEFINES = -DJSERVER -DWRITE_CHECK + INCLUDES = -I$(KWNNJSERVERSRC) -I$(KWNNINCLUDESRC) -I$(TOP) + DEFINES = $(KWNNDEFINES) $(JSERVERDEFINES) $(WNNTERM) $(KWNNLANGDEF) +-LOCAL_INSTFLAGS = $(INSTUIDFLAGS) -o $(WNNOWNER) ++LOCAL_INSTFLAGS = + SERVERINITDEF = -DSERVER_INIT_FILE=\"/$(KWNNLANG)/kserverrc\" + HINSIDEFINE = -DHINSIDATA_FILE=\"/$(KWNNLANG)/hinsi.data\" + +--- FreeWnn-1.1.1-a017/Xsi/kWnn/jutil/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/kWnn/jutil/Makefile.in +@@ -35,7 +35,7 @@ + + INCLUDES = -I$(KWNNINCLUDESRC) + DEFINES = $(KWNNDEFINES) $(KWNNLANGDEF) +- INSTALLFLAGS = $(INSTBINFLAGS) $(INSTPGMFLAGS) -o $(WNNOWNER) ++ INSTALLFLAGS = $(INSTBINFLAGS) $(INSTPGMFLAGS) + HINSIDEFINE = -DHINSIDATA_FILE=\"/$(KWNNLANG)/hinsi.data\" + + CLIENTPROGRAMS = kwnnstat kwnnkill kwddel kwdreg +--- FreeWnn-1.1.1-a017/Xsi/kWnn/kdic/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/kWnn/kdic/Makefile.in +@@ -25,14 +25,14 @@ + include @top_srcdir@/makerule.mk + + INSTALL = @INSTALL@ +-INSTALLFLAGS = $(INSTLIBFLAGS) -o $(WNNOWNER) ++INSTALLFLAGS = $(INSTLIBFLAGS) + ATOD = $(KWNNJUTILSRC)/katod + ATOF = $(KWNNJUTILSRC)/katof + WNNTOUCH = $(KWNNJUTILSRC)/kwnntouch + HINSI = $(KWNNKDSRC)/hinsi.data + FZK_FLAG = + +- INSTALLFLAGS = -m 644 -o $(WNNOWNER) ++ INSTALLFLAGS = -m 644 + + FULL = full.fzk + +@@ -63,8 +63,7 @@ + install:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; + @for i in $(KWNNDICDIR); do if [ -d $(DESTDIR)$$i ]; then \ +- set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i; \ +- chown $(WNNOWNER) $(DESTDIR)$$i); fi \ ++ set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i); fi \ + done + + install:: $(ALLTGT) +--- FreeWnn-1.1.1-a017/Xsi/kWnn/uum/Makefile.in ++++ FreeWnn-1.1.1-a017/Xsi/kWnn/uum/Makefile.in +@@ -36,7 +36,7 @@ + UUMOWNER = root + INCLUDES = -I$(KWNNINCLUDESRC) -I$(KWNNROMKANSRC) + DEFINES = $(KWNNDEFINES) $(KWNNLANGDEF) +-LOCAL_INSTFLAGS = $(INSTUIDFLAGS) -o $(UUMOWNER) ++LOCAL_INSTFLAGS = + LOCAL_LIBRARIES = $(KWNNJLIB) $(KWNNCONVLIB) + + HDRS= buffer.h cvtcode.h sdefine.h sheader.h diff --git a/FreeWnn-returnvalue.diff b/FreeWnn-returnvalue.diff new file mode 100644 index 0000000..8f7d4ae --- /dev/null +++ b/FreeWnn-returnvalue.diff @@ -0,0 +1,11 @@ +--- Wnn/uum/jhlp.c ++++ Wnn/uum/jhlp.c +@@ -402,6 +402,8 @@ + #endif /* defined(uniosu) */ + + do_main (); ++ /* Shouldn't get here */ ++ return 42; + } + + /* diff --git a/FreeWnn-s390x.patch b/FreeWnn-s390x.patch new file mode 100644 index 0000000..625ce3a --- /dev/null +++ b/FreeWnn-s390x.patch @@ -0,0 +1,217 @@ +diff -ru FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jserver/de.c FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/de.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jserver/de.c 2000-03-20 17:31:43.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/de.c 2002-11-03 20:25:27.000000000 +0100 +@@ -158,11 +158,11 @@ + + int cur_clp; /** 現在のクライアントの番号 **/ + +-static int *all_socks; /** ビットパターン ++static fd_set *all_socks; /** ビットパターン + which jserver to select を保持 **/ +-static int *ready_socks; /** データのきているソケットの ++static fd_set *ready_socks; /** データのきているソケットの + ビットパターンを保持 **/ +-static int *dummy1_socks, *dummy2_socks; ++static fd_set *dummy1_socks, *dummy2_socks; + + static int no_of_ready_socks; + static int sel_bwidth, /** bit width of all_socks **/ +@@ -171,9 +171,14 @@ + static int nofile; /** No. of files **/ + + #define BINTSIZE (sizeof(int)*8) ++/* + #define sock_set(array,pos) (array[pos/BINTSIZE] |= (1<<(pos%BINTSIZE))) + #define sock_clr(array,pos) (array[pos/BINTSIZE] &= ~(1<<(pos%BINTSIZE))) + #define sock_tst(array,pos) (array[pos/BINTSIZE] & (1<<(pos%BINTSIZE))) ++*/ ++#define sock_set(array,pos) FD_SET(pos,array) ++#define sock_clr(array,pos) FD_CLR(pos,array) ++#define sock_tst(array,pos) FD_ISSET(pos,array) + + struct msg_cat *wnn_msg_cat; + struct msg_cat *js_msg_cat; +@@ -312,7 +317,7 @@ + for (;;) + { + #ifdef DEBUG +- error1 ("main loop: ready_socks = %02X\n", ready_socks); ++ error1 ("main loop: ready_socks = %02lX\n", ready_socks[0]); + #endif + if (get_client () == -1) + break; +@@ -341,11 +346,11 @@ + + nofile = NOFILE; + sel_w = (nofile - 1) / BINTSIZE + 1; +- all_socks = (int *) calloc (sel_w, (sizeof (int))); +- ready_socks = (int *) malloc (sel_w * (sizeof (int))); +- dummy1_socks = (int *) malloc (sel_w * (sizeof (int))); +- dummy2_socks = (int *) malloc (sel_w * (sizeof (int))); +- sel_width = sel_w * sizeof (int); /* byte width */ ++ all_socks = (fd_set *) calloc (sel_w, (sizeof (fd_set))); ++ ready_socks = (fd_set *) malloc (sel_w * (sizeof (fd_set))); ++ dummy1_socks = (fd_set *) malloc (sel_w * (sizeof (fd_set))); ++ dummy2_socks = (fd_set *) malloc (sel_w * (sizeof (fd_set))); ++ sel_width = sel_w * sizeof (fd_set); /* byte width */ + sel_bwidth = sel_width * 8; /* bit width */ + } + +@@ -366,7 +371,7 @@ + xerror ("select error"); + } + #ifdef DEBUG +- error1 ("select OK, ready_socks[0]=%02X, n-r-s=%x\n", ready_socks[0], no_of_ready_socks); ++ error1 ("select OK, ready_socks[0]=%02lX, n-r-s=%x\n", ready_socks[0], no_of_ready_socks); + #endif + } + +diff -ru FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/jhlp.c FreeWnn-1.1.1-a017/Xsi/Wnn/uum/jhlp.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/jhlp.c 2000-02-23 17:08:49.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/jhlp.c 2002-11-03 22:25:09.000000000 +0100 +@@ -134,7 +134,7 @@ + static void do_end (), open_pty (), open_ttyp (), do_main (), exec_cmd (), parse_options (), setsize (), get_rubout (), usage (), change_size (), default_usage (); + + /** メイン */ +-void ++int + main (argc, argv) + int argc; + char **argv; +@@ -923,7 +923,7 @@ + + /** メインループ */ + +-int sel_ptn; ++fd_set sel_ptn; + int pty_bit; + int tty_bit; + int ptyfd; +@@ -947,7 +947,8 @@ + + pty_bit = 1 << ptyfd; + tty_bit = 1 << ttyfd; +- sel_ptn = pty_bit | tty_bit; ++ FD_SET (ptyfd, &sel_ptn); ++ FD_SET (ttyfd, &sel_ptn); + + if (henkan_off_flag == 0) + { +@@ -1020,8 +1021,9 @@ + static unsigned char *bufend = outbuf; + static unsigned char *bufstart = outbuf; + int n; +- int rfds; +- int i, j, mask; ++ fd_set rfds; ++ int i, j; ++ fd_set mask; + unsigned char *p; + extern int henkan_off_flag; + struct timeval time_out; /* If your OS's select was implemented as +@@ -1063,9 +1065,9 @@ + time_out.tv_usec = 200 * 1000; /* 200 msec 間待つのだゾ! */ + for (rfds = sel_ptn; + #ifdef linux +- (sel_ret = select (20, &rfds, 0, 0, NULL)) < 0 && errno == EINTR; ++ (sel_ret = select (20, &rfds, NULL, NULL, NULL)) < 0 && errno == EINTR; + #else +- (sel_ret = select (20, &rfds, 0, 0, &time_out)) < 0 && errno == EINTR; ++ (sel_ret = select (20, &rfds, NULL, NULL, &time_out)) < 0 && errno == EINTR; + #endif + rfds = sel_ptn) + ; +@@ -1084,7 +1086,7 @@ + */ + } + +- if (rfds & pty_bit) ++ if (FD_ISSET(ptyfd, &rfds)) + { + if ((n = read (ptyfd, buf, BUFSIZ)) <= 0) + { +@@ -1116,13 +1118,13 @@ + p += j; + i -= j; + } +- mask = 1 << ttyfd; ++ FD_SET(ttyfd, &mask); + select (32, 0, &mask, 0, 0); + } + pop_cursor (); + } + } +- if (rfds & tty_bit) ++ if (FD_ISSET(ttyfd, &rfds)) + { + if ((n = read (ttyfd, buf, BUFSIZ)) > 0) + { +@@ -1778,7 +1780,7 @@ + { + static unsigned char buf[BUFSIZ]; + int n; +- int rfds; ++ fd_set rfds; + + kk_restore_cursor (); + clr_line_all (); +@@ -1791,7 +1793,7 @@ + write (ptyfd, buf, n); + } + rfds = sel_ptn; +- select (20, &rfds, 0, 0, NULL); ++ select (20, &rfds, NULL, NULL, NULL); + if (rfds & pty_bit) + { + if ((n = read (ptyfd, buf, BUFSIZ)) <= 0) +diff -ru FreeWnn-1.1.1-a017.orig/Xsi/Xwnmo/xwnmo/do_socket.c FreeWnn-1.1.1-a017/Xsi/Xwnmo/xwnmo/do_socket.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Xwnmo/xwnmo/do_socket.c 2000-02-23 18:03:22.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Xwnmo/xwnmo/do_socket.c 2002-11-03 20:25:17.000000000 +0100 +@@ -90,9 +90,9 @@ + XIMCmblk *cblk; + XIMCmblk *cur_cblk = NULL; + +-int *all_socks; +-int *ready_socks; +-static int *dummy1_socks, *dummy2_socks; ++fd_set *all_socks; ++fd_set *ready_socks; ++static fd_set *dummy1_socks, *dummy2_socks; + static int sel_width; + + static int nofile; +@@ -114,9 +114,14 @@ + static int rc = 0; + + #define BINTSIZE (sizeof(int)*8) ++/* + #define sock_set(array,pos) (array[pos/BINTSIZE] |= (1<<(pos%BINTSIZE))) + #define sock_clr(array,pos) (array[pos/BINTSIZE] &= ~(1<<(pos%BINTSIZE))) +-#define sock_tst(array,pos) (array[pos/BINTSIZE] & (1<<(pos%BINTSIZE))) ++#define sock_tst(array,pos) (array[pos/BINTSIZE] & (1<<(pos%BINTSIZE))) ++*/ ++#define sock_set(array,pos) FD_SET(pos,array) ++#define sock_clr(array,pos) FD_CLR(pos,array) ++#define sock_tst(array,pos) FD_ISSET(pos,array) + + extern int read (), write (); + +--- FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/error.c 2002/11/05 14:57:21 1.1 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/error.c 2002/11/05 14:58:12 +@@ -47,7 +47,7 @@ + void + error_exit1 (x, y1, y2, y3, y4, y5) + char *x; +- int y1, y2, y3, y4, y5; ++ long y1, y2, y3, y4, y5; + { + char buf[512]; + +@@ -112,7 +112,7 @@ + void + error1 (x, y1, y2, y3, y4, y5) + register char *x; +- int y1, y2, y3, y4, y5; ++ long y1, y2, y3, y4, y5; + { + char buf[512]; diff --git a/FreeWnn-sighandler.patch b/FreeWnn-sighandler.patch new file mode 100644 index 0000000..eb618b3 --- /dev/null +++ b/FreeWnn-sighandler.patch @@ -0,0 +1,39 @@ +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jserver/de.c Mon Mar 20 17:31:43 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jserver/de.c Tue Aug 29 12:06:47 2000 +@@ -185,6 +185,19 @@ + + char cmd_name[80]; + ++#ifndef NOTFORK ++static void father_sighandler (const int sig) ++{ ++ if (signal(sig, SIG_DFL) == SIG_ERR) ++ _exit (2); ++ ++ if (sig == SIGTERM) ++ _exit(0); ++ else ++ _exit(-1); ++} ++#endif ++ + /* No arguments are used. Only options. */ + int + main (argc, argv) +@@ -228,14 +241,14 @@ + #ifndef NOTFORK + if (fork ()) + { +- signal (SIGCHLD, _exit); ++ signal (SIGCHLD, father_sighandler); + signal (SIGHUP, SIG_IGN); + signal (SIGINT, SIG_IGN); + signal (SIGQUIT, SIG_IGN); + #ifdef SIGTSTP + signal (SIGTSTP, SIG_IGN); + #endif +- signal (SIGTERM, _exit); ++ signal (SIGTERM, father_sighandler); + pause (); + } + #endif /* !NOTFORK */ diff --git a/FreeWnn-uum.patch b/FreeWnn-uum.patch new file mode 100644 index 0000000..ab90e6b --- /dev/null +++ b/FreeWnn-uum.patch @@ -0,0 +1,54 @@ +diff -ur FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/jhlp.c FreeWnn-1.1.1-a017/Xsi/Wnn/uum/jhlp.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/jhlp.c Wed Feb 23 17:08:49 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/jhlp.c Wed Nov 1 19:33:54 2000 +@@ -638,7 +638,7 @@ + #ifdef SYSVR2 + #define index strchr + #endif /* SYSVR2 */ +- extern char *index (); ++/* extern char *index ();*/ + + strcpy (ostr, default_getoptstr); + strcat (ostr, lang_db->getoptstr); +@@ -1720,7 +1720,7 @@ + } + #endif /* defined(uniosu) */ + +-#ifndef sgi ++#if !defined(sgi) && !defined(linux) + ptyname (nmbuf, ptynm, ptyno); + if (chown (nmbuf, 0, 0) == ERROR) + { +diff -ur FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/wnnrc_op.c FreeWnn-1.1.1-a017/Xsi/Wnn/uum/wnnrc_op.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/wnnrc_op.c Wed Feb 23 16:31:45 2000 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/wnnrc_op.c Mon Oct 30 23:42:17 2000 +@@ -133,7 +133,7 @@ + struct passwd *u; + extern struct passwd *getpwnam (); + #if defined(SYSVR2) && !defined(AIXV3) +- extern char *strchr (); ++/* extern char *strchr (); */ + #endif /* defined(SYSVR2) && !defined(AIXV3) */ + + if (*s != '~' && *s != '@') +diff -u FreeWnn-1.1.1-a017.orig/Xsi/makerule.mk.in.~1~ FreeWnn-1.1.1-a017.orig/Xsi/makerule.mk.in +--- FreeWnn-1.1.1-a017.orig/Xsi/makerule.mk.in.~1~ Sun Feb 13 10:15:54 2000 ++++ FreeWnn-1.1.1-a017.orig/Xsi/makerule.mk.in Wed Nov 1 19:49:39 2000 +@@ -90,7 +90,7 @@ + ALLDEFINES = $(INCLUDES) -DFUNCPROTO=15 -DNARROWPROTO $(DEFINES) + CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(ALLDEFINES) + LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES) +-LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) ++LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) -L/usr/lib/termcap + + CCLINK = $(CC) + +@@ -114,7 +114,7 @@ + WNNBINDIR = ${PREFIX}/bin + WNNINCDIR = @includedir@ + WNNLIBDIR = @libdir@ +- WNNTERM_LIB = -ltermcap ++ WNNTERM_LIB = -ltermcap -lcrypt + + PUBDICPLUSSRC = $(IMTOP)/PubdicPlus + WNNCONSDICSRC = $(IMTOP)/Wnn-consortium/dic diff --git a/FreeWnn-warnings.patch b/FreeWnn-warnings.patch new file mode 100644 index 0000000..ff7d222 --- /dev/null +++ b/FreeWnn-warnings.patch @@ -0,0 +1,31 @@ +--- Wnn/etc/msg.c ++++ Wnn/etc/msg.c +@@ -228,7 +228,7 @@ + register struct msg_bd *bd; + if (cd->msg_bd == 0 || cd->msg_cnt == 0) + return (NULL); +- bd = (struct msg_bd *) bsearch (id, cd->msg_bd, cd->msg_cnt, sizeof (struct msg_bd), _search); ++ bd = (struct msg_bd *) bsearch ((void*)id, cd->msg_bd, cd->msg_cnt, sizeof (struct msg_bd), _search); + if (bd == NULL) + return (NULL); + return (bd->msg); +--- Wnn/jlib.V3/jlv3.c ++++ Wnn/jlib.V3/jlv3.c +@@ -341,7 +341,7 @@ + /* READ ONLY SD && hind file is none */ + (js_access (jl_env (buf), fn, 4) != -1) && (js_access (jl_env (buf), fn1, 4) == -1)) + { +- if ((dic_no = jl_dic_add (buf, fn, fn1, WNN_DIC_ADD_NOR, prio, WNN_DIC_RDONLY, WNN_DIC_RW, NULL, NULL, WNN_CREATE, NULL)) < 0) ++ if ((dic_no = jl_dic_add (buf, fn, fn1, WNN_DIC_ADD_NOR, prio, WNN_DIC_RDONLY, WNN_DIC_RW, NULL, NULL, (int (*) (const char *))WNN_CREATE, NULL)) < 0) + return (-1); + if (jl_dic_delete (buf, dic_no) < 0) + return (-1); +@@ -351,7 +351,7 @@ + { + rdonly = WNN_DIC_RDONLY; + } +- if ((dic_no = jl_dic_add (buf, fn, fn1, WNN_DIC_ADD_NOR, prio, rdonly, hrdonly, NULL, NULL, WNN_CREATE, NULL)) < 0) ++ if ((dic_no = jl_dic_add (buf, fn, fn1, WNN_DIC_ADD_NOR, prio, rdonly, hrdonly, NULL, NULL, (int (*) (const char *))WNN_CREATE, NULL)) < 0) + /* pw_d pw_h err mes */ + return (-1); + if (js_dic_info (jl_env (buf), dic_no, &ret) < 0) diff --git a/conflicting-prototypes.patch b/conflicting-prototypes.patch new file mode 100644 index 0000000..713e718 --- /dev/null +++ b/conflicting-prototypes.patch @@ -0,0 +1,112 @@ +diff -ru FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jlib/js.c FreeWnn-1.1.1-a017/Xsi/Wnn/jlib/js.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jlib/js.c 2000-03-02 16:32:39.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jlib/js.c 2005-04-13 14:31:12.000000000 +0200 +@@ -86,7 +86,7 @@ + #ifdef hpux + void *malloc (size_t); + #else +-char *malloc (); ++void *malloc (size_t); + #endif /* hpux */ + + #ifdef SYSVR2 +diff -ru FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jlib.V3/jlv3.c FreeWnn-1.1.1-a017/Xsi/Wnn/jlib.V3/jlv3.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jlib.V3/jlv3.c 2000-02-23 16:55:40.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jlib.V3/jlv3.c 2005-04-13 14:31:12.000000000 +0200 +@@ -58,7 +58,7 @@ + #ifdef SYSVR2 + #include + #else +-extern char *malloc (); ++extern void *malloc (size_t); + #endif + + #include "jllib.h" +diff -ru FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jutil/atod.c FreeWnn-1.1.1-a017/Xsi/Wnn/jutil/atod.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/jutil/atod.c 2000-02-23 16:31:39.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/jutil/atod.c 2005-04-13 14:31:12.000000000 +0200 +@@ -94,7 +94,7 @@ + int tnum = 0; + struct uind2 *uhopter; + +-char *malloc (); ++void *malloc (size_t); + char *hinsi_file_name = NULL; + + +diff -ru FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/history.c FreeWnn-1.1.1-a017/Xsi/Wnn/uum/history.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/history.c 2000-02-23 16:31:43.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/history.c 2005-04-13 14:34:00.000000000 +0200 +@@ -55,7 +55,7 @@ + int + init_history () + { +- char *malloc (); ++ void *malloc (size_t); + int size1; + char *area_pter; + +@@ -93,7 +93,7 @@ + register w_char *wstr; + register int n; + { +- extern char *malloc (); ++ extern void *malloc (size_t); + + if (!history_cunt) + return (0); +diff -ru FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/jhlp.c FreeWnn-1.1.1-a017/Xsi/Wnn/uum/jhlp.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/jhlp.c 2000-02-23 17:08:49.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/jhlp.c 2005-04-13 15:05:29.000000000 +0200 +@@ -125,7 +125,8 @@ + extern char *optarg; + extern int optind; + +-extern char *ttyname (), *malloc (), *getenv (); ++extern char *ttyname (), *getenv (); ++extern void *malloc (size_t); + + static void save_signals (); + static void restore_signals (); +@@ -1351,7 +1352,7 @@ + char *value; + { + extern char **environ; +- char *malloc (); ++ void *malloc (size_t); + char **newenv; + register int i, j; + +diff -ru FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/prologue.c FreeWnn-1.1.1-a017/Xsi/Wnn/uum/prologue.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/prologue.c 2000-02-23 16:31:44.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/prologue.c 2005-04-13 14:31:12.000000000 +0200 +@@ -122,7 +122,7 @@ + int + allocate_areas () + { +- char *malloc (); ++ void *malloc (size_t); + char *area_start; + char *area_pter; + +@@ -267,7 +267,7 @@ + WnnEnv *save_cur_normal_env = NULL, *save_cur_reverse_env = NULL; + int (*yes_no_func) (); + void (*puts_func) (); +- extern char *malloc (); ++ extern void *malloc (size_t); + + if (first == 0) + { +diff -ru FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/termcap.c FreeWnn-1.1.1-a017/Xsi/Wnn/uum/termcap.c +--- FreeWnn-1.1.1-a017.orig/Xsi/Wnn/uum/termcap.c 2000-02-23 16:31:44.000000000 +0100 ++++ FreeWnn-1.1.1-a017/Xsi/Wnn/uum/termcap.c 2005-04-13 14:31:31.000000000 +0200 +@@ -261,7 +261,7 @@ + { + char *name1; + char *c; +- extern char *malloc (); ++ extern void *malloc (size_t); + + if ((name1 = malloc (strlen (name) + 1024)) == NULL) + { diff --git a/fwnn.changes b/fwnn.changes new file mode 100644 index 0000000..1afcc67 --- /dev/null +++ b/fwnn.changes @@ -0,0 +1,174 @@ +------------------------------------------------------------------- +Wed Jan 25 21:36:04 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Sat Jan 14 22:58:29 CET 2006 - schwab@suse.de + +- Don't strip binaries. +- Don't build as root. + +------------------------------------------------------------------- +Fri Oct 21 17:02:08 CEST 2005 - mmj@suse.de + +- fix missing return value + +------------------------------------------------------------------- +Thu Sep 22 14:43:18 CEST 2005 - yxu@suse.de + +- add needed prototypes + +------------------------------------------------------------------- +Wed Jun 15 17:21:43 CEST 2005 - meissner@suse.de + +- Use RPM_OPT_FLAGS. +- Add lots of include files to avoid implicit declarations +- Use system getopt and bsearch. +- Fixed bad atoi() call spotted by -Wall + +------------------------------------------------------------------- +Wed Apr 13 15:15:47 CEST 2005 - mfabian@suse.de + +- make it build on STABLE again: conflicting-prototypes.patch + +------------------------------------------------------------------- +Tue Jun 8 16:19:33 CEST 2004 - ro@suse.de + +- get rid of some compiler warnings + +------------------------------------------------------------------- +Mon Sep 15 17:42:33 CEST 2003 - mfabian@suse.de + +- Bugzilla #30921: /var/lib/wnn should be owned by user "wnn" + for all subpackages. + +------------------------------------------------------------------- +Mon Aug 18 12:06:22 CEST 2003 - mfabian@suse.de + +- Use new stop_on_removal/restart_on_upate macros + +------------------------------------------------------------------- +Mon Jun 16 16:43:56 CEST 2003 - mfabian@suse.de + +- fix "directory not owned by any package". + +------------------------------------------------------------------- +Sun Nov 3 19:05:19 CET 2002 - mfabian@suse.de + +- Bug Id #17416: fix usage of socket API to make /usr/bin/jserver + work on s390x. Thanks to for help. + +------------------------------------------------------------------- +Fri Sep 13 17:53:57 CEST 2002 - mfabian@suse.de + +- change "network route named" -> "$network $named" in + "# Required-Start:". + +------------------------------------------------------------------- +Thu Aug 1 12:35:59 CEST 2002 - mfabian@suse.de + +- add %insserv_prereq %fillup_prereq to Prereq: + +------------------------------------------------------------------- +Wed Jul 24 18:28:27 CEST 2002 - mfabian@suse.de + +- Don't parse rc.config in init scripts +- change usage of useradd in pre script to comply with + the package howto +- move home-dir into fwnncom sub package (fwnncom is required by + all other *wnn* packages). + +------------------------------------------------------------------- +Tue Jul 2 11:28:22 CEST 2002 - ro@suse.de + +- added home-dir to base package + +------------------------------------------------------------------- +Thu Apr 11 21:56:48 CEST 2002 - mfabian@suse.de + +- use %{_libdir} and add FreeWnn-lib64.patch from + +------------------------------------------------------------------- +Thu Jan 10 12:17:20 CET 2002 - egmont@suselinux.hu + +- changed /sbin/init.d to /etc/init.d in init script comments + +------------------------------------------------------------------- +Fri Dec 7 21:53:53 CET 2001 - mfabian@suse.de + +- get rid of START_* variables in /etc/rc.config: + use new macros fill_up_and_insserv and insserv_cleanup and + remove testing for START_* variables from init scripts. + +------------------------------------------------------------------- +Thu Sep 6 15:34:45 CEST 2001 - mfabian@suse.de + +- set START_FREE_TWNN="no", START_FREE_KWNN="no", + START_FREE_CWNN="no", + +------------------------------------------------------------------- +Tue Sep 4 20:39:40 CEST 2001 - schwab@suse.de + +- Add prototypes for C++, constify. + +------------------------------------------------------------------- +Mon May 7 14:25:46 CEST 2001 - mfabian@suse.de + +- bzip2 sources + +------------------------------------------------------------------- +Thu May 3 18:27:46 CEST 2001 - mfabian@suse.de + +- make init scripts comply with latest LSB spec + +------------------------------------------------------------------- +Tue Dec 5 13:37:53 CET 2000 - schwab@suse.de + +- Fix missing declarations. + +------------------------------------------------------------------- +Tue Nov 28 01:04:58 CET 2000 - mfabian@suse.de + +- forgot to change the links to the init scripts to /etc/init.d + fixed. + +------------------------------------------------------------------- +Mon Nov 27 22:31:35 CET 2000 - mfabian@suse.de + +- removed sockets before starting the FreeWnn servers. + sometimes these sockets remained after killing a FreeWnn server, + which prevented the restart. + +------------------------------------------------------------------- +Mon Nov 27 20:29:32 CET 2000 - mfabian@suse.de + +- added "route named" to "Required-Start:" +- moved init scripts to /etc/init.d + +------------------------------------------------------------------- +Fri Nov 24 15:27:23 CET 2000 - mfabian@suse.de + +- change to new init script mechanism: + rewrote the init scripts to use insserv to handle links to + init scripts. + +------------------------------------------------------------------- +Wed Nov 1 21:56:48 CET 2000 - mfabian@suse.de + +- made the command line client "uum" work. + +------------------------------------------------------------------- +Mon Oct 30 12:33:24 CET 2000 - mfabian@suse.de + +- moved all manpages into the fwnncom subpackage + +------------------------------------------------------------------- +Fri Oct 27 16:01:06 CEST 2000 - bk@suse.de + +- fixed startproc call, useradd and server permissions + +------------------------------------------------------------------- +Wed Oct 25 20:11:00 CEST 2000 - mfabian@suse.de + +- new package: fwnn (FreeWnn, Version 1.1.1-a017) diff --git a/fwnn.spec b/fwnn.spec new file mode 100644 index 0000000..91e4807 --- /dev/null +++ b/fwnn.spec @@ -0,0 +1,733 @@ +# +# spec file for package fwnn (Version 1.1.1a017) +# +# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany. +# This file and all modifications and additions to the pristine +# package are under the same license as the package itself. +# +# Please submit bugfixes or comments via http://bugs.opensuse.org +# + +# norootforbuild + +Name: fwnn +BuildRequires: termcap +%define base_version 1.1.1 +%define alpha_version a017 +License: GPL +Group: System/I18n/Japanese +Requires: fwnncom +Conflicts: wnn6 +Prereq: /usr/sbin/useradd %insserv_prereq %fillup_prereq +Autoreqprov: on +Version: 1.1.1a017 +Release: 549 +URL: http://www.freewnn.org +BuildRoot: %{_tmppath}/%{name}-%{version}-build +Summary: FreeWnn Japanese Input System - Server only +Source: ftp://ftp.etl.go.jp/pub/FreeWnn/alpha/FreeWnn-%{base_version}-%{alpha_version}.tar.bz2 +Source1: rcfwnn +Source2: rcfcwnn +Source3: rcftwnn +Source4: rcfkwnn +Patch0: FreeWnn-fsstnd.patch +Patch1: FreeWnn-ja.patch +Patch2: FreeWnn-noroot.patch +Patch3: FreeWnn-sighandler.patch +Patch4: FreeWnn-uum.patch +Patch5: FreeWnn-%{base_version}-%{alpha_version}.dif +Patch6: FreeWnn-lib64.patch +Patch7: FreeWnn-s390x.patch +Patch8: FreeWnn-warnings.patch +Patch9: conflicting-prototypes.patch +Patch10: FreeWnn-fixes.patch +Patch11: FreeWnn-include.patch +Patch12: FreeWnn-returnvalue.diff +# Summary(ja): FreeWnn ユ茯ュ激鴻 - 泣若 +# %description -l ja +# +# 鐚件鐔鐚鐚鐚 篋遵ぇ絖恰綣鋍腓障綣鋍腓障≪鴻 +# c怨冴 1987綛眼絎 UNIX筝羲√紊激鴻 +# сFreeWnn 吾с冴膓障 +# (http://www.freewnn.org) +# +# +# Watashino Namaeha Nakanodesu鐚腱筝с鐚腴筝紊 +# с 鐚綵腴筝紊с紙c鐚鐚激鴻 +# с膀絖c篁 鐚h茯 吾 +# 純若鴻潟若≧ч絽紊若鴻若激 割 +# 篏帥憜сUNIX筝羲√紊激鴻 < +# 鴻帥潟若鐚篋絎筝罔羣鐚c 筝劫彰ゃ≪潟 +# 泣若劫。с 泣若鐚jserver鐚 X Window +# System 筝ュ激鴻сxwnmo 羲√紊潟吾潟 +# Nemacs/ Mule 障鐚egg鐚 羲√紊潟吾潟篏帥 +# +# +# 宴若吾ユ茯ュ泣若水障障 + +%description +FreeWnn is a Kana-Kanji translation system, originally developed by a +joint project made up of Kyoto University, OMRON Corporation [formerly +known as Tateishi Electronics Co.], and ASTEC Inc. Further development +and maintenance is now done by the "FreeWnn Project" +(http://www.freewnn.org). + +The name "Wnn", is an acronym for the Japanese sentence "Watashino +Namaeha Nakanodesu" (literally, it means "my name is Nakano."), and is +derived from a goal of the project: to develop a system powerful enough +to translate a whole sentence like that at once. The source code has +been written in C, and is freely distributed. Consequently, Wnn spread +widely among workstation platforms, and became a de-facto standard as a +Kana-Kanji translation system for UNIX operating systems. + +Wnn works in a client-server manner. The server portion of Wnn, or +jserver, is used as a Kana-Kanji translation engine for clients like +"xwnmo" and "kinput2" (input systems for the X Window System), or for +clients like "Egg", which are part of Mule (MUlti-Lingual Emacs) and +XEmacs. + +This package contains only the Japanese server. + + + +%package -n fwnndev +Group: Development/Libraries/C and C++ +Summary: Development Library and Header Files for FreeWnn +# Summary(ja): FreeWnn 冴ゃ<ゃ +# %description -n fwnndev -l ja +# +# 宴若吾 FreeWnn ユ茯ュ client 潟潟ゃ +# 綽荀<ゃゃ障障 + +%description -n fwnndev +This package contains the header files and libraries for building +client programs which use FreeWnn for Japanese input. + + + +%package -n fwnncom +Summary: Common Files for FreeWnn +Group: System/I18n/Japanese +Prereq: /usr/sbin/useradd + +%description -n fwnncom +This package includes files you need to run FreeWnn, Free cWnn, Free +tWnn, or Free kWnn. Install this package if you will be using any part +of the Wnn System. + + + +%package -n fcwnn +Group: System/I18n/Chinese +Requires: fwnncom, fcwnncom +Prereq: /usr/sbin/useradd fcwnncom +Summary: Free cWnn Chinese Input System (Mainland China) +# Summary(ja): Free cWnn 筝処ュ激鴻 (筝篋堺怨) +# %description -n fcwnn -l ja +# +# Free cWnn 筝処ュ激鴻 (筝篋堺怨) + +%description -n fcwnn +Free cWnn Chinese Input System (mainland China). + + + +%package -n fcwnncom +Summary: Free cWnn/tWnn Chinese Input System Common Files (Mainland and Taiwan) +Group: System/I18n/Chinese +Requires: fwnncom +Prereq: /usr/sbin/useradd + +%description -n fcwnncom +This package includes the common files for the Free cWnn and Free tWnn +Chinese Input Systems. Free cWnn is for mainland Chinese and free tWnn +is for Taiwan-Chinese. + + + +%package -n fcwnndev +Group: Development/Libraries/C and C++ +Summary: Development Libraries and Header Files for Free cWnn +# Summary(ja): Free cWnn 冴ゃ<ゃ +# %description -n fcwnndev -l ja +# +# 宴若吾 Free cWnn 違潟潟ゃ +# 綽荀<ゃゃс障 + +%description -n fcwnndev +This package contains the header files and libraries for building +client programs that use the Chinese Input System, Free cWnn. + + + +%package -n ftwnn +Summary: Free tWnn Chinese Input System (Taiwan) +Group: System/I18n/Chinese +Requires: fwnncom, fcwnncom +Prereq: /usr/sbin/useradd, fcwnncom +# Summary(ja): Free tWnn 筝処ュ激鴻 (佀江) +# %description -n ftwnn -l ja +# +# Free tWnn 筝処ュ激鴻 (佀江) + +%description -n ftwnn +Free tWnn Chinese input system (Taiwan). + + + +%package -n fkwnn +Summary: Free kWnn Korean Input System +Group: System/I18n/Korean +Requires: fwnncom +Prereq: /usr/sbin/useradd +# Summary(ja): Free kWnn 処ュ激鴻 +# %description -n fkwnn -l ja +# +# Free kWnn 処ュ激鴻 + +%description -n fkwnn +Free kWnn Korean input system. + + + +%package -n fkwnndev +Group: Development/Libraries/C and C++ +Summary: Development Libraries and Header Files for Free kWnn +# Summary(ja): Free kWnn 冴ゃ<ゃ +# %description -n fkwnndev -l ja +# +# 宴若吾 Free kWnn 違潟潟ゃ +# 綽荀<ゃゃс障 + +%description -n fkwnndev +This package contains the header files and libraries for building +client programs that use the Korean Input System, Free kWnn. + + + +%prep +###################################################################### +# package xwnmo +# I don't know how to build xwnmo. Will try that later ... +# %package -n xwnmo +# Requires: wnn +# Summary: xwnmo - Input Manager for the X11 Window System +# Summary(ja): xwnmo - 鐚吾c潟祉ゃ潟若吾c +# Group: Applications/X11 +# +# %description -n xwnmo +# +# Xwnmo is a input manager for the Input Method of the X Window System. +# It is based on the X11 Input Method Specifications. It provides a +# multi-language input environment for multiple clients in the X11 +# Window System. Clients can connect to it by using the XIM library. The +# conversion engine xwnmo uses the internationalized Wnn. It selects +# the conversion server in accordance with language of clients. +# +# %description -n xwnmo -l ja +# +# xwnmo 鐚吾c潟祉ゃ潟<純ゃ潟祉若吾c若 +# X Window System, Version 11 Input Method Specifications 若鴻 +# 篏障 xwnmo 鐚吾c潟茲違ゃ≪潟絲障紊 +# 処ュ医箴障ゃ≪潟鐚醐而鐚ゃ篏帥 +# xwnmo 篏睡с障紊潟吾潟初鐚件鐔篏睡 +# 障ゃ≪潟潟蚊若吾綽紊泣若御障 +%setup -q -n FreeWnn-%{base_version}-%{alpha_version}/Xsi +%patch0 -p2 +%patch1 -p2 +%patch2 -p2 +%patch3 -p2 +%patch4 -p2 +%patch5 -p1 +%patch6 -p2 +%patch7 -p2 -b .s390x +%patch8 +%patch9 -p2 +%patch10 -p2 +%patch11 -p2 +%patch12 +#%setup -b 1 -n Xsi # add include-files for Xwnmo +# SuSE setlocale patch, try to set LC_CTYPE if LC_ALL fails (Xwnmo) and +#...................................................................... +# %patch2 -p1 +# Trying to make Xwnmo work... +#.................................................................. +# %patch3 -p1 + +%build +# update config.{guess,sub} +%{?suse_update_config} +./configure --prefix=/usr \ + --libdir=%{_libdir} \ + --mandir=%{_mandir} \ + --infodir=%{_infodir} \ + %{_target_cpu}-suse-linux-gnu +make CCOPTIONS="$RPM_OPT_FLAGS" +pushd Wnn/uum +make CCOPTIONS="$RPM_OPT_FLAGS" +popd + +%install +make install DESTDIR=$RPM_BUILD_ROOT INSTPGMFLAGS= +make install.man DESTDIR=$RPM_BUILD_ROOT +pushd Wnn/uum +make install DESTDIR=$RPM_BUILD_ROOT INSTPGMFLAGS= +popd +#---------------------------------------------------------------------- +# move Japanese man pages to their correct destination: +# (the above 'make install.man' command installs Japanese AND English +# manpages, but unfortunately all of them into the same directory. +# The Japanese manpages should be in a subdirectory 'ja' +# (or maybe ja_JP.eucJP), therefore I move them here: +for i in 1 2 3 4 5 6 7 8 9 ; do + mkdir -p $RPM_BUILD_ROOT/%{_mandir}/ja/man$i +done +for i in atod.1 atof.1 dtoa.1 jserver.1 oldatonewa.1 uum.1 wddel.1 wdreg.1 \ + wnnkill.1 wnnstat.1 wnntouch.1 +do + mv $RPM_BUILD_ROOT/%{_mandir}/man1/$i $RPM_BUILD_ROOT/%{_mandir}/ja/man1/ +done +mv $RPM_BUILD_ROOT/%{_mandir}/man3/* $RPM_BUILD_ROOT/%{_mandir}/ja/man3/ +for i in 2a_ctrl.4 2b_romkana.4 cvt_key_tbl.4 fzk.data.4 fzk.u.4 \ + hinsi_data.4 jserverrc.4 mode.4 serverdefs.4 ujis_dic.4 \ + uumkey.4 uumrc.4 wnnenvrc.4 +do + mv $RPM_BUILD_ROOT/%{_mandir}/man4/$i $RPM_BUILD_ROOT/%{_mandir}/ja/man4/ +done +for i in pubdic.5 usr_dic.5 +do + mv $RPM_BUILD_ROOT/%{_mandir}/man5/$i $RPM_BUILD_ROOT/%{_mandir}/ja/man5/ +done +#---------------------------------------------------------------------- +# Make sure directories for of boot script installation exist: +mkdir -p $RPM_BUILD_ROOT/etc/init.d +mkdir -p $RPM_BUILD_ROOT/var/adm/fillup-templates +mkdir -p $RPM_BUILD_ROOT/usr/sbin +#---------------------------------------------------------------------- +# Install boot scripts: +install -m 755 $RPM_SOURCE_DIR/rcfwnn $RPM_BUILD_ROOT/etc/init.d/fwnn +install -m 755 $RPM_SOURCE_DIR/rcfcwnn $RPM_BUILD_ROOT/etc/init.d/fcwnn +install -m 755 $RPM_SOURCE_DIR/rcftwnn $RPM_BUILD_ROOT/etc/init.d/ftwnn +install -m 755 $RPM_SOURCE_DIR/rcfkwnn $RPM_BUILD_ROOT/etc/init.d/fkwnn +#---------------------------------------------------------------------- +# Make symbolic links +for i in fwnn fcwnn ftwnn fkwnn ; do + ( cd $RPM_BUILD_ROOT/usr/sbin; ln -sf ../../etc/init.d/$i rc$i ) +done +ln -sf /var/lib/wnn/ja/dic ${RPM_BUILD_ROOT}/etc/FreeWnn/ja/dic +ln -sf /var/lib/wnn/zh_CN/dic ${RPM_BUILD_ROOT}/etc/FreeWnn/zh_CN/dic +ln -sf /var/lib/wnn/zh_TW/dic ${RPM_BUILD_ROOT}/etc/FreeWnn/zh_TW/dic +ln -sf /var/lib/wnn/ko_KR/dic ${RPM_BUILD_ROOT}/etc/FreeWnn/ko_KR/dic +#---------------------------------------------------------------------- + +%clean +[ "$RPM_BUILD_ROOT" != "/" ] && [ -d $RPM_BUILD_ROOT ] && rm -rf $RPM_BUILD_ROOT; + +%pre -n fwnn +/usr/sbin/useradd -r -o -g root -u 66 -s /bin/false -c "Wnn System Account" -d /var/lib/wnn wnn 2> /dev/null || : + +%post -n fwnn +# touch all public dictionary files: +chroot . usr/bin/wnntouch var/lib/wnn/ja/dic/gerodic/g-jinmei.dic +chroot . usr/bin/wnntouch var/lib/wnn/ja/dic/pubdic/*.* +# Create symbolic runlevel links: +%{fillup_and_insserv -sy fwnn START_FREE_WNN} + +%preun -n fwnn +%stop_on_removal fwnn + +%postun -n fwnn +%restart_on_update fwnn +%insserv_cleanup +#%post -n fwnndev +# if you make libwnn.so, unomment it. +#/sbin/ldconfig + +%pre -n fwnncom +/usr/sbin/useradd -r -o -g root -u 66 -s /bin/false -c "Wnn System Account" -d /var/lib/wnn wnn 2> /dev/null || : + +%pre -n fcwnn +/usr/sbin/useradd -r -o -g root -u 66 -s /bin/false -c "Wnn System Account" -d /var/lib/wnn wnn 2> /dev/null || : + +%preun -n fcwnn +%stop_on_removal fcwnn + +%post -n fcwnn +# touch all public dictionary files: +chroot . usr/bin/cwnntouch var/lib/wnn/zh_CN/dic/sys/*.* +# Create symbolic run level links: +%{fillup_and_insserv -s fcwnn START_FREE_CWNN} + +%postun -n fcwnn +%restart_on_update fcwnn +%insserv_cleanup +#%postun -n fcwnndev +# if you make libwnn.so, unomment it. +#/sbin/ldconfig + +%pre -n ftwnn +/usr/sbin/useradd -r -o -g root -u 66 -s /bin/false -c "Wnn System Account" -d /var/lib/wnn wnn 2> /dev/null || : + +%preun -n ftwnn +%stop_on_removal ftwnn + +%post -n ftwnn +# touch all public dictionary files: +chroot . usr/bin/cwnntouch var/lib/wnn/zh_TW/dic/sys/*.* +# Create symbolic run level links: +%{fillup_and_insserv -s ftwnn START_FREE_TWNN} + +%postun -n ftwnn +%restart_on_update ftwnn +%insserv_cleanup + +%pre -n fkwnn +/usr/sbin/useradd -r -o -g root -u 66 -s /bin/false -c "Wnn System Account" -d /var/lib/wnn wnn 2> /dev/null || : + +%preun -n fkwnn +%stop_on_removal fkwnn + +%post -n fkwnn +# touch all public dictionary files: +chroot . usr/bin/kwnntouch var/lib/wnn/ko_KR/dic/sys/*.* +# Create symbolic run level links: +%{fillup_and_insserv -s fkwnn START_FREE_KWNN} + +%postun -n fkwnn +%restart_on_update fkwnn +%insserv_cleanup +#%postun -n fkwnndev +# if you make libwnn.so, unomment it. +#/sbin/ldconfig + +%files +%defattr(-,root,root) +%config /etc/init.d/fwnn +%config /usr/sbin/rcfwnn +%attr(-,wnn,root) /usr/bin/atod +%attr(-,wnn,root) /usr/bin/dtoa +%attr(-,wnn,root) /usr/bin/oldatonewa +%attr(-,wnn,root) /usr/bin/wdreg +%attr(-,wnn,root) /usr/bin/wnnstat +%attr(-,wnn,root) /usr/bin/atof +%attr(755,wnn,root) /usr/bin/jserver +%attr(-,wnn,root) /usr/bin/wddel +%attr(-,wnn,root) /usr/bin/wnnkill +%attr(-,wnn,root) /usr/bin/uum +%attr(-,wnn,root) /usr/bin/wnntouch +%dir %attr(-,wnn,root) /var/lib/wnn/ +%dir %attr(-,wnn,root) /var/lib/wnn/ja/ +%attr(-,wnn,root) /var/lib/wnn/ja/dic +%dir /etc/FreeWnn/ja/ +/etc/FreeWnn/ja/dic +%config /etc/FreeWnn/ja/hinsi.data +%config /etc/FreeWnn/ja/jserverrc +%config /etc/FreeWnn/ja/libwnn.msg +%config /etc/FreeWnn/ja/rk +%config /etc/FreeWnn/ja/rk.vi +%config /etc/FreeWnn/ja/uum.msg +%config /etc/FreeWnn/ja/uumkey +%config /etc/FreeWnn/ja/uumkey.omr +%config /etc/FreeWnn/ja/uumkey_e +%config /etc/FreeWnn/ja/uumrc +%config /etc/FreeWnn/ja/uumrc.omr +%config /etc/FreeWnn/ja/uumrc.rev +%config /etc/FreeWnn/ja/uumrc_e +%config /etc/FreeWnn/ja/uumrc_vi +%config /etc/FreeWnn/ja/wnnenvrc +%config /etc/FreeWnn/ja/wnnenvrc.omr +%config /etc/FreeWnn/ja/wnnenvrc.rem +%config /etc/FreeWnn/ja/wnnenvrc.rev +%config /etc/FreeWnn/ja/wnnenvrc_R +%config /etc/FreeWnn/ja/wnnenvrc_R.omr +%config /etc/FreeWnn/ja/wnnenvrc_R.rem +%config /etc/FreeWnn/ja/wnnstat.msg +%dir /etc/FreeWnn/lt_LN/ +/etc/FreeWnn/lt_LN/rk +%config /etc/FreeWnn/lt_LN/uum.msg +%config /etc/FreeWnn/lt_LN/uumkey +%config /etc/FreeWnn/lt_LN/uumkey_e +%config /etc/FreeWnn/lt_LN/uumrc + +%files -n fwnndev +%defattr(-,root,root) +%dir /usr/include/wnn/ +/usr/include/wnn/* +%{_libdir}/libjd.a +%{_libdir}/libwnn.a + +%files -n fwnncom +%defattr(-,root,root) +%doc CONTRIBUTORS COPYRIGHT COPYRIGHT-j ChangeLog ChangeLog.old INSTALL +%doc olddoc/ Wnn/manual/ Wnn/manual.en/ +%doc cWnn/manual cWnn/manual.en +%doc %{_mandir}/man?/* +%dir %{_mandir}/ja/ +%dir %{_mandir}/ja/*/ +%doc %{_mandir}/ja/man?/* +%dir %attr(-,wnn,root) /var/lib/wnn +%dir /etc/FreeWnn/ +%config /etc/FreeWnn/cvt_key_empty +%config /etc/FreeWnn/cvt_key_tbl +%config /etc/FreeWnn/cvt_key_tbl.ST +%config /etc/FreeWnn/cvt_key_tbl.gm +%config /etc/FreeWnn/cvt_key_tbl.kt +%config /etc/FreeWnn/cvt_key_tbl.mv +%config /etc/FreeWnn/cvt_key_tbl.vt +%config /etc/FreeWnn/serverdefs + +%files -n fcwnn +%defattr(-,root,root) +%config /etc/init.d/fcwnn +%config /usr/sbin/rcfcwnn +%attr(755,wnn,root) /usr/bin/cserver +%config /etc/FreeWnn/zh_CN/cixing.data +%config /etc/FreeWnn/zh_CN/cserverrc +/etc/FreeWnn/zh_CN/dic +%dir %attr(-,wnn,root) /var/lib/wnn/ +%dir %attr(-,wnn,root) /var/lib/wnn/zh_CN/ +%attr(-,wnn,root)/var/lib/wnn/zh_CN/dic +%config /etc/FreeWnn/zh_CN/libwnn.msg +%dir /etc/FreeWnn/ +%dir /etc/FreeWnn/zh_CN/ +/etc/FreeWnn/zh_CN/rk +/etc/FreeWnn/zh_CN/rk_p +/etc/FreeWnn/zh_CN/rk_z +/etc/FreeWnn/zh_CN/uum.msg +/etc/FreeWnn/zh_CN/uumkey +/etc/FreeWnn/zh_CN/uumkey_e +/etc/FreeWnn/zh_CN/uumkey_p +%config /etc/FreeWnn/zh_CN/uumrc +%config /etc/FreeWnn/zh_CN/uumrc_p +%config /etc/FreeWnn/zh_CN/uumrc_z +%config /etc/FreeWnn/zh_CN/wnnenvrc +%config /etc/FreeWnn/zh_CN/wnnenvrc_Qi +%config /etc/FreeWnn/zh_CN/wnnenvrc_QiR +%config /etc/FreeWnn/zh_CN/wnnenvrc_R +%config /etc/FreeWnn/zh_CN/wnnenvrc_Wu +%config /etc/FreeWnn/zh_CN/wnnenvrc_WuR +%config /etc/FreeWnn/zh_CN/wnnstat.msg + +%files -n fcwnncom +%defattr(-,root,root) +/usr/bin/catod +/usr/bin/catof +/usr/bin/cdtoa +/usr/bin/cwddel +/usr/bin/cwdreg +/usr/bin/cwnnkill +/usr/bin/cwnnstat +/usr/bin/cwnntouch + +%files -n fcwnndev +%defattr(-,root,root) +%dir /usr/include/cwnn/ +/usr/include/cwnn/* +%{_libdir}/libcwnn.a + +%files -n ftwnn +%defattr(-,root,root) +%config /etc/init.d/ftwnn +%config /usr/sbin/rcftwnn +%attr(755,wnn,root) /usr/bin/tserver +%config /etc/FreeWnn/zh_TW/cixing.data +/etc/FreeWnn/zh_TW/dic +%dir %attr(-,wnn,root) /var/lib/wnn/ +%dir %attr(-,wnn,root) /var/lib/wnn/zh_TW/ +%attr(-,wnn,root) /var/lib/wnn/zh_TW/dic +%config /etc/FreeWnn/zh_TW/libwnn.msg +%dir /etc/FreeWnn/ +%dir /etc/FreeWnn/zh_TW/ +/etc/FreeWnn/zh_TW/rk +/etc/FreeWnn/zh_TW/rk_p +/etc/FreeWnn/zh_TW/rk_z +%config /etc/FreeWnn/zh_TW/tserverrc +%config /etc/FreeWnn/zh_TW/uum.msg +%config /etc/FreeWnn/zh_TW/uumkey +%config /etc/FreeWnn/zh_TW/uumkey_e +%config /etc/FreeWnn/zh_TW/uumkey_p +%config /etc/FreeWnn/zh_TW/uumrc +%config /etc/FreeWnn/zh_TW/uumrc_p +%config /etc/FreeWnn/zh_TW/uumrc_z +%config /etc/FreeWnn/zh_TW/wnnenvrc +%config /etc/FreeWnn/zh_TW/wnnenvrc_R +%config /etc/FreeWnn/zh_TW/wnnstat.msg + +%files -n fkwnn +%defattr(-,root,root) +%config /etc/init.d/fkwnn +%config /usr/sbin/rcfkwnn +%attr(755,wnn,root) /usr/bin/kserver +/usr/bin/katod +/usr/bin/katof +/usr/bin/kdtoa +/usr/bin/kwddel +/usr/bin/kwdreg +/usr/bin/kwnnkill +/usr/bin/kwnnstat +/usr/bin/kwnntouch +%dir /etc/FreeWnn/ +%dir /etc/FreeWnn/ko_KR/ +/etc/FreeWnn/ko_KR/dic +%dir %attr(-,wnn,root) /var/lib/wnn/ +%dir %attr(-,wnn,root) /var/lib/wnn/ko_KR/ +%attr(-,wnn,root) /var/lib/wnn/ko_KR/dic +%config /etc/FreeWnn/ko_KR/hinsi.data +%config /etc/FreeWnn/ko_KR/kserverrc +%config /etc/FreeWnn/ko_KR/libwnn.msg +/etc/FreeWnn/ko_KR/rk +%config /etc/FreeWnn/ko_KR/uum.msg +%config /etc/FreeWnn/ko_KR/uumkey +%config /etc/FreeWnn/ko_KR/uumrc +%config /etc/FreeWnn/ko_KR/wnnenvrc +%config /etc/FreeWnn/ko_KR/wnnenvrc_R +%config /etc/FreeWnn/ko_KR/wnnstat.msg + +%files -n fkwnndev +%defattr(-,root,root) +%dir /usr/include/kwnn/ +/usr/include/kwnn/* +%{_libdir}/libkwnn.a +# I don't know how to build xwnmo. Will try that later ... +# %files -n xwnmo +# %doc Xwnmo/manual Xwnmo/manual.en Xwnmo/README Xwnmo/README.j +# %doc Xwnmo/X11R6/README Xwnmo/X11R6/include/README +# %doc Xwnmo/xjutil/README Xwnmo/xjutil/README.j Xwnmo/xwnmo/README +# %doc Xwnmo/xwnmo/README.j Xwnmo/xwnmo/SEP_README Xwnmo/xwnmo/SEP_README.j +# /usr/X11R6/lib/X11/app-defaults/Xwnmo +# /usr/X11R6/bin/xwnmo +# /usr/X11R6/bin/killxwnmo +# /usr/X11R6/bin/xjutil +# /usr/X11R6/man/ja_JP.ujis/man1/xwnmo.1.gz +# /usr/X11R6/man/ja_JP.ujis/man1/ximrc.1.gz +# /usr/X11R6/man/ja_JP.ujis/man1/ximconf.1.gz +# /usr/X11R6/man/ja_JP.ujis/man1/cvt_fun_tbl.1.gz +# /usr/X11R6/man/ja_JP.ujis/man1/cvt_meta_tbl.1.gz +# /usr/X11R6/man/ja_JP.ujis/man1/killxwnmo.1.gz +# /usr/X11R6/man/ja_JP.ujis/man1/cvt_xim_tbl.1.gz +# /usr/X11R6/man/ja_JP.ujis/man1/xjutil.1.gz +# /usr/X11R6/man/man1/xwnmo.1.gz +# /usr/X11R6/man/man1/ximrc.1.gz +# /usr/X11R6/man/man1/ximconf.1.gz +# /usr/X11R6/man/man1/cvt_fun_tbl.1.gz +# /usr/X11R6/man/man1/cvt_meta_tbl.1.gz +# /usr/X11R6/man/man1/killxwnmo.1.gz +# /usr/X11R6/man/man1/cvt_xim_tbl.1.gz +# /usr/X11R6/man/man1/xjutil.1.gz +# /var/lib/wnn/ja_JP/uumrc.xim +# /var/lib/wnn/ja_JP/uumrc_vi.xim +# /var/lib/wnn/ja_JP/uumrc_e.xim +# /var/lib/wnn/ja_JP/uumkey.xim +# /var/lib/wnn/ja_JP/uumkey_v.xim +# /var/lib/wnn/ja_JP/uumkey_e.xim +# /var/lib/wnn/ja_JP/xim.msg +# /var/lib/wnn/ja_JP/xjutil.msg +# /var/lib/wnn/lt_LN/uumrc.xim +# /var/lib/wnn/lt_LN/uumkey.xim +# /var/lib/wnn/lt_LN/xim.msg +# /var/lib/wnn/zh_CN/uumrc.xim +# /var/lib/wnn/zh_CN/uumrc_p.xim +# /var/lib/wnn/zh_CN/uumrc_z.xim +# /var/lib/wnn/zh_CN/uumkey.xim +# /var/lib/wnn/zh_CN/uumkey_p.xim +# /var/lib/wnn/zh_CN/xim.msg +# /var/lib/wnn/zh_CN/xjutil.msg +# /var/lib/wnn/zh_TW/uumrc.xim +# /var/lib/wnn/zh_TW/uumrc_p.xim +# /var/lib/wnn/zh_TW/uumrc_z.xim +# /var/lib/wnn/zh_TW/uumkey.xim +# /var/lib/wnn/zh_TW/uumkey_p.xim +# /var/lib/wnn/zh_TW/xim.msg +# /var/lib/wnn/zh_TW/xjutil.msg +# /var/lib/wnn/ko_KR/uumrc.xim +# /var/lib/wnn/ko_KR/uumkey.xim +# /var/lib/wnn/ko_KR/xim.msg +# /var/lib/wnn/ko_KR/xjutil.msg +# %config /var/lib/wnn/ximconf +# %config /var/lib/wnn/ximrc +# %config /var/lib/wnn/ximrc_vi +# %config /var/lib/wnn/cvt_xim_tbl + +%changelog -n fwnn +* Wed Jan 25 2006 - mls@suse.de +- converted neededforbuild to BuildRequires +* Sat Jan 14 2006 - schwab@suse.de +- Don't strip binaries. +- Don't build as root. +* Fri Oct 21 2005 - mmj@suse.de +- fix missing return value +* Thu Sep 22 2005 - yxu@suse.de +- add needed prototypes +* Wed Jun 15 2005 - meissner@suse.de +- Use RPM_OPT_FLAGS. +- Add lots of include files to avoid implicit declarations +- Use system getopt and bsearch. +- Fixed bad atoi() call spotted by -Wall +* Wed Apr 13 2005 - mfabian@suse.de +- make it build on STABLE again: conflicting-prototypes.patch +* Tue Jun 08 2004 - ro@suse.de +- get rid of some compiler warnings +* Mon Sep 15 2003 - mfabian@suse.de +- Bugzilla #30921: /var/lib/wnn should be owned by user "wnn" + for all subpackages. +* Mon Aug 18 2003 - mfabian@suse.de +- Use new stop_on_removal/restart_on_upate macros +* Mon Jun 16 2003 - mfabian@suse.de +- fix "directory not owned by any package". +* Sun Nov 03 2002 - mfabian@suse.de +- Bug Id #17416: fix usage of socket API to make /usr/bin/jserver + work on s390x. Thanks to for help. +* Fri Sep 13 2002 - mfabian@suse.de +- change "network route named" -> "$network $named" in + "# Required-Start:". +* Thu Aug 01 2002 - mfabian@suse.de +- add %%insserv_prereq %%fillup_prereq to Prereq: +* Wed Jul 24 2002 - mfabian@suse.de +- Don't parse rc.config in init scripts +- change usage of useradd in pre script to comply with + the package howto +- move home-dir into fwnncom sub package (fwnncom is required by + all other *wnn* packages). +* Tue Jul 02 2002 - ro@suse.de +- added home-dir to base package +* Thu Apr 11 2002 - mfabian@suse.de +- use %%{_libdir} and add FreeWnn-lib64.patch from +* Thu Jan 10 2002 - egmont@suselinux.hu +- changed /sbin/init.d to /etc/init.d in init script comments +* Fri Dec 07 2001 - mfabian@suse.de +- get rid of START_* variables in /etc/rc.config: + use new macros fill_up_and_insserv and insserv_cleanup and + remove testing for START_* variables from init scripts. +* Thu Sep 06 2001 - mfabian@suse.de +- set START_FREE_TWNN="no", START_FREE_KWNN="no", + START_FREE_CWNN="no", +* Tue Sep 04 2001 - schwab@suse.de +- Add prototypes for C++, constify. +* Mon May 07 2001 - mfabian@suse.de +- bzip2 sources +* Thu May 03 2001 - mfabian@suse.de +- make init scripts comply with latest LSB spec +* Tue Dec 05 2000 - schwab@suse.de +- Fix missing declarations. +* Tue Nov 28 2000 - mfabian@suse.de +- forgot to change the links to the init scripts to /etc/init.d + fixed. +* Mon Nov 27 2000 - mfabian@suse.de +- removed sockets before starting the FreeWnn servers. + sometimes these sockets remained after killing a FreeWnn server, + which prevented the restart. +* Mon Nov 27 2000 - mfabian@suse.de +- added "route named" to "Required-Start:" +- moved init scripts to /etc/init.d +* Fri Nov 24 2000 - mfabian@suse.de +- change to new init script mechanism: + rewrote the init scripts to use insserv to handle links to + init scripts. +* Wed Nov 01 2000 - mfabian@suse.de +- made the command line client "uum" work. +* Mon Oct 30 2000 - mfabian@suse.de +- moved all manpages into the fwnncom subpackage +* Fri Oct 27 2000 - bk@suse.de +- fixed startproc call, useradd and server permissions +* Wed Oct 25 2000 - mfabian@suse.de +- new package: fwnn (FreeWnn, Version 1.1.1-a017) diff --git a/rcfcwnn b/rcfcwnn new file mode 100644 index 0000000..446ded8 --- /dev/null +++ b/rcfcwnn @@ -0,0 +1,90 @@ +#! /bin/sh +# Copyright (c) 1996, 2000 S.u.S.E. GmbH Fuerth, Germany. All rights reserved. +# +# Author: Mike Fabian , 2000 +# +# /etc/init.d/fcwnn +# +### BEGIN INIT INFO +# Provides: fcwnn +# Required-Start: $network $named +# Required-Stop: +# Default-Start: 3 5 +# Default-Stop: +# Description: Free Wnn (mainland) Chinese Server, for input of simplified Chinese +### END INIT INFO + +. /etc/rc.status + +FREE_CWNN_BIN=/usr/bin/cserver +test -x $FREE_CWNN_BIN || exit 5 + +# First reset status of this service +rc_reset + +if [ ! -f /etc/FreeWnn/zh_CN/cserverrc ] ; then + echo "can't find /etc/FreeWnn/zh_CN/cserverrc" + # program is not configured + exit 6 +fi + +case "$1" in + start) + echo -n "Starting Free Wnn (mainland) Chinese Server" + if test -e /tmp/cd_sockV4 ; then + rm /tmp/cd_sockV4 + fi + # redirect message + # "startproc: startproc: signal catched /usr/bin/cserver: Terminated + # to /dev/null + startproc -u wnn -q -t 1 $FREE_CWNN_BIN > /dev/null 2>&1 + rc_status -v + ;; + stop) + echo "Shutting down Free Wnn (mainland) Chinese Server" + # don't use 'cwnnkill', because this doesn't kill cserver + # if there are still clients. + killproc -TERM $FREE_CWNN_BIN + rc_status -v + if test -e /tmp/cd_sockV4 ; then + rm /tmp/cd_sockV4 + fi + ;; + try-restart) + $0 status >/dev/null && $0 restart + rc_status + ;; + restart) + $0 stop + $0 start + rc_status + ;; + force-reload) + $0 stop && $0 start + rc_status + ;; + reload) + rc_failed 3 + rc_status -v + ;; + status) + echo -n "Checking for Free Wnn (mainland) Chinese Server: " + checkproc $FREE_CWNN_BIN + rc_status -v + ;; + full-status) + $0 status + rc_status + if test -x /usr/bin/cwnnstat ; then + /usr/bin/cwnnstat + else + echo "Full status not available, can't start \`/usr/bin/cwnnstat'" + fi + ;; + *) + echo "Usage: $0 {start|stop|try-restart|restart|force-reload|reload|status|full-status}" + exit 1 + ;; +esac + +rc_exit diff --git a/rcfkwnn b/rcfkwnn new file mode 100644 index 0000000..69517d3 --- /dev/null +++ b/rcfkwnn @@ -0,0 +1,90 @@ +#! /bin/sh +# Copyright (c) 1996, 2000 S.u.S.E. GmbH Fuerth, Germany. All rights reserved. +# +# Author: Mike Fabian , 2000 +# +# /etc/init.d/fkwnn +# +### BEGIN INIT INFO +# Provides: fkwnn +# Required-Start: $network $named +# Required-Stop: +# Default-Start: 3 5 +# Default-Stop: +# Description: Free Wnn Korean Server, for input of Korean +### END INIT INFO + +. /etc/rc.status + +FREE_KWNN_BIN=/usr/bin/kserver +test -x $FREE_KWNN_BIN || exit 5 + +# First reset status of this service +rc_reset + +if [ ! -f /etc/FreeWnn/ko_KR/kserverrc ] ; then + echo "can't find /etc/FreeWnn/ko_KR/kserverrc" + # program is not configured + exit 6 +fi + +case "$1" in + start) + echo -n "Starting Free Wnn Korean Server" + if test -e /tmp/kd_sockV4 ; then + rm /tmp/kd_sockV4 + fi + # redirect message + # "startproc: startproc: signal catched /usr/bin/kserver: Terminated + # to /dev/null + startproc -u wnn -q -t 1 $FREE_KWNN_BIN > /dev/null 2>&1 + rc_status -v + ;; + stop) + echo "Shutting down Free Wnn Korean Server" + # don't use 'kwnnkill', because this doesn't kill kserver + # if there are still clients. + killproc -TERM $FREE_KWNN_BIN + rc_status -v + if test -e /tmp/kd_sockV4 ; then + rm /tmp/kd_sockV4 + fi + ;; + try-restart) + $0 status >/dev/null && $0 restart + rc_status + ;; + restart) + $0 stop + $0 start + rc_status + ;; + force-reload) + $0 stop && $0 start + rc_status + ;; + reload) + rc_failed 3 + rc_status -v + ;; + status) + echo -n "Checking for Free Wnn Korean Server: " + checkproc $FREE_KWNN_BIN + rc_status -v + ;; + full-status) + $0 status + rc_status + if test -x /usr/bin/kwnnstat ; then + /usr/bin/kwnnstat + else + echo "Full status not available, can't start \`/usr/bin/kwnnstat'" + fi + ;; + *) + echo "Usage: $0 {start|stop|try-restart|restart|force-reload|reload|status|full-status}" + exit 1 + ;; +esac + +rc_exit diff --git a/rcftwnn b/rcftwnn new file mode 100644 index 0000000..76e0204 --- /dev/null +++ b/rcftwnn @@ -0,0 +1,90 @@ +#! /bin/sh +# Copyright (c) 1996, 2000 S.u.S.E. GmbH Fuerth, Germany. All rights reserved. +# +# Author: Mike Fabian , 2000 +# +# /etc/init.d/ftwnn +# +### BEGIN INIT INFO +# Provides: ftwnn +# Required-Start: $network $named +# Required-Stop: +# Default-Start: 3 5 +# Default-Stop: +# Description: Free Wnn Taiwan-Chinese Server, for input of traditional Chinese +### END INIT INFO + +. /etc/rc.status + +FREE_TWNN_BIN=/usr/bin/tserver +test -x $FREE_TWNN_BIN || exit 5 + +# First reset status of this service +rc_reset + +if [ ! -f /etc/FreeWnn/zh_TW/tserverrc ] ; then + echo "can't find /etc/FreeWnn/zh_TW/tserverrc" + # program is not configured + exit 6 +fi + +case "$1" in + start) + echo -n "Starting Free Wnn Taiwan-Chinese Server" + if test -e /tmp/td_sockV4 ; then + rm /tmp/td_sockV4 + fi + # redirect message + # "startproc: startproc: signal catched /usr/bin/tserver: Terminated + # to /dev/null + startproc -u wnn -q -t 1 $FREE_TWNN_BIN > /dev/null 2>&1 + rc_status -v + ;; + stop) + echo "Shutting down Free Wnn Taiwan-Chinese Server" + # don't use 'cwnnkill', because this doesn't kill tserver + # if there are still clients. + killproc -TERM $FREE_TWNN_BIN + rc_status -v + if test -e /tmp/td_sockV4 ; then + rm /tmp/td_sockV4 + fi + ;; + try-restart) + $0 status >/dev/null && $0 restart + rc_status + ;; + restart) + $0 stop + $0 start + rc_status + ;; + force-reload) + $0 stop && $0 start + rc_status + ;; + reload) + rc_failed 3 + rc_status -v + ;; + status) + echo -n "Checking for Free Wnn Taiwan-Chinese Server" + checkproc $FREE_TWNN_BIN + rc_status -v + ;; + full-status) + $0 status + rc_status + if test -x /usr/bin/cwnnstat ; then + /usr/bin/cwnnstat + else + echo "Full status not available, can't start \`/usr/bin/cwnnstat'" + fi + ;; + *) + echo "Usage: $0 {start|stop|try-restart|restart|force-reload|reload|status|full-status}" + exit 1 + ;; +esac + +rc_exit diff --git a/rcfwnn b/rcfwnn new file mode 100644 index 0000000..42130ce --- /dev/null +++ b/rcfwnn @@ -0,0 +1,90 @@ +#! /bin/sh +# Copyright (c) 1996, 2000 S.u.S.E. GmbH Fuerth, Germany. All rights reserved. +# +# Author: Mike Fabian , 2000 +# +# /etc/init.d/fwnn +# +### BEGIN INIT INFO +# Provides: fwnn +# Required-Start: $network $named +# Required-Stop: +# Default-Start: 3 5 +# Default-Stop: +# Description: Free Wnn Kanji Server used for input of Japanese +### END INIT INFO + +. /etc/rc.status + +FREE_WNN_BIN=/usr/bin/jserver +test -x $FREE_WNN_BIN || exit 5 + +# First reset status of this service +rc_reset + +if [ ! -f /etc/FreeWnn/ja/jserverrc ] ; then + echo "can't find /etc/FreeWnn/ja/jserverrc" + # program is not configured + exit 6 +fi + +case "$1" in + start) + echo -n "Starting Free Wnn Kanji Server" + if test -e /tmp/jd_sockV4 ; then + rm /tmp/jd_sockV4 + fi + # redirect message + # "startproc: startproc: signal catched /usr/bin/jserver: Terminated + # to /dev/null + startproc -u wnn -q -t 1 $FREE_WNN_BIN > /dev/null 2>&1 + rc_status -v + ;; + stop) + echo "Shutting down Free Wnn Kanji Server" + # don't use 'wnnkill', because this doesn't kill jserver + # if there are still clients. + killproc -TERM $FREE_WNN_BIN + rc_status -v + if test -e /tmp/jd_sockV4 ; then + rm /tmp/jd_sockV4 + fi + ;; + try-restart) + $0 status >/dev/null && $0 restart + rc_status + ;; + restart) + $0 stop + $0 start + rc_status + ;; + force-reload) + $0 stop && $0 start + rc_status + ;; + reload) + rc_failed 3 + rc_status -v + ;; + status) + echo -n "Checking for Free Wnn Kanji Server: " + checkproc $FREE_WNN_BIN + rc_status -v + ;; + full-status) + $0 status + rc_status + if test -x /usr/bin/wnnstat ; then + /usr/bin/wnnstat + else + echo "Full status not available, can't start \`/usr/bin/wnnstat'" + fi + ;; + *) + echo "Usage: $0 {start|stop|try-restart|restart|force-reload|reload|status|full-status}" + exit 1 + ;; +esac + +rc_exit diff --git a/ready b/ready new file mode 100644 index 0000000..473a0f4