FreeBSD Bugzilla – Attachment 81958 Details for
Bug 117290
New port: archivers/unrar-iconv Extract, view & test RAR archives with iconv support
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
file.shar
file.shar (text/plain), 9.35 KB, created by
Yarodin
on 2007-10-18 10:10:01 UTC
(
hide
)
Description:
file.shar
Filename:
MIME Type:
Creator:
Yarodin
Created:
2007-10-18 10:10:01 UTC
Size:
9.35 KB
patch
obsolete
># 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-iconv ># unrar-iconv/files ># unrar-iconv/files/patch-iconv ># unrar-iconv/Makefile ># unrar-iconv/distinfo ># unrar-iconv/pkg-descr ># >echo c - unrar-iconv >mkdir -p unrar-iconv > /dev/null 2>&1 >echo c - unrar-iconv/files >mkdir -p unrar-iconv/files > /dev/null 2>&1 >echo x - unrar-iconv/files/patch-iconv >sed 's/^X//' >unrar-iconv/files/patch-iconv << 'END-of-unrar-iconv/files/patch-iconv' >X--- cmddata.cpp Tue Oct 4 11:57:54 2005 >X+++ cmddata.cpp Mon Jan 16 18:06:24 2006 >X@@ -123,6 +123,34 @@ >X if (Test && Extract) >X Test=false; >X BareOutput=(CmdChar=='L' || CmdChar=='V') && Command[1]=='B'; >X+#ifdef WITH_ICONV >X+ if ( (encInt[0] != '\0') || (encExt[0] != '\0') ) { >X+ char fullEncInt[ENC_MAXLEN + OPT_MAXLEN + 1]; >X+ char fullEncExt[ENC_MAXLEN + OPT_MAXLEN + 1]; >X+ >X+ strcpy(fullEncInt, encInt); >X+ strcpy(fullEncExt, encExt); >X+ >X+ if (encOpt[0] == '\0') strcpy(encOpt, OPT_DEFAULT); >X+ >X+ if (encOpt[0] != '\0') { >X+ strcat(fullEncInt, "//"); strcat(fullEncInt, encOpt); >X+ strcat(fullEncExt, "//"); strcat(fullEncExt, encOpt); >X+ } >X+ >X+ h_E2I = iconv_open(fullEncInt, encExt); >X+ h_I2E = iconv_open(fullEncExt, encInt); >X+ >X+ if ( (h_E2I == (iconv_t)(-1)) || (h_I2E == (iconv_t)(-1)) ) { >X+ if (h_E2I != (iconv_t)(-1)) iconv_close(h_E2I); >X+ if (h_I2E != (iconv_t)(-1)) iconv_close(h_I2E); >X+ mprintf(St(MIconvCannotOpen), encInt, encExt, encOpt); >X+ } >X+ } else { >X+ h_E2I = (iconv_t)(-1); >X+ h_I2E = (iconv_t)(-1); >X+ } >X+#endif >X } >X >X >X@@ -746,6 +774,22 @@ >X break; >X } >X break; >X+#ifdef WITH_ICONV >X+ case 'L': >X+ switch(toupper(Switch[1])) >X+ { >X+ case 'L': >X+ strncpy(encExt, Switch+2, sizeof(encExt)-1); >X+ break; >X+ case 'A': >X+ strncpy(encInt, Switch+2, sizeof(encInt)-1); >X+ break; >X+ case 'O': >X+ strncpy(encOpt, Switch+2, sizeof(encOpt)-1); >X+ break; >X+ } >X+ break; >X+#endif >X #ifndef GUI >X case '?' : >X OutHelp(); >X@@ -964,7 +920,11 @@ >X MCHelpCmdT,MCHelpCmdV,MCHelpCmdX,MCHelpSw,MCHelpSwm,MCHelpSwAC,MCHelpSwAD, >X MCHelpSwAP,MCHelpSwAVm,MCHelpSwCm,MCHelpSwCFGm,MCHelpSwCL,MCHelpSwCU, >X MCHelpSwDH,MCHelpSwEP,MCHelpSwEP3,MCHelpSwF,MCHelpSwIDP,MCHelpSwIERR, >X- MCHelpSwINUL,MCHelpSwIOFF,MCHelpSwKB,MCHelpSwN,MCHelpSwNa,MCHelpSwNal, >X+ MCHelpSwINUL,MCHelpSwIOFF,MCHelpSwKB, >X+#ifdef WITH_ICONV >X+ MCHelpSwLA,MCHelpSwLL,MCHelpSwLO, >X+#endif >X+ MCHelpSwN,MCHelpSwNa,MCHelpSwNal, >X MCHelpSwOp,MCHelpSwOm,MCHelpSwOC,MCHelpSwOR,MCHelpSwOW,MCHelpSwP, >X MCHelpSwPm,MCHelpSwR,MCHelpSwRI,MCHelpSwSL,MCHelpSwSM,MCHelpSwTA, >X MCHelpSwTB,MCHelpSwTN,MCHelpSwTO,MCHelpSwTS,MCHelpSwU,MCHelpSwVUnr, >X--- global.hpp Tue Oct 4 11:57:54 2005 >X+++ global.hpp Mon Jan 16 18:04:41 2006 >X@@ -9,6 +9,19 @@ >X >X EXTVAR ErrorHandler ErrHandler; >X >X+#ifdef WITH_ICONV >X >X+#define OPT_DEFAULT "IGNORE" /* ignore unrepresentable chars */ >X+ >X+#define ENC_MAXLEN 32 /* encoding name maximum length */ >X+#define OPT_MAXLEN 9 /* strlen("TRANSLIT") */ >X+ >X+EXTVAR iconv_t h_E2I; /* ExtToInt handler */ >X+EXTVAR iconv_t h_I2E; /* IntToExt handler */ >X+EXTVAR char encInt[ENC_MAXLEN]; /* internal (archive) encoding */ >X+EXTVAR char encExt[ENC_MAXLEN]; /* external (filesystem) encoding */ >X+EXTVAR char encOpt[OPT_MAXLEN]; /* encoding option (ignore/translit) */ >X+ >X+#endif >X >X #endif >X--- loclang.hpp Tue Oct 4 11:57:54 2005 >X+++ loclang.hpp Mon Jan 16 18:04:41 2006 >X@@ -6,7 +6,7 @@ >X #define MCopyright "\nRAR %s Copyright (c) 1993-%d Alexander Roshal %d %s %d" >X #define MRegTo "\nRegistered to %s\n" >X #define MShare "\nShareware version Type RAR -? for help\n" >X-#define MUCopyright "\nUNRAR %s freeware Copyright (c) 1993-%d Alexander Roshal\n" >X+#define MUCopyright "\nUNRAR %s (iconv) freeware Copyright (c) 1993-%d Alexander Roshal\n" >X #define MBeta "beta" >X #define MMonthJan "Jan" >X #define MMonthFeb "Feb" >X@@ -310,7 +310,7 @@ >X #define MSyncScanError "\nFile search errors, cannot synchronize archive" >X #define MCorrectingName "\nWARNING: Attempting to correct the invalid file name" >X #define MUnpCannotMerge "\nWARNING: You need to start extraction from a previous volume to unpack %s" >X-#define MUnknownOption "\nERROR: Unknown option: %s" >X+#define MUnknownOption "\nERROR: Unknown option: %s\n" >X #define MSubHeadCorrupt "\nERROR: Corrupt data header found, ignored" >X #define MSubHeadUnknown "\nWARNING: Unknown data header format, ignored" >X #define MSubHeadDataCRC "\nERROR: Corrupt %s data block" >X@@ -338,3 +338,9 @@ >X #define MMaxPathLimit "\nTotal path and file name length must not exceed %d characters" >X #define MRecVolLimit "\nTotal number of usual and recovery volumes must not exceed 255" >X #define MVolumeNumber "volume %d" >X+#ifdef WITH_ICONV >X+#define MCHelpSwLA "\n la<encoding> Archive internal filenames encoding" >X+#define MCHelpSwLL "\n ll<encoding> Your locale encoding" >X+#define MCHelpSwLO "\n lo<option> Encoding option {ignore,translit,<empty>}" >X+#define MIconvCannotOpen "\nCannot open iconv to convert between '%s' and '%s' with option '%s'" >X+#endif >X--- makefile.unix Sat Apr 30 11:00:12 2005 >X+++ makefile.unix Mon Jan 16 18:04:41 2006 >X@@ -10,6 +10,13 @@ >X CXXFLAGS=-O2 >X DEFINES=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE >X STRIP=strip >X+# iconv stuff. Remove #ICONV# to enable >X+# where to get iconv.h >X+CXXFLAGS+= -I/usr/local/include >X+# where to get libiconv.so* >X+LIBS+= -L/usr/local/lib -liconv >X+# enable iconv stuff >X+DEFINES+= -DWITH_ICONV >X >X # Linux using LCC >X #CXX=lcc >X--- os.hpp Tue Oct 4 11:57:54 2005 >X+++ os.hpp Mon Jan 16 18:04:41 2006 >X@@ -169,6 +169,10 @@ >X #include <utime.h> >X #include <locale.h> >X >X+#ifdef WITH_ICONV >X+#include <iconv.h> >X+#endif >X+ >X #ifdef S_IFLNK >X #define SAVE_LINKS >X #endif >X--- strfn.cpp Tue Oct 4 11:57:54 2005 >X+++ strfn.cpp Mon Jan 16 18:04:41 2006 >X@@ -22,23 +22,49 @@ >X >X void ExtToInt(const char *Src,char *Dest) >X { >X+#ifdef WITH_ICONV >X+ static size_t ret; >X+ ret = (size_t)(-1); >X+ if (h_E2I != (iconv_t)(-1)) { >X+ static size_t inbytesleft, outbytesleft; >X+ >X+ inbytesleft = strlen(Src); >X+ outbytesleft = inbytesleft; >X+ ret = iconv(h_E2I, &Src, &inbytesleft, &Dest, &outbytesleft); >X+ } >X+ if (ret == (size_t)(-1)) strcpy(Dest, Src); >X+#else /* !WITH_ICONV */ >X #if defined(_WIN_32) >X CharToOem(Src,Dest); >X #else >X if (Dest!=Src) >X strcpy(Dest,Src); >X #endif >X+#endif /* !WITH_ICONV */ >X } >X >X >X void IntToExt(const char *Src,char *Dest) >X { >X+#ifdef WITH_ICONV >X+ static size_t ret; >X+ ret = (size_t)(-1); >X+ if (h_I2E != (iconv_t)(-1)) { >X+ static size_t inbytesleft, outbytesleft; >X+ >X+ inbytesleft = strlen(Src); >X+ outbytesleft = inbytesleft; >X+ ret = iconv(h_I2E, &Src, &inbytesleft, &Dest, &outbytesleft); >X+ } >X+ if (ret == (size_t)(-1)) strcpy(Dest, Src); >X+#else /* !WITH_ICONV */ >X #if defined(_WIN_32) >X OemToChar(Src,Dest); >X #else >X if (Dest!=Src) >X strcpy(Dest,Src); >X #endif >X+#endif /* !WITH_ICONV */ >X } >END-of-unrar-iconv/files/patch-iconv >echo x - unrar-iconv/Makefile >sed 's/^X//' >unrar-iconv/Makefile << 'END-of-unrar-iconv/Makefile' >X# New ports collection makefile for: unrar-iconv >X# Date created: 18 Oct 2007 >X# Whom: Yarodin <yarodin@gmail.com> >X# >X# $FreeBSD$ >X# >X >XPORTNAME= unrar >XPORTVERSION= 3.71.b1 >XCATEGORIES+= archivers >XMASTER_SITES= RAR >XPKGNAMESUFFIX= -iconv >XDISTNAME= unrarsrc-3.7.8 >X >XMAINTAINER= yarodin@gmail.com >XCOMMENT= Extract, view & test RAR archives with iconv support >X >XWRKSRC= ${WRKDIR}/unrar >X >XCONFLICTS?= zh-unrar-[0-9]* unrar-[0-9]* >XUSE_GMAKE= yes >X >XPLIST_FILES= bin/unrar >XPORTDOCS= license.txt readme.txt >X >Xpost-patch: >X @${SED} -e 's|g++|${CXX}|g' -e 's|-O2|${CXXFLAGS}|g' \ >X ${WRKSRC}/makefile.unix > ${WRKSRC}/Makefile >X >Xdo-install: >X ${INSTALL_PROGRAM} ${WRKSRC}/unrar ${PREFIX}/bin >X.if !defined(NOPORTDOCS) >X @${MKDIR} ${DOCSDIR} >X ${INSTALL_DATA} ${WRKSRC}/license.txt ${DOCSDIR} >X ${INSTALL_DATA} ${WRKSRC}/readme.txt ${DOCSDIR} >X.endif >X >X.include <bsd.port.mk> >END-of-unrar-iconv/Makefile >echo x - unrar-iconv/distinfo >sed 's/^X//' >unrar-iconv/distinfo << 'END-of-unrar-iconv/distinfo' >XMD5 (unrarsrc-3.7.8.tar.gz) = b783f1932bc0c73902c6399f7c2c6f43 >XSHA256 (unrarsrc-3.7.8.tar.gz) = 10476e8f0152830922d1038cbc852ec08cdbcd9945fa6b4b8aca16bb736084e9 >XSIZE (unrarsrc-3.7.8.tar.gz) = 131120 >END-of-unrar-iconv/distinfo >echo x - unrar-iconv/pkg-descr >sed 's/^X//' >unrar-iconv/pkg-descr << 'END-of-unrar-iconv/pkg-descr' >X The unRAR utility is a freeware program, distributed with source >X code and developed for extracting, testing and viewing the >X contents of archives created with the RAR archiver, version 1.50 >X and above. For the usage and distribution license please read the >X file LICENSE.TXT. >X >X The unRAR utility is a minor part of the RAR archiver and contains >X RAR uncompression algorithm. UnRAR requires very small volume of >X memory to operate. >X >X ADD: iconv support. See new switches la,ll,lo at unrar -? >X >XWWW: http://www.rarsoft.com/ >END-of-unrar-iconv/pkg-descr >exit
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 117290
: 81958