Submitted by: Clive Lin <clive@CirX.ORG>
XA+CV is a work around library lets most X applications to show Chinese words properly. Use LD_PRELOAD to make it work.
This commit is contained in:
parent
dd8bf91b4f
commit
13ec0f9b95
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=21486
49
chinese/xa+cv/Makefile
Normal file
49
chinese/xa+cv/Makefile
Normal file
@ -0,0 +1,49 @@
|
||||
# New ports collection makefile for: xa+cv
|
||||
# Version required: 0.6
|
||||
# Date created: 29 March 1999
|
||||
# Whom: Clive Lin <clive@CirX.ORG>
|
||||
#
|
||||
# $FreeBSD: /tmp/pcvs/ports/chinese/xa+cv/Attic/Makefile,v 1.1.1.1 1999-09-09 10:11:51 foxfair Exp $
|
||||
#
|
||||
|
||||
DISTNAME= xa+cv-0.6
|
||||
PKGNAME= zh-xa+cv-0.6
|
||||
CATEGORIES= chinese
|
||||
MASTER_SITES= ftp://linux.tmtc.edu.tw/pub/CLE/devel/source/tarball/
|
||||
|
||||
MAINTAINER= clive@CirX.ORG
|
||||
|
||||
RUN_DEPENDS= ${X11BASE}/bin/xcin:${PORTSDIR}/chinese/xcin \
|
||||
${X11BASE}/lib/X11/fonts/TrueType/moe_sung.ttf:${PORTSDIR}/chinese/moettf
|
||||
|
||||
USE_GMAKE= yes
|
||||
|
||||
DOC1= FAQ NEW README.XA README.+CV README.XA+CV-0.5 USE.Big5 USE.GB
|
||||
EX1= README cnetscape cxcoral cxemacs cxterm dot.fvwm2rc95 et24 \
|
||||
et24r ns
|
||||
|
||||
post-install:
|
||||
@${ECHO} "========================================================="
|
||||
@${ECHO} "-=> Install examples to invoke XA+CV"
|
||||
@${ECHO} " into ${PREFIX}/share/examples/xa+cv"
|
||||
@${ECHO} " "
|
||||
@${MKDIR} ${PREFIX}/share/examples/xa+cv
|
||||
.for i in ${EX1}
|
||||
@${INSTALL_DATA} ${WRKSRC}/example/${i} ${PREFIX}/share/examples/xa+cv/${i}
|
||||
.endfor
|
||||
.if !defined(NOPORTDOCS)
|
||||
@${ECHO} "-=> Install documents into ${PREFIX}/share/doc/xa+cv"
|
||||
@${ECHO} " "
|
||||
@${MKDIR} ${PREFIX}/share/doc/xa+cv
|
||||
.for i in ${DOC1}
|
||||
@${INSTALL_DATA} ${WRKSRC}/${i} ${PREFIX}/share/doc/xa+cv/${i}
|
||||
.endfor
|
||||
.endif
|
||||
@${ECHO} "-=> Done."
|
||||
@${ECHO} " "
|
||||
@${ECHO} "If you are inpatient, simply set environment varible
|
||||
@${ECHO} "LD_PRELOAD = ${PREFIX}/lib/wrap.so to make it work."
|
||||
@${ECHO} " "
|
||||
@${ECHO} "========================================================="
|
||||
|
||||
.include <bsd.port.mk>
|
1
chinese/xa+cv/distinfo
Normal file
1
chinese/xa+cv/distinfo
Normal file
@ -0,0 +1 @@
|
||||
MD5 (xa+cv-0.6.tar.gz) = 489c976d5fba7cd52ceb706d484143ce
|
36
chinese/xa+cv/files/patch-aa
Normal file
36
chinese/xa+cv/files/patch-aa
Normal file
@ -0,0 +1,36 @@
|
||||
--- Makefile.orig Thu May 13 01:28:07 1999
|
||||
+++ Makefile Wed Aug 11 03:27:24 1999
|
||||
@@ -8,12 +8,12 @@
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -fPIC -O2
|
||||
-SHAREFLAGES = -shared
|
||||
-SHARELIBS = -ldl
|
||||
+SHAREFLAGES = -shared -export-dynamic
|
||||
+SHARELIBS =
|
||||
INSTALL = /usr/bin/install -c
|
||||
|
||||
-DESTDIR = /usr/locale/lib
|
||||
-CONGDIR = /etc/chinese/xa+cv
|
||||
+DESTDIR = /usr/local/lib
|
||||
+CONGDIR = /usr/local/etc/chinese/xa+cv
|
||||
INCLUDEDIR = -I/usr/include -I/usr/X11R6/include
|
||||
|
||||
all: wrap.so
|
||||
@@ -22,7 +22,7 @@
|
||||
$(CC) -c $(CFLAGS) $(INCLUDEDIR) $< -o $@
|
||||
|
||||
wrap.so: cli_xcin.o wrap.o select_mode.o config.h
|
||||
- $(CC) $(SHAREFLAGES) $(SHARELIBS) -o wrap.so cli_xcin.o \
|
||||
+ ld $(SHAREFLAGES) $(SHARELIBS) -o wrap.so cli_xcin.o \
|
||||
wrap.o select_mode.o
|
||||
strip wrap.so
|
||||
|
||||
@@ -38,6 +38,6 @@
|
||||
|
||||
install: all
|
||||
$(INSTALL) -m 755 wrap.so $(DESTDIR)
|
||||
- mkdir -p /etc/chinese/xa+cv && \
|
||||
+ mkdir -p $(CONGDIR) && \
|
||||
$(INSTALL) -m 644 xa+cv.config $(CONGDIR)/config
|
||||
|
200
chinese/xa+cv/files/patch-ac
Normal file
200
chinese/xa+cv/files/patch-ac
Normal file
@ -0,0 +1,200 @@
|
||||
--- wrap.c.orig Wed Jul 28 15:19:02 1999
|
||||
+++ wrap.c Wed Sep 8 17:00:52 1999
|
||||
@@ -272,168 +272,168 @@
|
||||
|
||||
int load_all_syms(void *handle)
|
||||
{
|
||||
- char *error;
|
||||
-
|
||||
+ char const *error;
|
||||
+ FILE * nullfp = fopen("/dev/null", "w") ;
|
||||
real_XOpenDisplay=dlsym(handle,"XOpenDisplay");
|
||||
p_log(-1, " XOpenDisplay loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XCloseDisplay=dlsym(handle,"XCloseDisplay");
|
||||
p_log(-1, " XCloseDisplay loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XGetFontProperty=dlsym(handle,"XGetFontProperty");
|
||||
p_log(-1, " XGetFontProperty loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XFreeFont=dlsym(handle,"XFreeFont");
|
||||
p_log(-1, " XFreeFont loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XFreeFontInfo=dlsym(handle,"XFreeFontInfo");
|
||||
p_log(-1, " XFreeFontInfo loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XQueryFont=dlsym(handle,"XQueryFont");
|
||||
p_log(-1, " XQueryFont loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XLoadQueryFont=dlsym(handle,"XLoadQueryFont");
|
||||
p_log(-1, " XLoadQueryFont loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XTextWidth=dlsym(handle,"XTextWidth");
|
||||
p_log(-1, " XTextWidth loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XTextWidth16=dlsym(handle,"XTextWidth16");
|
||||
p_log(-1, " XTextWidth16 loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XTextExtents=dlsym(handle,"XTextExtents");
|
||||
p_log(-1, " XTextExtents loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XTextExtents16=dlsym(handle,"XTextExtents16");
|
||||
p_log(-1, " XTextExtents16 loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XQueryTextExtents=dlsym(handle,"XQueryTextExtents");
|
||||
p_log(-1, " XQueryTextExtents loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XQueryTextExtents16=dlsym(handle,"XQueryTextExtents16");
|
||||
p_log(-1, " XQueryTextExtents16 loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XDrawString=dlsym(handle,"XDrawString");
|
||||
p_log(-1, " XDrawString loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XDrawString16=dlsym(handle,"XDrawString16");
|
||||
p_log(-1, " XDrawString16 loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XDrawImageString=dlsym(handle,"XDrawImageString");
|
||||
p_log(-1, " XDrawImageString loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XDrawImageString16=dlsym(handle,"XDrawImageString16");
|
||||
p_log(-1, " XDrawImageString16 loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XChangeGC=dlsym(handle,"XChangeGC");
|
||||
p_log(-1, " XChangeGC loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XGetGCValues=dlsym(handle,"XGetGCValues");
|
||||
p_log(-1, " XGetGCValues loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XChangeProperty=dlsym(handle,"XChangeProperty");
|
||||
p_log(-1, " XChangeProperty loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XNextEvent=dlsym(handle,"XNextEvent");
|
||||
p_log(-1, " XNextEvent loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XPeekEvent=dlsym(handle,"XPeekEvent");
|
||||
p_log(-1, " XPeekEvent loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XPutBackEvent=dlsym(handle,"XPutBackEvent");
|
||||
p_log(-1, " XPutBackEvent loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XLookupString=dlsym(handle,"XLookupString");
|
||||
p_log(-1, " XLookupString loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XSetSelectionOwner=dlsym(handle,"XSetSelectionOwner");
|
||||
p_log(-1, " XSetSelectionOwner loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XGetSelectionOwner=dlsym(handle,"XGetSelectionOwner");
|
||||
p_log(-1, " XGetSelectionOwner loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
real_XInternAtom=dlsym(handle,"XInternAtom");
|
||||
p_log(-1, " XInternAtom loaded...\n");
|
||||
if ((error = dlerror()) != NULL) {
|
||||
- fputs(error, stderr);
|
||||
+ fputs(error, nullfp);
|
||||
exit(1);
|
||||
}
|
||||
|
19
chinese/xa+cv/files/patch-ad
Normal file
19
chinese/xa+cv/files/patch-ad
Normal file
@ -0,0 +1,19 @@
|
||||
--- config.h.orig Wed May 26 10:06:40 1999
|
||||
+++ config.h Wed Aug 11 02:35:00 1999
|
||||
@@ -14,14 +14,14 @@
|
||||
#define XA_LIBX11 "/usr/X11R6/lib/libX11.so.6"
|
||||
#endif
|
||||
|
||||
-#define XA_SMART_DADABASE "/etc/chinese/xa+cv/config"
|
||||
+#define XA_SMART_DADABASE "/usr/local/etc/chinese/xa+cv/config"
|
||||
|
||||
#define DEFAULT_FACE "*"
|
||||
#define DEFAULT_FAMILY "*"
|
||||
#define BIG5_FONT_ENCODING "big5-0"
|
||||
#define GB_FONT_ENCODING "gb2312.1980-0"
|
||||
#define DEFAULT_BASE_FONT_NAME "-%s-%s-*-r-*-*-%d-*-*-*-*-%d-%s"
|
||||
-#define DEFAULT_SMALL_BIG5_FONT "taipei16"
|
||||
+#define DEFAULT_SMALL_BIG5_FONT "sung"
|
||||
#define DEFAULT_SMALL_GB_FONT "hanzigb16fs"
|
||||
#define MIN_SMALL_FONT_PIXELS 16
|
||||
#define CFNTMAX 10
|
1
chinese/xa+cv/pkg-comment
Normal file
1
chinese/xa+cv/pkg-comment
Normal file
@ -0,0 +1 @@
|
||||
A loadable library to show Chinese words in most applications
|
9
chinese/xa+cv/pkg-descr
Normal file
9
chinese/xa+cv/pkg-descr
Normal file
@ -0,0 +1,9 @@
|
||||
XA+CV is a work around library lets most X applications to show Chinese words
|
||||
properly. Use LD_PRELOAD to make it work.
|
||||
|
||||
NOTE: for ELF world after 3.0-RELEASE, ONLY compitable with Linux Netscape.
|
||||
you HAVE to enable Linux emulation and install Linux version Netscape.
|
||||
|
||||
Other information please refer to /usr/local/share/doc/xa+cv/.
|
||||
|
||||
- Clive Lin <clive@CirX.ORG>
|
22
chinese/xa+cv/pkg-plist
Normal file
22
chinese/xa+cv/pkg-plist
Normal file
@ -0,0 +1,22 @@
|
||||
lib/wrap.so
|
||||
etc/chinese/xa+cv/config
|
||||
share/doc/xa+cv/FAQ
|
||||
share/doc/xa+cv/NEW
|
||||
share/doc/xa+cv/README.+CV
|
||||
share/doc/xa+cv/README.XA
|
||||
share/doc/xa+cv/README.XA+CV-0.5
|
||||
share/doc/xa+cv/USE.Big5
|
||||
share/doc/xa+cv/USE.GB
|
||||
share/examples/xa+cv/README
|
||||
share/examples/xa+cv/cnetscape
|
||||
share/examples/xa+cv/cxcoral
|
||||
share/examples/xa+cv/cxemacs
|
||||
share/examples/xa+cv/cxterm
|
||||
share/examples/xa+cv/dot.fvwm2rc95
|
||||
share/examples/xa+cv/et24
|
||||
share/examples/xa+cv/et24r
|
||||
share/examples/xa+cv/ns
|
||||
@dirrm etc/chinese/xa+cv
|
||||
@dirrm etc/chinese
|
||||
@dirrm share/doc/xa+cv
|
||||
@dirrm share/examples/xa+cv
|
Loading…
Reference in New Issue
Block a user