summaryrefslogtreecommitdiff
path: root/app-i18n/freewnn
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /app-i18n/freewnn
reinit the tree, so we can have metadata
Diffstat (limited to 'app-i18n/freewnn')
-rw-r--r--app-i18n/freewnn/Manifest13
-rw-r--r--app-i18n/freewnn/files/freewnn-1.1.1_alpha22-parallel-build.patch318
-rw-r--r--app-i18n/freewnn/files/freewnn-Wformat-security.patch143
-rw-r--r--app-i18n/freewnn/files/freewnn-uum-EUC-JP.patch13
-rw-r--r--app-i18n/freewnn/files/freewnn.confd-r11
-rw-r--r--app-i18n/freewnn/files/freewnn.initd16
-rw-r--r--app-i18n/freewnn/files/freewnn.initd-r117
-rw-r--r--app-i18n/freewnn/freewnn-1.1.1_alpha22.ebuild54
-rw-r--r--app-i18n/freewnn/freewnn-1.1.1_alpha23.ebuild72
-rw-r--r--app-i18n/freewnn/metadata.xml14
10 files changed, 661 insertions, 0 deletions
diff --git a/app-i18n/freewnn/Manifest b/app-i18n/freewnn/Manifest
new file mode 100644
index 000000000000..5024fe567f26
--- /dev/null
+++ b/app-i18n/freewnn/Manifest
@@ -0,0 +1,13 @@
+AUX freewnn-1.1.1_alpha22-parallel-build.patch 6089 SHA256 846032969f1472eecd9a58407933ece0b4c4de4ec3078e4e8ca4f7c8d1b46c81 SHA512 941344392312412fb4f5b42c51df1c58d1efc050e203d54894d4bcd921e884ac82fcf5a29a3a57aa4be88da57586dfa9674b8ea88dcb75e91efe83caaa78ac50 WHIRLPOOL 88405a0a50f90028a94affa2849e6a028a8a12657a07ab198e8ff51749acfe00007f16f3f3984737a75e3c67d3c72b4b5daf59daa6cfb1d07969ad63a0dd9f21
+AUX freewnn-Wformat-security.patch 3658 SHA256 5f199ee4b70c1f03536f344a748acade88fd607960c77e3af17fd7596b22547b SHA512 7e01d516978eb024fe723a84c6c7cc8e138e7947ed3d4d5ec6e15b28783498e084cd2655ccd2ce7377c9837332ae1b0caec654c0f7f2bb9f78b9657f4cd00830 WHIRLPOOL 47612b0cf9dc7f1246f19853bd413a7d810d31fdfd55423e6092df8f4b85f6dab3d1612880d20264efdba15eb805123541f5fbadc6791df4394fdf3efc0969f8
+AUX freewnn-uum-EUC-JP.patch 279 SHA256 f75fb91dfe2dfabd82a3757553abb49feeafb3acc9c80b19566de7e7f75f14df SHA512 a065873fe70435a4364a111eed334ea574cd3178ffde947beabac5bb45e468a725f73c5b35c22b577127d03139a6386eebc815b85014048eaf59ca958687c96b WHIRLPOOL 74d13f9581f887179e50b86598342424f659fdf77a57171f7d0a73dff785ddfe30269b4162ccd949b98fde356f6823d8f8284f6cf06a317943c01c18ef70349a
+AUX freewnn.confd-r1 16 SHA256 c135a272bb830d5176ea212d8d30345d8ddca15819f2c04addd01edb43511910 SHA512 3392644bb5404b83ee3bf3bceffaa769d1dce858fd2a8bd92b79101d0db863002a4f30205498a00777b25b7940fc8dbb41a0e0c4e20be0f6d61be50eb4ddf49e WHIRLPOOL 5028e05b801a342e810fc1bd24d718a925260df990ff06f0a511f1b4b505e34db166f0b3efcca0a4070106a3f1d3ca19ad8c87612c55f68351c41e7b8ab84ec4
+AUX freewnn.initd 283 SHA256 b81c1bf6cb2ce20afd3759949179db3c83d9e63fe3775a797b76c15c4ce887c4 SHA512 81b5a6246d513f567710e2973bc8fffe86462e8afdee13e1a2aa9b6e5e8a852521a23fd5b20af536092b59f626a5e34be77409d63dcab005473dd11631b67111 WHIRLPOOL 87bb153b901dab6e219eb19b8242da8003acf3f613f457350ae05bd22d12bb499d766c379194f76f934943b6485f3c6d6d822999e937f6cf94a33709bf2ea870
+AUX freewnn.initd-r1 306 SHA256 d07c37e0012778ac01ecec9e936c9e59c8be944290606cbdc923e3ceee7d079f SHA512 306ad8dd6ae7060fc937f2ac2b266f385480961ed0c2074f1dcfc77fa82bb7a23042019672b47c32fc8d55079730ccda68c616c0f5411b0704db2c34d2caaf02 WHIRLPOOL 3e386fff89097fb3b1628d86457e52ecaa8007fed869b30e8f4c8344895c0195cfea2d70932a2c7397398a11024bd0a6630f79e7f7fd1a30ccc893c6cbb55d09
+DIST FreeWnn-1.1.1-a022.tar.bz2 3137954 SHA256 3728352fe9d3352ce16884bd0a517eaf227da0cf7e6f1d09b7a3f38f6bfb6dba SHA512 938c8bff69e2f43cce265a6a84822ae08b89725837f808addb66ba202dadafa60c213638f298d9efe1257fd96f7193fd711a3dacecd803289d925d8f6ea6eaf3 WHIRLPOOL f7462c2d6214ea416c8b726b0d086911b238efd39615c4eea5d2c1a9685974ce1c9f20d23d65e861753e64d796c8b98d72682d670d48bf5da80e8051df8d7de9
+DIST FreeWnn-1.1.1-a023.tar.bz2 3147378 SHA256 88c81a9aae33151dcc66259637e5499b1fc313b7288d5b1e90d8dd6290c7a7e9 SHA512 f0b8c657f0441463c752314b7d2fd603b4df056b049d247ecd77ff8b2f2f837fed7e75ce89deabca7061d3126afd51bf301bcdd3ac429056f43bfc8e0c7c8385 WHIRLPOOL 1fa31f568346c69b2cd263ff336ae1eedb6da1d085827eb9b65634fe690f6148b4535f125881053bf6fe79de149f78af6e226c40d1ea278a4977403a36b4efd4
+EBUILD freewnn-1.1.1_alpha22.ebuild 1095 SHA256 feac655778d07bea28a93712bed4b60e433a62bd2a380f0fe1771cf99bcfb1b6 SHA512 0118eb863795a57627c85b5ba18247296e8043c69f4088371d10ec1fde724a9704fa4d49d65233b958c4de26bc14c84bbd1c4322a289b606547c180235dede07 WHIRLPOOL dc94337e8949e670484592716e1f7853f3697f37be1074d67864fb06345e53f3f697c7aa7dc6607faf42f920841a01d1a247086735dec451a214249ccec00614
+EBUILD freewnn-1.1.1_alpha23.ebuild 1559 SHA256 325cd5dc82b2a30b740fbdbcc54fa7d964723975309ea9329ea8f907e62c1b00 SHA512 026e644beb3802f78787b31ba6577ce89b9e376460e37eb5c7e0fd05d004a7fbd9f87b02ec589804094a172d0c33da30bbfe86ba8dd7c19efec87073eb9322b5 WHIRLPOOL 6e5e01788fef0f60ce234cf9adaee527fc76dceeb95b0019550f5037a17a32a4f662fcdf4d06b03e0616bef0addca3baf13ed9b6e35300091a7d5e5889e4c6a0
+MISC ChangeLog 4808 SHA256 aff09a5053db9ceb1b1894f048a0d1c40ff3e7458dfa17b81bc1a338f905e166 SHA512 0ad023440ba1b448d8d7cd29a0819c2f4b012df36ce7ed0b89bfc5a40b1492377b5746daad034d60e249e1246c9d0d4eb83af2e45d34aac7a62a760e9678877f WHIRLPOOL 4c8efacdc24dad7558a0fba9bbf56c8138c042a9f5ab23fd864bae1cd45e25848b27ccaf133e244146bc03074cd5b91e469b5c63d0721b41bc0f4670a2943679
+MISC ChangeLog-2015 7910 SHA256 ec9b04d7653393b7c81d5ff3c55d6882028ccd498e0f3b7fd785a63400ed39b4 SHA512 5f8d1e7ebc98669ffc652e24849fe5309a544d6e6287368f3e9f866b332134c3f061b87689ac026958f5faa69f6979a6292305c113ae9b5dd00052117f70acb5 WHIRLPOOL 3496cbd0937534934d9c522cd36288e734dfc087c371f9615d1cf66e24afd27744f570d28d6d59de610d5f60bf295f6b64610e0a1a1820e4844e4a1ed956e0df
+MISC metadata.xml 379 SHA256 8f604f27c6cb82c9c4e1aeeafeb879a394241e961e21832feef51ad316f7bce2 SHA512 ccecd3e1a8245d6ae953997d87f6daa127eb1759f6f91b866c9cc778a11289e3f72ce671d4c62032210568a7a915387cbcb02bb7b7284d515bb20e4c02bd8a6b WHIRLPOOL 091327910e8e1b16a1ae7334b4302949e9f6c36379874690dcfc5edef6daa8e88c7cf82bdf703e3ab95652b5342c57f7e76ead7895e6331383f1c6e9f449164e
diff --git a/app-i18n/freewnn/files/freewnn-1.1.1_alpha22-parallel-build.patch b/app-i18n/freewnn/files/freewnn-1.1.1_alpha22-parallel-build.patch
new file mode 100644
index 000000000000..058225c36ee5
--- /dev/null
+++ b/app-i18n/freewnn/files/freewnn-1.1.1_alpha22-parallel-build.patch
@@ -0,0 +1,318 @@
+Description: Fix potential race condition when building in parallel mode
+Origin: upstream, http://cvs.sourceforge.jp/cvs/view/freewnn/FreeWnn/Wnn/pubdicplus/Makefile.in?r1=1.7&r2=1.8&view=patch
+Bug-Debian: http://bugs.debian.org/724058
+
+--- a/Wnn/pubdicplus/Makefile.in 2010/02/22 17:06:54 1.7
++++ b/Wnn/pubdicplus/Makefile.in 2013/11/08 18:54:44 1.8
+@@ -1,5 +1,5 @@
+ #
+-# $Id: Makefile.in,v 1.7 2010/02/22 17:06:54 aonoto Exp $
++# $Id: Makefile.in,v 1.8 2013/11/08 18:54:44 aonoto Exp $
+ #
+
+ #
+@@ -10,7 +10,7 @@
+ # 1987, 1988, 1989, 1990, 1991, 1992
+ # Copyright OMRON Corporation. 1987, 1988, 1989, 1990, 1991, 1992, 1999
+ # Copyright ASTEC, Inc. 1987, 1988, 1989, 1990, 1991, 1992
+-# Copyright FreeWnn Project 1999, 2000, 2001, 2002, 2004, 2010
++# Copyright FreeWnn Project 1999, 2000, 2001, 2002, 2004, 2010, 2013
+ #
+ # Maintainer: FreeWnn Project
+ #
+@@ -42,13 +42,12 @@
+ ATOF = $(WNNJUTILOBJ)/atof
+ WNNTOUCH = $(WNNJUTILOBJ)/wnntouch
+ HINSI = @HINSI_DATA@
+- FZK_FLAG =
+
+ LINKS = Version bio.hd chimei.hd computer.hd fzk.attr fzk.con fzk.fzkattr fzk.jirattr fzk.jircon fzk.master fzk.shuutan jinmei.hd kihon.hd koyuu.hd setsuji.hd special.hd special.u symbol.hd tankan.hd
+
+ WNNDICS = bio.u chimei.u computer.u jinmei.u kihon.u koyuu.u setsuji.u symbol.u tankan.u
+
+-FZK_SRC= fzk.master fzk.attr fzk.jirattr fzk.fzkattr fzk.jircon fzk.con fzk.shuutan
++FZK_SRC= fzk.master-.c fzk.attr fzk.jirattr fzk.fzkattr fzk.jircon fzk.con fzk.shuutan
+
+ DIC= bio.dic chimei.dic computer.dic jinmei.dic kihon.dic koyuu.dic setsuji.dic special.dic symbol.dic tankan.dic
+
+@@ -68,24 +67,14 @@
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: Version
+-
+ depend:: Version
+
+-clean::
+- $(RM) Version
+-
+ bio.hd: $(PUBDICPLUSSRC)/bio.hd
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: bio.hd
+-
+ depend:: bio.hd
+
+-clean::
+- $(RM) bio.hd
+-
+ # bio.u: $(PUBDICPLUSSRC)/bio.u
+ # $(RM) $@
+ # $(LN) $? $@
+@@ -101,13 +90,8 @@
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: chimei.hd
+-
+ depend:: chimei.hd
+
+-clean::
+- $(RM) chimei.hd
+-
+ # chimei.u: $(PUBDICPLUSSRC)/chimei.u
+ # $(RM) $@
+ # $(LN) $? $@
+@@ -123,13 +107,8 @@
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: computer.hd
+-
+ depend:: computer.hd
+
+-clean::
+- $(RM) computer.hd
+-
+ # computer.u: $(PUBDICPLUSSRC)/computer.u
+ # $(RM) $@
+ # $(LN) $? $@
+@@ -145,90 +124,50 @@
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: fzk.attr
+-
+ depend:: fzk.attr
+
+-clean::
+- $(RM) fzk.attr
+-
+ fzk.con: $(PUBDICPLUSSRC)/fzk.con
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: fzk.con
+-
+ depend:: fzk.con
+
+-clean::
+- $(RM) fzk.con
+-
+ fzk.fzkattr: $(PUBDICPLUSSRC)/fzk.fzkattr
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: fzk.fzkattr
+-
+ depend:: fzk.fzkattr
+
+-clean::
+- $(RM) fzk.fzkattr
+-
+ fzk.jirattr: $(PUBDICPLUSSRC)/fzk.jirattr
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: fzk.jirattr
+-
+ depend:: fzk.jirattr
+
+-clean::
+- $(RM) fzk.jirattr
+-
+ fzk.jircon: $(PUBDICPLUSSRC)/fzk.jircon
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: fzk.jircon
+-
+ depend:: fzk.jircon
+
+-clean::
+- $(RM) fzk.jircon
+-
+ fzk.master: $(PUBDICPLUSSRC)/fzk.master
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: fzk.master
+-
+ depend:: fzk.master
+
+-clean::
+- $(RM) fzk.master
+-
+ fzk.shuutan: $(PUBDICPLUSSRC)/fzk.shuutan
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: fzk.shuutan
+-
+ depend:: fzk.shuutan
+
+-clean::
+- $(RM) fzk.shuutan
+-
+ jinmei.hd: $(PUBDICPLUSSRC)/jinmei.hd
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: jinmei.hd
+-
+ depend:: jinmei.hd
+
+-clean::
+- $(RM) jinmei.hd
+-
+ # jinmei.u: $(PUBDICPLUSSRC)/jinmei.u
+ # $(RM) $@
+ # $(LN) $? $@
+@@ -244,13 +183,8 @@
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: kihon.hd
+-
+ depend:: kihon.hd
+
+-clean::
+- $(RM) kihon.hd
+-
+ # kihon.u: $(PUBDICPLUSSRC)/kihon.u
+ # $(RM) $@
+ # $(LN) $? $@
+@@ -266,13 +200,8 @@
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: koyuu.hd
+-
+ depend:: koyuu.hd
+
+-clean::
+- $(RM) koyuu.hd
+-
+ # koyuu.u: $(PUBDICPLUSSRC)/koyuu.u
+ # $(RM) $@
+ # $(LN) $? $@
+@@ -288,13 +217,8 @@
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: setsuji.hd
+-
+ depend:: setsuji.hd
+
+-clean::
+- $(RM) setsuji.hd
+-
+ # setsuji.u: $(PUBDICPLUSSRC)/setsuji.u
+ # $(RM) $@
+ # $(LN) $? $@
+@@ -310,35 +234,20 @@
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: special.hd
+-
+ depend:: special.hd
+
+-clean::
+- $(RM) special.hd
+-
+ special.u: $(PUBDICPLUSSRC)/special.u
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: special.u
+-
+ depend:: special.u
+
+-clean::
+- $(RM) special.u
+-
+ symbol.hd: $(PUBDICPLUSSRC)/symbol.hd
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: symbol.hd
+-
+ depend:: symbol.hd
+
+-clean::
+- $(RM) symbol.hd
+-
+ # symbol.u: $(PUBDICPLUSSRC)/symbol.u
+ # $(RM) $@
+ # $(LN) $? $@
+@@ -354,13 +263,8 @@
+ $(RM) $@
+ $(LN) $? $@
+
+-includes:: tankan.hd
+-
+ depend:: tankan.hd
+
+-clean::
+- $(RM) tankan.hd
+-
+ # tankan.u: $(PUBDICPLUSSRC)/tankan.u
+ # $(RM) $@
+ # $(LN) $? $@
+@@ -421,16 +325,14 @@
+ $(RM) $@
+ $(LN) $? $@
+
+-std.fzk: fzk.master-.c $(FZK_SRC)
+- $(FZK_PP) $(FZK_FLAG) fzk.master-.c | egrep -v '^(# |#line |#pragma |$$)' | $(ATOF) -h $(HINSI) $@
++std.fsrc: $(FZK_SRC)
++ $(FZK_PP) fzk.master-.c > $@
++
++full.fsrc: $(FZK_SRC)
++ $(FZK_PP) -DKANSAI fzk.master-.c > $@
+
+-full.fzk: $(FZK_SRC)
+- $(MAKE) FZK_FLAG=-DKANSAI std.fzk
+- $(MV) std.fzk $@
+-
+-kougo.fzk: $(FZK_SRC)
+- $(MAKE) FZK_FLAG=-DKOUGO std.fzk
+- $(MV) std.fzk $@
++kougo.fsrc: $(FZK_SRC)
++ $(FZK_PP) -DKOUGO fzk.master-.c > $@
+
+ # additional rule from PubdicPlus/Makefile.in : by aono
+ pod.o: $(PUBDICPLUSSRC)/pod.c
+@@ -442,7 +344,7 @@
+ $(WNNDICS): pod $(PUBDICPLUSSRC)/pubdic.p
+ ./pod $(PUBDICPLUSSRC)/pubdic.p -w -1 -k `basename $@ .u` > $@
+
+-.SUFFIXES: .hd .u .dic .more
++.SUFFIXES: .hd .u .dic .more .fsrc .fzk
+
+ .u.dic:
+ cat $*.hd $< | $(ATOD) -p $(VERSION) -P $(VERSION) -h $(HINSI) $@
+@@ -450,7 +352,10 @@
+ .hd.more:
+ $(ATOD) -h $(HINSI) $@ < $<
+
++.fsrc.fzk:
++ egrep -v '^(# |#line |#pragma |$$)' $< | $(ATOF) -h $(HINSI) $@
++
+ $(DIC): $(HINSI)
+
+ clean::
+- $(RM) -f *.fzk *.dic *.more fzk.master-.c pod $(LINKS)
++ $(RM) -f *.fsrc *.dic *.more fzk.master-.c pod $(LINKS) $(FZKDATA)
diff --git a/app-i18n/freewnn/files/freewnn-Wformat-security.patch b/app-i18n/freewnn/files/freewnn-Wformat-security.patch
new file mode 100644
index 000000000000..b5b68314060d
--- /dev/null
+++ b/app-i18n/freewnn/files/freewnn-Wformat-security.patch
@@ -0,0 +1,143 @@
+--- a/Wnn/uum/jhlp.c
++++ b/Wnn/uum/jhlp.c
+@@ -1135,7 +1135,7 @@
+ else
+ {
+ signal (SIGCHLD, SIG_IGN);
+- printf (MSG_GET (3));
++ printf ("%s", MSG_GET (3));
+ /*
+ printf("\r\nuumを終わります。\r\n");
+ */
+@@ -1212,8 +1212,8 @@
+
+ if ((buf = (unsigned char *) malloc (maxchg * 4)) == NULL)
+ {
+- printf (MSG_GET (2));
+- printf (MSG_GET (3));
++ printf ("%s", MSG_GET (2));
++ printf ("%s", MSG_GET (3));
+ /*
+ printf("malloc に失敗しました。uumを終わります。\r\n");
+ */
+--- a/Wnn/uum/jis_in.c
++++ b/Wnn/uum/jis_in.c
+@@ -64,7 +64,7 @@
+
+ completely_start:
+ throw_c (0); /* モード表示の後に出す */
+- printf (MSG_GET (6));
++ printf ("%s", MSG_GET (6));
+ /*
+ printf("JISコード: ");
+ */
+--- a/Wnn/uum/jutil.c
++++ b/Wnn/uum/jutil.c
+@@ -489,7 +489,7 @@
+ /*
+ printf("只今、辞書を読み込んでいます。");
+ */
+- printf (MSG_GET (60));
++ printf ("%s", MSG_GET (60));
+ flush ();
+
+ if ((id = jl_dic_add (bun_data_, fname, hfname, 0, prio, rdonly, hrdonly, NULL, NULL, yes_or_no_or_newline, print_msg1)) == -1 && wnn_errorno != -1)
+@@ -571,7 +571,7 @@
+ int x;
+ throw_c (0);
+ clr_line ();
+- printf (string);
++ printf ("%s", string);
+ flush ();
+ for (;;)
+ {
+--- a/Wnn/uum/kensaku.c
++++ b/Wnn/uum/kensaku.c
+@@ -112,7 +112,7 @@
+ u_s_on ();
+ w_printf (kana_buf, maxlength - strlen (MSG_GET (27)) - 2);
+ u_s_off ();
+- printf (MSG_GET (27));
++ printf ("%s", MSG_GET (27));
+ flush ();
+ keyin ();
+ return (NULL);
+--- a/Wnn/uum/kuten.c
++++ b/Wnn/uum/kuten.c
+@@ -63,7 +63,7 @@
+
+ completely_start:
+ throw_c (0); /* モード表示の後に出す */
+- printf (MSG_GET (7));
++ printf ("%s", MSG_GET (7));
+ /*
+ printf("区点 : ");
+ */
+--- a/Wnn/uum/prologue.c
++++ b/Wnn/uum/prologue.c
+@@ -144,7 +144,7 @@
+ /*
+ fprintf(stderr,"初期化でmalloc不能。\n");
+ */
+- fprintf (stderr, MSG_GET (2));
++ fprintf (stderr, "%s", MSG_GET (2));
+ return (-1);
+ }
+
+--- a/Wnn/uum/screen.c
++++ b/Wnn/uum/screen.c
+@@ -547,7 +547,7 @@
+ {
+ push_cursor ();
+ throw_c (0);
+- printf (msg);
++ printf ("%s", msg);
+ pop_cursor ();
+ flush ();
+ }
+--- a/Wnn/uum/sdefine.h
++++ b/Wnn/uum/sdefine.h
+@@ -191,8 +191,8 @@
+
+
+ #define flush() fflush(stdout)
+-#define print_msg(X) {push_cursor();throw_c(0); clr_line();printf(X);flush();pop_cursor();}
+-#define print_msg_getc(X) {push_cursor();throw_c(0); clr_line();printf(X);flush();keyin();pop_cursor();}
++#define print_msg(X) {push_cursor();throw_c(0); clr_line();printf("%s", X);flush();pop_cursor();}
++#define print_msg_getc(X) {push_cursor();throw_c(0); clr_line();printf("%s", X);flush();keyin();pop_cursor();}
+
+
+ #define UNDER_LINE_MODE (0x02 | 0x08 | 0x20)
+--- a/Wnn/uum/select_ele.c
++++ b/Wnn/uum/select_ele.c
+@@ -224,7 +224,7 @@
+
+ throw_c (0);
+ clr_line ();
+- printf (msg);
++ printf ("%s", msg);
+ for (k = dd[cc]; k < dd[cc + 1]; k++)
+ {
+ cp = findcp (k, cc);
+--- a/Wnn/uum/termio.c
++++ b/Wnn/uum/termio.c
+@@ -100,7 +100,7 @@
+
+ if ((strlen (Term_Name) > 2) && (strcmp (Term_Name + (strlen (Term_Name) - 2), "-j") == 0))
+ {
+- fprintf (stderr, MSG_GET (4));
++ fprintf (stderr, "%s", MSG_GET (4));
+ /*
+ fprintf(stderr,"Uum:uumからuumはおこせません。\n");
+ */
+--- a/Wnn/uum/wnnrc_op.c
++++ b/Wnn/uum/wnnrc_op.c
+@@ -754,7 +754,7 @@
+ return fp;
+ }
+ error:
+- fprintf (stderr, MSG_GET (14));
++ fprintf (stderr, "%s", MSG_GET (14));
+ /*
+ fprintf(stderr , "uumrc ファイルがありません。");
+ */
diff --git a/app-i18n/freewnn/files/freewnn-uum-EUC-JP.patch b/app-i18n/freewnn/files/freewnn-uum-EUC-JP.patch
new file mode 100644
index 000000000000..919492d912c6
--- /dev/null
+++ b/app-i18n/freewnn/files/freewnn-uum-EUC-JP.patch
@@ -0,0 +1,13 @@
+--- a/Wnn/include/wnn_config.h
++++ b/Wnn/include/wnn_config.h
+@@ -149,8 +149,8 @@
+ #define TTY_KCODE J_EUJIS
+ #define PTY_KCODE J_EUJIS
+ # else /* !DGUX */
+-#define TTY_KCODE J_JIS
+-#define PTY_KCODE J_JIS
++#define TTY_KCODE J_EUJIS
++#define PTY_KCODE J_EUJIS
+ # endif
+ #endif
+
diff --git a/app-i18n/freewnn/files/freewnn.confd-r1 b/app-i18n/freewnn/files/freewnn.confd-r1
new file mode 100644
index 000000000000..c64e27196d50
--- /dev/null
+++ b/app-i18n/freewnn/files/freewnn.confd-r1
@@ -0,0 +1 @@
+FREEWNN_OPTS=""
diff --git a/app-i18n/freewnn/files/freewnn.initd b/app-i18n/freewnn/files/freewnn.initd
new file mode 100644
index 000000000000..ef4e20cf37c8
--- /dev/null
+++ b/app-i18n/freewnn/files/freewnn.initd
@@ -0,0 +1,16 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+command="/usr/bin/Wnn4/jserver"
+
+depend() {
+ use logger
+ need net
+}
+
+stop() {
+ ebegin "Stopping ${name:-${RC_SVCNAME}}"
+ /usr/bin/Wnn4/wnnkill
+ eend ${?}
+}
diff --git a/app-i18n/freewnn/files/freewnn.initd-r1 b/app-i18n/freewnn/files/freewnn.initd-r1
new file mode 100644
index 000000000000..57fd448f801c
--- /dev/null
+++ b/app-i18n/freewnn/files/freewnn.initd-r1
@@ -0,0 +1,17 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+command="/usr/sbin/jserver"
+command_args="${FREEWNN_OPTS}"
+
+depend() {
+ use logger
+ need net
+}
+
+stop() {
+ ebegin "Stopping ${name:-${RC_SVCNAME}}"
+ /usr/sbin/wnnkill
+ eend ${?}
+}
diff --git a/app-i18n/freewnn/freewnn-1.1.1_alpha22.ebuild b/app-i18n/freewnn/freewnn-1.1.1_alpha22.ebuild
new file mode 100644
index 000000000000..f4d5668b35ee
--- /dev/null
+++ b/app-i18n/freewnn/freewnn-1.1.1_alpha22.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+MY_P="FreeWnn-${PV/_alpha/-a0}"
+
+DESCRIPTION="Network-Extensible Kana-to-Kanji Conversion System"
+HOMEPAGE="http://freewnn.sourceforge.jp/ http://www.freewnn.org/"
+SRC_URI="mirror://sourceforge.jp/${PN}/59257/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 ~arm64 hppa ia64 ppc ppc64 sparc x86"
+IUSE="ipv6"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-parallel-build.patch
+ "${FILESDIR}"/${PN}-Wformat-security.patch
+)
+DOCS="ChangeLog* CONTRIBUTORS"
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e "s/WNNOWNER = wnn/WNNOWNER = root/" \
+ -e "s/@INSTPGMFLAGS@//" \
+ makerule.mk.in
+
+ # bug #542534
+ sed -i \
+ -e "s/egrep -v/egrep -av/" \
+ PubdicPlus/Makefile.in \
+ Wnn/pubdicplus/Makefile.in \
+ cWnn/[ct]dic/Makefile.in \
+ kWnn/kdic/Makefile.in
+}
+
+src_configure() {
+ econf \
+ $(use_with ipv6) \
+ --disable-cWnn \
+ --disable-kWnn
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.man
+ einstalldocs
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+}
diff --git a/app-i18n/freewnn/freewnn-1.1.1_alpha23.ebuild b/app-i18n/freewnn/freewnn-1.1.1_alpha23.ebuild
new file mode 100644
index 000000000000..e6dae1fef125
--- /dev/null
+++ b/app-i18n/freewnn/freewnn-1.1.1_alpha23.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+MY_P="FreeWnn-${PV/_alpha/-a0}"
+
+DESCRIPTION="Network-Extensible Kana-to-Kanji Conversion System"
+HOMEPAGE="http://freewnn.sourceforge.jp/ http://www.freewnn.org/"
+SRC_URI="mirror://sourceforge.jp/${PN}/63271/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="ipv6 uum"
+
+RDEPEND="uum? ( sys-libs/ncurses:= )"
+DEPEND="${RDEPEND}
+ uum? ( virtual/pkgconfig )"
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-uum-EUC-JP.patch
+ "${FILESDIR}"/${PN}-Wformat-security.patch
+)
+DOCS="ChangeLog* CONTRIBUTORS"
+
+src_prepare() {
+ sed -i \
+ -e "s/WNNOWNER = wnn/WNNOWNER = root/" \
+ -e "s|@mandir@/|@mandir@/ja/|" \
+ -e "s/@INSTPGMFLAGS@//" \
+ makerule.mk.in
+
+ # bug #542534
+ sed -i \
+ -e "s/egrep -v/egrep -av/" \
+ PubdicPlus/Makefile.in \
+ Wnn/pubdicplus/Makefile.in \
+ cWnn/[ct]dic/Makefile.in \
+ kWnn/kdic/Makefile.in
+
+ default
+}
+
+src_configure() {
+ econf \
+ $(use_enable uum client) \
+ $(use_with ipv6) \
+ --disable-cWnn \
+ --disable-kWnn \
+ --disable-traditional-layout \
+ --with-term-libs="$(pkg-config --libs ncurses)"
+}
+
+src_compile() {
+ default
+
+ local m
+ for m in $(find Wnn/man -name "*.man"); do
+ iconv -f EUC-JP -t UTF-8 "${m}" > "${m}".UTF-8 || die
+ mv "${m}"{.UTF-8,} || die
+ done
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.man
+ einstalldocs
+
+ newconfd "${FILESDIR}"/${PN}.confd-r1 ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd-r1 ${PN}
+}
diff --git a/app-i18n/freewnn/metadata.xml b/app-i18n/freewnn/metadata.xml
new file mode 100644
index 000000000000..00f1f852743c
--- /dev/null
+++ b/app-i18n/freewnn/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cjk@gentoo.org</email>
+ <name>Cjk</name>
+ </maintainer>
+ <use>
+ <flag name="uum">Build uum</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge-jp">freewnn</remote-id>
+ </upstream>
+</pkgmetadata>