aboutsummaryrefslogtreecommitdiffstats
path: root/japanese/FreeWnn-lib
diff options
context:
space:
mode:
authorhrs <hrs@FreeBSD.org>2005-12-07 18:46:20 +0800
committerhrs <hrs@FreeBSD.org>2005-12-07 18:46:20 +0800
commit030f6288619d3b93022477f398503b1ca05fbd85 (patch)
treeaaadad91300d462f6cac608cbf56976a33c9f762 /japanese/FreeWnn-lib
parent26315cd814e45b4975a7297a620a8377ced3c0c5 (diff)
downloadfreebsd-ports-gnome-030f6288619d3b93022477f398503b1ca05fbd85.tar.gz
freebsd-ports-gnome-030f6288619d3b93022477f398503b1ca05fbd85.tar.zst
freebsd-ports-gnome-030f6288619d3b93022477f398503b1ca05fbd85.zip
- Update to 1.1.1-a021.
- Use rc.subr(8) for startup scripts. - Remove unnecessary patch files.
Diffstat (limited to 'japanese/FreeWnn-lib')
-rw-r--r--japanese/FreeWnn-lib/Makefile230
-rw-r--r--japanese/FreeWnn-lib/distinfo6
-rw-r--r--japanese/FreeWnn-lib/files/pkg-install.in195
-rw-r--r--japanese/FreeWnn-lib/pkg-descr15
-rw-r--r--japanese/FreeWnn-lib/pkg-plist4
5 files changed, 383 insertions, 67 deletions
diff --git a/japanese/FreeWnn-lib/Makefile b/japanese/FreeWnn-lib/Makefile
index c2b359302fb7..ede59fccafc2 100644
--- a/japanese/FreeWnn-lib/Makefile
+++ b/japanese/FreeWnn-lib/Makefile
@@ -6,34 +6,36 @@
#
PORTNAME= FreeWnn
-PORTVERSION= ${WMMVERSION:S/-/./}
-#PORTREVISION= 1
+PORTVERSION= 1.1.1.a021
+PORTREVISION= 0
CATEGORIES?= japanese
-MASTER_SITES= ftp://ftp.freewnn.org/pub/FreeWnn/alpha/
+MASTER_SITES= ftp://ftp.freewnn.org/pub/%SUBDIR%/ \
+ ${MASTER_SITE_SOURCEFORGE_JP}
+MASTER_SITE_SUBDIR= FreeWnn/alpha \
+ freewnn/17724
PKGNAMESUFFIX?= -lib
-DISTNAME= ${PORTNAME}-${WMMVERSION}
+DISTNAME= ${PORTNAME}-1.1.1-a021
MAINTAINER= ports@FreeBSD.org
COMMENT?= A Japanese/Chinese/Korean input method (Japanese client libraries)
-WRKSRC= ${WRKDIR}/FreeWnn-1.10-pl020
-ALL_TARGET= includes all
-INSTALL_TARGET= install install.man
+USE_BZIP2= yes
GNU_CONFIGURE= yes
-USE_AUTOTOOLS= autoconf:213 libtool:15
-MAKE_ARGS= CDEBUGFLAGS="${CFLAGS}"
+USE_AUTOTOOLS= autoconf:253 libtool:15
INSTALLS_SHLIB= yes
-USE_BZIP2= yes
-
-WMMVERSION= 1.1.1-a020
+MAKE_ARGS= CDEBUGFLAGS="${CFLAGS}"
+ALL_TARGET= includes all
+INSTALL_TARGET= install install.man
WNN?= Wnn
.if (${PKGNAMESUFFIX} == -lib)
CONFIGURE_ARGS= --enable-server=no
-## I must use MLINKS, but ....
-NOMANCOMPRESS= yes
.else
CONFIGURE_ARGS= --enable-libraries=no
+USE_RC_SUBR= yes
+SUB_FILES= pkg-install
+SUB_LIST= RC_SUBR=${RC_SUBR}
+PKGINSTALL= ${WRKDIR}/pkg-install
.endif
.if (${WNN} == Wnn)
@@ -41,45 +43,167 @@ CONFIGURE_ARGS+= --enable-cWnn=no --enable-kWnn=no
MANLANG= ja
CONFIGURE_ARGS+= --mandir=${PREFIX}/man/ja
.if (${PKGNAMESUFFIX} == -lib)
-MAN3= jl_bun_suu.3 jl_c_zenkouho.3 jl_close.3 jl_connect.3 jl_connect_lang.3 \
- jl_dai_top.3 jl_dic_add.3 jl_dic_add_e.3 jl_dic_comment_set.3 \
- jl_dic_comment_set_e.3 jl_dic_delete.3 jl_dic_delete_e.3 jl_dic_list.3 \
- jl_dic_list_e.3 jl_dic_save.3 jl_dic_save_all.3 jl_dic_save_all_e.3 \
- jl_dic_save_e.3 jl_dic_use.3 jl_dic_use_e.3 jl_disconnect.3 jl_env.3 \
- jl_env_get.3 jl_env_set.3 jl_env_sticky.3 jl_env_sticky_e.3 \
- jl_env_un_sticky.3 jl_env_un_sticky_e.3 jl_fuzokugo_get.3 \
- jl_fuzokugo_get_e.3 jl_fuzokugo_set.3 jl_fuzokugo_set_e.3 jl_get_kanji.3 \
- jl_get_yomi.3 jl_get_zenkouho_kanji.3 jl_hinsi_dicts.3 jl_hinsi_dicts_e.3 \
- jl_hinsi_list.3 jl_hinsi_list_e.3 jl_hinsi_name.3 jl_hinsi_name_e.3 \
- jl_hinsi_number.3 jl_hinsi_number_e.3 jl_inspect.3 jl_isconnect.3 \
- jl_isconnect_e.3 jl_jiri_len.3 jl_kanji_len.3 jl_kill.3 jl_next.3 \
- jl_next_dai.3 jl_nobi_conv.3 jl_open.3 jl_open_lang.3 jl_param_get.3 \
- jl_param_get_e.3 jl_param_set.3 jl_param_set_e.3 jl_previous.3 \
- jl_previous_dai.3 jl_ren_conv.3 jl_set_env_wnnrc.3 jl_set_jikouho.3 \
- jl_set_jikouho_dai.3 jl_tan_conv.3 jl_update_hindo.3 jl_word_add.3 \
- jl_word_add_e.3 jl_word_comment_set.3 jl_word_comment_set_e.3 \
- jl_word_delete.3 jl_word_delete_e.3 jl_word_info.3 jl_word_info_e.3 \
- jl_word_search.3 jl_word_search_by_env.3 jl_word_search_by_env_e.3 \
- jl_word_search_e.3 jl_word_use.3 jl_word_use_e.3 jl_yomi_len.3 \
- jl_zenkouho.3 jl_zenkouho_bun.3 jl_zenkouho_dai.3 jl_zenkouho_daip.3 \
- jl_zenkouho_suu.3 js_access.3 js_close.3 js_connect.3 js_dic_add.3 \
- js_dic_delete.3 js_dic_file_create.3 js_dic_file_create_client.3 \
- js_dic_info.3 js_dic_list.3 js_dic_list_all.3 js_dic_use.3 js_disconnect.3 \
- js_env_exist.3 js_env_list.3 js_env_sticky.3 js_env_un_sticky.3 \
- js_file_comment_set.3 js_file_discard.3 js_file_info.3 js_file_list.3 \
- js_file_list_all.3 js_file_loaded.3 js_file_loaded_local.3 \
- js_file_password_set.3 js_file_read.3 js_file_receive.3 js_file_remove.3 \
- js_file_remove_client.3 js_file_send.3 js_file_stat.3 js_file_write.3 \
- js_fuzokugo_get.3 js_fuzokugo_set.3 js_get_lang.3 js_hindo_file_create.3 \
- js_hindo_file_create_client.3 js_hindo_set.3 js_hinsi_dicts.3 \
- js_hinsi_list.3 js_hinsi_name.3 js_hinsi_number.3 js_hinsi_table_set.3 \
- js_isconnect.3 js_kanren.3 js_kantan_dai.3 js_kantan_sho.3 \
- js_kanzen_dai.3 js_kanzen_sho.3 js_kill.3 js_mkdir.3 js_open.3 \
- js_open_lang.3 js_param_get.3 js_param_set.3 js_set_lang.3 \
- js_version.3 js_who.3 js_word_add.3 js_word_comment_set.3 \
- js_word_delete.3 js_word_info.3 js_word_search.3 js_word_search_by_env.3 \
- msg_close.3 msg_get.3 msg_open.3 romkan_clear.3 romkan_dispmode.3 \
- romkan_getc.3 romkan_init.3 romkan_next.3 romkan_ungetc.3
+MAN3+= \
+ jl_bun_suu.3 \
+ jl_c_zenkouho.3 \
+ jl_close.3 \
+ jl_connect.3 \
+ jl_connect_lang.3 \
+ jl_dai_top.3 \
+ jl_dic_add.3 \
+ jl_dic_comment_set.3 \
+ jl_dic_delete.3 \
+ jl_dic_list.3 \
+ jl_dic_save.3 \
+ jl_dic_use.3 \
+ jl_disconnect.3 \
+ jl_env.3 \
+ jl_env_get.3 \
+ jl_env_sticky.3 \
+ jl_fuzokugo_get.3 \
+ jl_fuzokugo_set.3 \
+ jl_get_kanji.3 \
+ jl_get_zenkouho_kanji.3 \
+ jl_hinsi_dicts.3 \
+ jl_hinsi_list.3 \
+ jl_hinsi_name.3 \
+ jl_hinsi_number.3 \
+ jl_inspect.3 \
+ jl_isconnect.3 \
+ jl_jiri_len.3 \
+ jl_kanji_len.3 \
+ jl_kill.3 \
+ jl_next.3 \
+ jl_nobi_conv.3 \
+ jl_open.3 \
+ jl_open_lang.3 \
+ jl_param_get.3 \
+ jl_ren_conv.3 \
+ jl_set_env_wnnrc.3 \
+ jl_set_jikouho.3 \
+ jl_tan_conv.3 \
+ jl_update_hindo.3 \
+ jl_word_add.3 \
+ jl_word_comment_set.3 \
+ jl_word_delete.3 \
+ jl_word_info.3 \
+ jl_word_search.3 \
+ jl_word_use.3 \
+ jl_zenkouho.3 \
+ jl_zenkouho_bun.3 \
+ jl_zenkouho_dai.3 \
+ jl_zenkouho_daip.3 \
+ jl_zenkouho_suu.3 \
+ js_access.3 \
+ js_close.3 \
+ js_connect.3 \
+ js_dic_add.3 \
+ js_dic_delete.3 \
+ js_dic_file_create.3 \
+ js_dic_file_create_client.3 \
+ js_dic_info.3 \
+ js_dic_list.3 \
+ js_dic_list_all.3 \
+ js_dic_use.3 \
+ js_disconnect.3 \
+ js_env_exist.3 \
+ js_env_list.3 \
+ js_env_sticky.3 \
+ js_file_comment_set.3 \
+ js_file_discard.3 \
+ js_file_info.3 \
+ js_file_list.3 \
+ js_file_list_all.3 \
+ js_file_loaded.3 \
+ js_file_loaded_local.3 \
+ js_file_password_set.3 \
+ js_file_read.3 \
+ js_file_receive.3 \
+ js_file_remove.3 \
+ js_file_remove_client.3 \
+ js_file_send.3 \
+ js_file_stat.3 \
+ js_file_write.3 \
+ js_fuzokugo_get.3 \
+ js_fuzokugo_set.3 \
+ js_hindo_file_create.3 \
+ js_hindo_file_create_client.3 \
+ js_hindo_set.3 \
+ js_hinsi_dicts.3 \
+ js_hinsi_list.3 \
+ js_hinsi_name.3 \
+ js_hinsi_number.3 \
+ js_hinsi_table_set.3 \
+ js_isconnect.3 \
+ js_kanren.3 \
+ js_kantan_dai.3 \
+ js_kantan_sho.3 \
+ js_kanzen_dai.3 \
+ js_kanzen_sho.3 \
+ js_kill.3 \
+ js_mkdir.3 \
+ js_open.3 \
+ js_open_lang.3 \
+ js_param_get.3 \
+ js_set_lang.3 \
+ js_version.3 \
+ js_who.3 \
+ js_word_add.3 \
+ js_word_comment_set.3 \
+ js_word_delete.3 \
+ js_word_info.3 \
+ js_word_search.3 \
+ msg_close.3 \
+ msg_get.3 \
+ msg_open.3 \
+ romkan_clear.3 \
+ romkan_dispmode.3 \
+ romkan_getc.3 \
+ romkan_init.3 \
+ romkan_next.3 \
+ romkan_ungetc.3
+
+MLINKS= \
+ jl_dic_add.3 jl_dic_add_e.3 \
+ jl_dic_comment_set.3 jl_dic_comment_set_e.3 \
+ jl_dic_delete.3 jl_dic_delete_e.3 \
+ jl_dic_list.3 jl_dic_list_e.3 \
+ jl_dic_save.3 jl_dic_save_all.3 \
+ jl_dic_save.3 jl_dic_save_all_e.3 \
+ jl_dic_save.3 jl_dic_save_e.3 \
+ jl_dic_use.3 jl_dic_use_e.3 \
+ jl_env_get.3 jl_env_set.3 \
+ jl_env_sticky.3 jl_env_sticky_e.3 \
+ jl_env_sticky.3 jl_env_un_sticky.3 \
+ jl_env_sticky.3 jl_env_un_sticky_e.3 \
+ jl_fuzokugo_get.3 jl_fuzokugo_get_e.3 \
+ jl_fuzokugo_set.3 jl_fuzokugo_set_e.3 \
+ jl_get_kanji.3 jl_get_yomi.3 \
+ jl_hinsi_dicts.3 jl_hinsi_dicts_e.3 \
+ jl_hinsi_list.3 jl_hinsi_list_e.3 \
+ jl_hinsi_name.3 jl_hinsi_name_e.3 \
+ jl_hinsi_number.3 jl_hinsi_number_e.3 \
+ jl_isconnect.3 jl_isconnect_e.3 \
+ jl_next.3 jl_next_dai.3 \
+ jl_param_get.3 jl_param_get_e.3 \
+ jl_param_get.3 jl_param_set.3 \
+ jl_param_get.3 jl_param_set_e.3 \
+ jl_next.3 jl_previous.3 \
+ jl_next.3 jl_previous_dai.3 \
+ jl_set_jikouho.3 jl_set_jikouho_dai.3 \
+ jl_word_add.3 jl_word_add_e.3 \
+ jl_word_comment_set.3 jl_word_comment_set_e.3 \
+ jl_word_delete.3 jl_word_delete_e.3 \
+ jl_word_info.3 jl_word_info_e.3 \
+ jl_word_search.3 jl_word_search_by_env.3 \
+ jl_word_search.3 jl_word_search_by_env_e.3 \
+ jl_word_search.3 jl_word_search_e.3 \
+ jl_word_use.3 jl_word_use_e.3 \
+ jl_kanji_len.3 jl_yomi_len.3 \
+ js_env_sticky.3 js_env_un_sticky.3 \
+ js_set_lang.3 js_get_lang.3 \
+ js_param_get.3 js_param_set.3 \
+ js_word_search.3 js_word_search_by_env.3
.else
#BUILD_DEPENDS= ${LOCALBASE}/lib/libwnn.a:${PORTSDIR}/japanese/FreeWnn-lib
#RUN_DEPENDS= ${LOCALBASE}/lib/wnn/ja_JP/jserverrc:${PORTSDIR}/japanese/FreeWnn-lib
diff --git a/japanese/FreeWnn-lib/distinfo b/japanese/FreeWnn-lib/distinfo
index 77e7df8a0e9e..00c692250120 100644
--- a/japanese/FreeWnn-lib/distinfo
+++ b/japanese/FreeWnn-lib/distinfo
@@ -1,3 +1,3 @@
-MD5 (FreeWnn-1.1.1-a020.tar.bz2) = c00549415cdb08c1f35240dccf8dab20
-SHA256 (FreeWnn-1.1.1-a020.tar.bz2) = 6c63933d5bc0edaf59df3ef528f03ab8f362471a60289c1955aa8078babd73bc
-SIZE (FreeWnn-1.1.1-a020.tar.bz2) = 3015928
+MD5 (FreeWnn-1.1.1-a021.tar.bz2) = 7e15ab385932d58e3743400d303a05e6
+SHA256 (FreeWnn-1.1.1-a021.tar.bz2) = df9523b2eea7cbc94d9d01c19a01394abe3b648c5ec3f1259adac06fc8ecbb86
+SIZE (FreeWnn-1.1.1-a021.tar.bz2) = 3108905
diff --git a/japanese/FreeWnn-lib/files/pkg-install.in b/japanese/FreeWnn-lib/files/pkg-install.in
new file mode 100644
index 000000000000..7fe5d4e67a6a
--- /dev/null
+++ b/japanese/FreeWnn-lib/files/pkg-install.in
@@ -0,0 +1,195 @@
+#!/bin/sh
+# $FreeBSD$
+# an installation script for Wnn4.2
+
+check_pw()
+{
+ if which -s pw; then
+ :
+ else
+ cat <<EOF
+
+This system looks like a pre-2.2 version of FreeBSD. We see that it
+is missing the "pw" utility. We need this utility. Please get and
+install it, and try again. You can get the source from:
+
+ ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/usr.sbin/pw.tar.gz
+
+EOF
+ exit 1
+ fi
+}
+
+ask() {
+ local question default answer
+
+ question=$1
+ default=$2
+ if [ -z "${PACKAGE_BUILDING}" ]; then
+ read -p "${question} (y/n) [${default}]? " answer
+ fi
+ if [ x${answer} = x ]; then
+ answer=${default}
+ fi
+ echo ${answer}
+}
+
+yesno() {
+ local dflt question answer
+
+ question=$1
+ dflt=$2
+ while :; do
+ answer=$(ask "${question}" "${dflt}")
+ case "${answer}" in
+ [Yy]*) return 0;;
+ [Nn]*) return 1;;
+ esac
+ echo "Please answer yes or no."
+ done
+}
+
+mk_startup_script() {
+ _wnnname=$1
+ _wnnserver=$2
+ _wnn_socket=$3
+ _scriptfile=${PKG_PREFIX}/etc/rc.d/${_wnnname}.sh
+
+ echo "Installing ${_scriptfile} startup file.";
+ cat << EOF > ${_scriptfile}
+#!/bin/sh
+#
+# PROVIDE: ${_wnnname}
+# REQUIRE: LOGIN
+#
+
+. %%RC_SUBR%%
+
+name=${_wnnname}
+rcvar=\`set_rcvar\`
+command=${_wnnserver}
+procname=${_wnnserver}
+
+load_rc_config \${name}
+
+start_precmd()
+{
+ rm -f ${_wnn_socket}
+}
+
+stop_postcmd()
+{
+ rm -f ${_wnn_socket}
+}
+
+run_rc_command "\$1"
+EOF
+ chmod 0555 ${_scriptfile}
+
+}
+
+case $2 in
+PRE-INSTALL)
+
+ ## Hack /etc/master.passwd ##
+ # check
+ id_69=`id -u 69 2> /dev/null`
+ id_wnn=`id -u wnn 2> /dev/null`
+ if [ X"$id_wnn" != X ];then
+ exit 0
+ elif [ X"$id_69" != X ]; then
+ cat <<EOF
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+This system already has an account whose name is not 'wnn' and ID
+number is 69.
+
+ '`id 69`'
+
+For Wnn4.2 in this port or package, ID number of 'wnn' has to be 69.
+Please try again after you delete the account.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+EOF
+ exit 1
+ fi
+
+ # add an account 'wnn' to this system
+ echo ""
+ echo "You need an account 'wnn' whose ID number is 69"
+ if [ -z "${BATCH}" ]; then
+ if yesno "Would you like to create it automatically?" y; then
+ # We need a command 'pw(8)'
+ check_pw
+ pw useradd wnn -u 69 -g 7 -h - -d /nonexistent \
+ -s /nonexistent -c Wnn || exit
+ else
+ echo "Please create it, and try again."
+ exit 1
+ fi
+ else
+ echo "Create it automatically!"
+ check_pw
+ pw useradd wnn -u 69 -g 7 -h - -d /nonexistent \
+ -s /nonexistent -c Wnn || exit
+ fi
+ ;;
+
+POST-INSTALL)
+
+ case $1 in
+ ja-FreeWnn-*)
+ sys_dirs="${PKG_PREFIX}/lib/wnn/ja_JP/dic/pubdic ${PKG_PREFIX}/lib/wnn/ja_JP/dic/wnncons ${PKG_PREFIX}/lib/wnn/ja_JP/dic/gerodic"
+ usr_dirs=${PKG_PREFIX}/lib/wnn/ja_JP/dic/usr
+ wnnserver=${PKG_PREFIX}/bin/Wnn4/jserver
+ wnntouch=${PKG_PREFIX}/bin/Wnn4/wnntouch
+ wnnstat=${PKG_PREFIX}/bin/Wnn4/wnnstat
+ wnnkill=${PKG_PREFIX}/bin/Wnn4/wnnkill
+ wnnname=wnn
+ wnn_socket=/tmp/jd_sockV4
+ wnn_lang=ja_JP
+ mk_startup_script ${wnnname} ${wnnserver} ${wnn_socket}
+ ;;
+ zh-FreeWnn-*)
+ sys_dirs="${PKG_PREFIX}/lib/wnn/zh_CN/dic/sys ${PKG_PREFIX}/lib/wnn/zh_TW/dic/sys"
+ usr_dirs="${PKG_PREFIX}/lib/wnn/zh_CN/dic/usr ${PKG_PREFIX}/lib/wnn/zh_TW/dic/usr"
+ wnnserver=${PKG_PREFIX}/bin/cWnn4/cserver
+ wnntouch=${PKG_PREFIX}/bin/cWnn4/cwnntouch
+ wnnstat=${PKG_PREFIX}/bin/cWnn4/cwnnstat
+ wnnkill=${PKG_PREFIX}/bin/cWnn4/cwnnkill
+ wnnname=cwnn
+ wnn_socket=/tmp/cd_sockV4
+ wnn_lang=zh_CN
+ mk_startup_script ${wnnname} ${wnnserver} ${wnn_socket}
+
+ wnnserver2=${PKG_PREFIX}/bin/cWnn4/tserver
+ wnn_lang2=zh_TW
+ wnnname2=twnn
+ wnn_socket2=/tmp/td_sockV4
+ mk_startup_script ${wnnname} ${wnnserver} ${wnn_socket}
+ ;;
+ ko-FreeWnn-*)
+ sys_dirs="${PKG_PREFIX}/lib/wnn/ko_KR/dic/sys"
+ usr_dirs=${PKG_PREFIX}/lib/wnn/ko_KR/dic/usr
+ wnnserver=${PKG_PREFIX}/bin/kWnn4/kserver
+ wnntouch=${PKG_PREFIX}/bin/kWnn4/kwnntouch
+ wnnstat=${PKG_PREFIX}/bin/kWnn4/kwnnstat
+ wnnkill=${PKG_PREFIX}/bin/kWnn4/kwnnkill
+ wnnname=kwnn
+ wnn_socket=/tmp/kd_sockV4
+ wnn_lang=ko_KR
+ mk_startup_script ${wnnname} ${wnnserver} ${wnn_socket}
+ ;;
+ esac
+
+ chown wnn $wnnserver
+ for dir in $sys_dirs; do
+ $wnntouch $dir/*
+ done
+ for dir in $usr_dirs; do
+ if [ ! -d $dir ]; then
+ mkdir -p $dir
+ fi
+ chown wnn $dir
+ done
+ ;;
+esac
diff --git a/japanese/FreeWnn-lib/pkg-descr b/japanese/FreeWnn-lib/pkg-descr
index 8e5aae407982..ef935bbd0ab1 100644
--- a/japanese/FreeWnn-lib/pkg-descr
+++ b/japanese/FreeWnn-lib/pkg-descr
@@ -1,13 +1,10 @@
FreeWnn is a Japanese/Chinese/Korean input method.
-WWW: http://www.freewnn.org/
-
-This port has only libraries for a Japanese imput method. The
-libraries containes a archive file (libwnn.a), header files and files
-which are used to a client.
+This port installs only libraries for the Japanese imput method.
+They include an static library (libwnn.a), header files,
+and files used on the client side.
-Note that you must set a environment variable JSERVER if you use a
-client of Wnn.
+Note that you have to set a environment variable JSERVER before
+you use an Wnn client.
--- S. Taoka
-<taoka@FreeBSD.org>
+WWW: http://www.freewnn.org/
diff --git a/japanese/FreeWnn-lib/pkg-plist b/japanese/FreeWnn-lib/pkg-plist
index 6dd7181fb7ed..40fbe8cf99d0 100644
--- a/japanese/FreeWnn-lib/pkg-plist
+++ b/japanese/FreeWnn-lib/pkg-plist
@@ -80,7 +80,7 @@ lib/libwnn.so
lib/libwnn.so.0
@dirrm lib/wnn/ja_JP/rk
@dirrm lib/wnn/ja_JP/rk.vi
-@dirrm lib/wnn/ja_JP
+@unexec rmdir %D/lib/wnn/ja_JP 2> /dev/null || true
@dirrm lib/wnn/lt_LN/rk
@dirrm lib/wnn/lt_LN
-@dirrm lib/wnn
+@unexec rmdir %D/lib/wnn 2> /dev/null || true