ports/69852: New port: chinese/unrar
statue
statue at freebsd.netlab.cse.yzu.edu.tw
Sat Jul 31 18:10:26 UTC 2004
>Number: 69852
>Category: ports
>Synopsis: New port: chinese/unrar
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Sat Jul 31 18:10:25 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator: statue
>Release: FreeBSD 4.10-STABLE i386
>Organization:
>Environment:
System: FreeBSD freebsd.netlab.cse.yzu.edu.tw 4.10-STABLE FreeBSD 4.10-STABLE #1: Tue Jun 1 18:37:58 CST 2004 statue at freebsd.netlab.cse.yzu.edu.tw:/usr/obj/usr/src/sys/statue i386
>Description:
chinese unrar.
>How-To-Repeat:
>Fix:
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# unrar/
# unrar/Makefile
# unrar/files
# unrar/files/patch-arcread.cpp
# unrar/files/patch-unicode.cpp
#
echo c - unrar/
mkdir -p unrar/ > /dev/null 2>&1
echo x - unrar/Makefile
sed 's/^X//' >unrar/Makefile << 'END-of-unrar/Makefile'
X# New ports collection makefile for: zh-unrar
X# Date created: 1 Auguest 2004
X# Whom: Shen Chuan-Hsing <statue at freebsd.sinica.edu.tw>
X#
X# $FreeBSD$
X#
X
XCATEGORIES= chinese
X
XMAINTAINER= ports at FreeBSD.org
X
XMASTERDIR= ${.CURDIR}/../../archivers/unrar
X
XEXTRA_PATCHES= ${.CURDIR}/files/patch-arcread.cpp \
X ${.CURDIR}/files/patch-unicode.cpp
X
X.include "${MASTERDIR}/Makefile"
END-of-unrar/Makefile
echo c - unrar/files
mkdir -p unrar/files > /dev/null 2>&1
echo x - unrar/files/patch-arcread.cpp
sed 's/^X//' >unrar/files/patch-arcread.cpp << 'END-of-unrar/files/patch-arcread.cpp'
X--- arcread.cpp.orig Sun Aug 1 01:55:38 2004
X+++ arcread.cpp Sun Aug 1 01:57:56 2004
X@@ -540,6 +540,7 @@
X
X void Archive::ConvertUnknownHeader()
X {
X+ int big5=0;
X if (NewLhd.UnpVer<20 && (NewLhd.FileAttr & 0x10))
X NewLhd.Flags|=LHD_DIRECTORY;
X if (NewLhd.HostOS>=HOST_MAX)
X@@ -551,6 +552,16 @@
X }
X for (char *s=NewLhd.FileName;*s!=0;s=charnext(s))
X {
X+ if (big5==1) /* skip Big5 second byte */
X+ {
X+ big5=0;
X+ continue;
X+ }
X+ if ((byte)*s>127) /* Big5 first byte */
X+ {
X+ big5=1;
X+ continue;
X+ }
X if (*s=='/' || *s=='\\')
X *s=CPATHDIVIDER;
X #if defined(_APPLE) && !defined(UNICODE_SUPPORTED)
END-of-unrar/files/patch-arcread.cpp
echo x - unrar/files/patch-unicode.cpp
sed 's/^X//' >unrar/files/patch-unicode.cpp << 'END-of-unrar/files/patch-unicode.cpp'
X--- unicode.cpp.orig Sun Aug 1 01:54:23 2004
X+++ unicode.cpp Sun Aug 1 01:54:56 2004
X@@ -2,6 +2,7 @@
X
X void WideToChar(const wchar *Src,char *Dest,int DestSize)
X {
X+#if 0 /* patch for chinese filename */
X #ifdef _WIN_32
X WideCharToMultiByte(CP_ACP,0,Src,-1,Dest,DestSize,NULL,NULL);
X #else
X@@ -18,6 +19,7 @@
X if (Src[I]==0)
X break;
X }
X+#endif
X #endif
X #endif
X #endif
END-of-unrar/files/patch-unicode.cpp
exit
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list