diff --git a/chinese/Makefile b/chinese/Makefile index 608a73cf4e94..f7d07ac85fb3 100644 --- a/chinese/Makefile +++ b/chinese/Makefile @@ -55,6 +55,7 @@ SUBDIR += iiimf-le-chewing SUBDIR += iiimf-le-newpy SUBDIR += iiimf-le-ude + SUBDIR += iiimf-le-xcin SUBDIR += irssi SUBDIR += jis2gb SUBDIR += joe diff --git a/chinese/iiimf-le-xcin/Makefile b/chinese/iiimf-le-xcin/Makefile new file mode 100644 index 000000000000..d82213044889 --- /dev/null +++ b/chinese/iiimf-le-xcin/Makefile @@ -0,0 +1,51 @@ +# New ports collection makefile for: iiimf-le-xcin +# Date created: 2004-09-09 +# Whom: Kuang-che Wu +# +# $FreeBSD$ +# + +PORTNAME= iiimf-le-xcin +PORTVERSION= 0.1.7 +CATEGORIES= chinese textproc +MASTER_SITES= http://people.redhat.com/llch/iiimf-xcin/ +EXTRACT_SUFX= -2.src.rpm + +MAINTAINER= kcwu@csie.org +COMMENT= IIIMF xcin language engine, a traditional Chinese input method + +EXTRACT_DEPENDS= rpm2cpio.pl:${PORTSDIR}/archivers/rpm2cpio +RUN_DEPENDS= ${LOCALBASE}/lib/im/htt:${PORTSDIR}/textproc/iiimf-server + +WRKSRC= ${WRKDIR}/iiimf-xcin +USE_BZIP2= yes +USE_XLIB= yes +USE_GNOME= libxml2 +USE_REINPLACE= yes +USE_AUTOCONF_VER= 259 +USE_AUTOHEADER_VER= 259 +AUTOMAKE_ARGS= --add-missing +USE_AUTOMAKE_VER= 19 +USE_LIBTOOL_VER= 15 +CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL} + +do-extract: + ${MKDIR} ${WRKDIR} + cd ${WRKDIR} && \ + ${LOCALBASE}/bin/rpm2cpio.pl ${DISTDIR}/${DISTFILES} | \ + ${CPIO} -iud + cd ${WRKDIR} && ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} \ + ${WRKDIR}/${DISTNAME}.tar.bz2 ${EXTRACT_AFTER_ARGS} + +post-patch: + ${REINPLACE_CMD} -e "s,/usr/lib/im,${PREFIX}/lib/im,g" \ + ${WRKSRC}/acfiles/im_common.m4 \ + ${WRKSRC}/src/cin2tab/constant.h \ + ${WRKSRC}/src/xcin.c \ + ${WRKSRC}/src/xmlconf.c \ + ${WRKSRC}/xcin.xml.conf + +pre-configure: + cd ${WRKSRC} && ${ACLOCAL} -I ${LOCALBASE}/share/aclocal -I acfiles + +.include diff --git a/chinese/iiimf-le-xcin/distinfo b/chinese/iiimf-le-xcin/distinfo new file mode 100644 index 000000000000..05a9abb2303f --- /dev/null +++ b/chinese/iiimf-le-xcin/distinfo @@ -0,0 +1,2 @@ +MD5 (iiimf-le-xcin-0.1.7-2.src.rpm) = a0a3547812a4be9571dd028870381e5f +SIZE (iiimf-le-xcin-0.1.7-2.src.rpm) = 1323099 diff --git a/chinese/iiimf-le-xcin/files/patch-acfiles_check_sys.m4 b/chinese/iiimf-le-xcin/files/patch-acfiles_check_sys.m4 new file mode 100644 index 000000000000..ca7c60c6f480 --- /dev/null +++ b/chinese/iiimf-le-xcin/files/patch-acfiles_check_sys.m4 @@ -0,0 +1,36 @@ +--- acfiles/check_sys.m4.orig Wed Dec 10 12:42:54 2003 ++++ acfiles/check_sys.m4 Fri Sep 10 00:33:55 2004 +@@ -73,6 +73,11 @@ + ## Checks for thread library. + AC_CHECK_LIB(pthread, pthread_create, [ HAVE_LIBPTHREAD="yes" ]) + AC_CHECK_LIB(thread, thr_create, [ HAVE_LIBUITHREAD="yes" ]) ++ ++ case "${target}" in ++ *freebsd*) HAVE_LIBPTHREAD="yes";; ++ esac ++ + if test "X${HAVE_LIBPTHREAD}" = "Xyes" ; then + HAVE_THREAD="pthread" + elif test "X${HAVE_LIBUITHREAD}" = "Xyes" ; then +@@ -194,8 +199,6 @@ + COMMON_CXX_CFLAGS="${COMMON_CXX_CFLAGS} -DLinux" + ;; + *freebsd*) +- THREAD_LDFLAGS="-pthread" +- PTHREAD_LIBS="" + ;; + esac + +@@ -245,9 +248,9 @@ + *solaris*@cc:*) + THREAD_CXX_CFLAGS="-mt" + ;; +- *freebsd*@gcc:*) +- THREAD_LDFLAGS="-pthread" +- THREAD_LIBS="" ++ *freebsd*) ++ THREAD_CXX_CFLAGS="${PTHREAD_CFLAGS}" ++ THREAD_LIBS="${PTHREAD_LIBS}" + ;; + *linux*) + THREAD_CXX_CFLAGS="${THREAD_CXX_CFLAGS} -D_SVID_SOURCE -D_BSD_SOURCE" diff --git a/chinese/iiimf-le-xcin/files/patch-src_Makefile.am b/chinese/iiimf-le-xcin/files/patch-src_Makefile.am new file mode 100644 index 000000000000..de71377c86d1 --- /dev/null +++ b/chinese/iiimf-le-xcin/files/patch-src_Makefile.am @@ -0,0 +1,19 @@ +--- src/Makefile.am.orig Thu Sep 9 18:51:35 2004 ++++ src/Makefile.am Thu Sep 9 18:52:22 2004 +@@ -5,6 +5,7 @@ + libdir = $(prefix)/lib/im/leif + + xcin_la_CFLAGS = $(SHLIBCFLAGS) \ ++ $(X_CFLAGS) \ + $(THREAD_CXX_CFLAGS) \ + -DNO_COLOR_FEEDBACK -DNO_CARET_NEGO \ + -I$(IM_INCLUDEDIR)/iml -I$(XML_CFLAGS) +@@ -13,7 +14,7 @@ + -shared -module -rpath \ + $(IM_LEIFDIR) $(SHLIBLDFLAGS) $(THREAD_LDFLAGS) + +-xcin_la_LIBADD = $(THREAD_LIBS) $(XML_LIBS) ++xcin_la_LIBADD = $(THREAD_LIBS) $(XML_LIBS) $(X_LIBS) + + xcin_la_SOURCES = xcin.c gen_inp.c charcode.c debugInfo.c keymap.c le_proc.c key_event.c define.c xmlconf.c + diff --git a/chinese/iiimf-le-xcin/files/patch-src_debugInfo.c b/chinese/iiimf-le-xcin/files/patch-src_debugInfo.c new file mode 100644 index 000000000000..6c869beb6472 --- /dev/null +++ b/chinese/iiimf-le-xcin/files/patch-src_debugInfo.c @@ -0,0 +1,13 @@ +--- src/debugInfo.c.orig Mon Aug 16 08:18:25 2004 ++++ src/debugInfo.c Thu Oct 14 00:46:26 2004 +@@ -12,9 +12,9 @@ + + void debug(const char *format, ...) + { ++ va_list args; + if(!isDebugMode()) return; + +- va_list args; + va_start(args, format); + vfprintf(stderr, format, args); + fprintf(stderr, "\n"); diff --git a/chinese/iiimf-le-xcin/files/patch-src_key_event.c b/chinese/iiimf-le-xcin/files/patch-src_key_event.c new file mode 100644 index 000000000000..1c09db0b2819 --- /dev/null +++ b/chinese/iiimf-le-xcin/files/patch-src_key_event.c @@ -0,0 +1,19 @@ +--- src/key_event.c.orig Mon Aug 16 08:40:30 2004 ++++ src/key_event.c Thu Oct 14 00:51:11 2004 +@@ -140,6 +140,7 @@ + + int i; + int index; ++ UTFCHAR buf; + + IMKeyEventStruct *k = (IMKeyEventStruct *) keylist->keylist; + MyDataPerSession *session_data = (MyDataPerSession *) s->specific_data; +@@ -289,7 +290,7 @@ + + /* lock candidate if numbers are not keyname */ + /* XXX fix in v.2 on not only checking '1' */ +- UTFCHAR buf = (UTFCHAR)UTF8toUnicode((wchar_t)session_data->cf->header.keyname[key2code('1')].wch); ++ buf = (UTFCHAR)UTF8toUnicode((wchar_t)session_data->cf->header.keyname[key2code('1')].wch); + if (!buf) + { + session_data->luc_commit = True; diff --git a/chinese/iiimf-le-xcin/files/patch-src_xmlconf.c b/chinese/iiimf-le-xcin/files/patch-src_xmlconf.c new file mode 100644 index 000000000000..c511072198f6 --- /dev/null +++ b/chinese/iiimf-le-xcin/files/patch-src_xmlconf.c @@ -0,0 +1,14 @@ +--- src/xmlconf.c.orig Thu Oct 14 00:54:03 2004 ++++ src/xmlconf.c Thu Oct 14 00:55:28 2004 +@@ -3,9 +3,9 @@ + void + debugPrintLangIM (langim *langIM) { + +- if(!isDebugMode()) return; +- + imnodes *node; ++ ++ if(!isDebugMode()) return; + + if(langIM->lang) + printf("lang: %s\n", langIM->lang); diff --git a/chinese/iiimf-le-xcin/pkg-descr b/chinese/iiimf-le-xcin/pkg-descr new file mode 100644 index 000000000000..ef6d4875361a --- /dev/null +++ b/chinese/iiimf-le-xcin/pkg-descr @@ -0,0 +1,17 @@ +A IIIMF language engine which ported from a popular traditional chinese +input method, xcin, which was written using XIM protocol. It is now +includes following input methods: + CangJie + Simplex + Phone + PinYin + NoTonePinYin + Cantonese PinYin + Array + EZ + Telecode + +WWW: http://tciiimf.sourceforge.net/ + +- Kuang-che Wu + kcwu@csie.org diff --git a/chinese/iiimf-le-xcin/pkg-plist b/chinese/iiimf-le-xcin/pkg-plist new file mode 100644 index 000000000000..cfea361580ec --- /dev/null +++ b/chinese/iiimf-le-xcin/pkg-plist @@ -0,0 +1,21 @@ +lib/im/leif/xcin.so +lib/im/leif/xcin.so.0 +lib/im/locale/zh_TW/xcin/cin2tab +lib/im/locale/zh_TW/xcin/xcin.xml.conf +lib/im/locale/zh_TW/xcin/tab/array30.tab +lib/im/locale/zh_TW/xcin/tab/cj.tab +lib/im/locale/zh_TW/xcin/tab/cj5.tab +lib/im/locale/zh_TW/xcin/tab/ez.tab +lib/im/locale/zh_TW/xcin/tab/jyutping0.tab +lib/im/locale/zh_TW/xcin/tab/phone.tab +lib/im/locale/zh_TW/xcin/tab/pinyin.tab +lib/im/locale/zh_TW/xcin/tab/pinyin0.tab +lib/im/locale/zh_TW/xcin/tab/simplex.tab +lib/im/locale/zh_TW/xcin/tab/simplex5.tab +lib/im/locale/zh_TW/xcin/tab/sys.tab +lib/im/locale/zh_TW/xcin/tab/telecode.tab +@dirrm lib/im/locale/zh_TW/xcin/tab +@dirrm lib/im/locale/zh_TW/xcin +@unexec rmdir %D/lib/im/locale/zh_TW 2>/dev/null || true +@unexec rmdir %D/lib/im/locale 2>/dev/null || true +@unexec rmdir %D/lib/im/leif 2>/dev/null || true