Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 Mar 2002 18:28:11 +1100
From:      "Tim J. Robbins" <tim@robbins.dropbear.id.au>
To:        freebsd-standards@FreeBSD.ORG
Subject:   iconv utility and <iconv.h>
Message-ID:  <20020304182811.A29732@descent.robbins.dropbear.id.au>

index | next in thread | raw e-mail

[-- Attachment #1 --]
Hi,

Here's an implementation of the iconv utility as well as the <iconv.h> header
file and functions. For ease of testing, the iconv*() libc functions aren't
actually added to the library, they are just compiled with the utility.

A script in the tarball, unicode.pl, converts Unicode Consortium mapping
files into POSIX CHARMAP files. Some useful maps can be made from:
http://www.unicode.org/Public/MAPPINGS/
I think the licence on these files is liberal enough to allow them to be
included in FreeBSD.

There is also a UTF-8 CHARMAP file here:
http://www-124.ibm.com/developerworks/oss/cvs/locale/ul/src/cmap/charmap.utf8?sortby=rev
The licence on this file apparently isn't fit for src/ in general,
but maybe the src/gnu tree. This charmap file is *huge* and consumes a lot
of memory due to malloc() overhead and fixed-size buffers in the structures.
Using an arena allocator and string pooling would bring memory consumption
closer to the size of the file (~2.7MB).

Comments?


Tim

[-- Attachment #2 --]
<<WƖ+&5F;&ƄwDƦIMdPjK$};3H=,nO޹wfفݷ4o͝.wϿ賈+7u]m\~#͝U~Vۄoo75VgAxy	5|ޜG
sϏ8;1ȍuI//;lY,"ۥdE7lDXg_
	B7lå\Kaa\y|I.ql|x8)F(8o&/{QXẐ\80$I,X+B΃+A ij]Fx1<%knD{@pD.toƩ^]?m~gaX%C
9b`t8xkG=t{6~3nyp6G_#]$exw:4F#̓Ӟ	`Hgfwvd_`z9aぎL68f'
<v̞9~O:6}Dwd<<ulx:4$q`@̌FFoJ&vzG8#9ٷC,ѩqhtuvdtuO\
9<'^`46gcF
[uXo0"Lkg`,ǃ><#\m~~c@YJ\"/F1BSFVX!=?4w~6GF
vch<#q`m":(3Y證AF1BܗZuFGyɄkկȲn5[my0:d8gKӾNVhãJ^|o0 n\+s˾9[{؃`*&#x%7KJ;I:y.CN%M&k?92{#&jUԙ}iE^יS/i:{gQP?*!ԙ&$)i]_Q?=kog1{Omչ1(amL
:iYs`R+;Rx
654:]%@fal8q3b8q̔`b6Q`1J1Z('}22Ӆoiе4*L!4kixFpDYlS'oY0E+mlGnAI4<p9x:N/XjyŶeȋ`Gn
7E3sn.uVDA@ݝy
bŝ8$;~37<VֶqZwڵƸ v䅰N\,şA8"N8\ZE<Е:vg9	q1Y}1I*sQ[ËOkG.oD0'	2+D
wcߥ΁sPσg3ߚ?^fQ)tJ1VN?Q:lPq++D<%`]Xiq.NT`S
84(fj+t;afQ'"=Wfw~hl
VmJ&Z|ur"L_G~aٖ C?O!)*!v	Tu$G#PjhВN *_ٮR䡤Đz]c0Hv>>Ğ~=VŦy=j"hn@Fl|bP鋖3{_6DbBF̨a\ '^0_f810rVnsu
Ch"=W܁4r-G<S6AVb]Aw5ARhɶL$-V(#vxo@ )\FQK]3Dav-țd#B/\1:	VghPR+ޔUA19AP*fm"YVl*_9ܪ9R2Z0m;OS+_ n
̩kiIPQ5i Bq?t8<ci׼@bD8J<j|˧t3G*W]lO*!!5[AX^o(Y?_L.;
"Ar 6ʑt5Jz'r>.5F!LiNF+^D`-/{Wk˺Dw=tvAd)@s-Dr	ŗRR7 <NrgU,ϚӼa#G("mhTap1Pt<.@DL4iΡ'6:Hx%=9N:K!*`4sWΰ
t(AЗ֋[&س5-lŖUP(*z*R/O"bT֠fnr3fvp3oXjTT0//0.F.*zqjAI{9h+U`PD*D K»]⚓ؖh9_U Jw@=c=ɱ}Y.˛<)K
(YWP&*0TxOP*J,z`3scCB	AWg]tG	9gnV`+T	b-ܘϭ*0 Gym٪z*aFTTA0sɣ=bIwO=DS^SM	9./b>*OG>66ЗĠ!'XR_=䁡eu01bt5uk=V"Kterz)ͯjL[>B:=
ExnŮvI"WlS]l氝$x޷AcGc.Qκ0H!Eq5V㯋wng$TyСT|7!lbrFq
MY5So(BDgw;-
WpF٫WW2&55\_#*tFDd~e.^tȸp'T9x<#WUa9/8t%o"RJډZ̍E	L.~UЩ
%(+' .Y $5^z4(T/תK>uDf F)4|<EV;@D/~؃Xr#ޑT1w#)P0~o<<`ٗn~8
M|Q`@ZV	[a	!!'^x^Vb6/AKD%JnF xbGhb+ȳ4YURV3 r)+ZB>DAiqW!5fQeB]69Dd{E+4qMBEuCЬkzQ'^Sw׺X-}V
 a>EKh 66I祳LJ:rPK_(yN
UQeǩs*^b~5zo
1ɡh@AKO 53=cgS|>y_f""dCw€ڗQu
׷ֳmٔ?`Z'"*i
E}\[?Ġ<;:S
L8.Qeo湲髖{=
RuM'e*^scQk03IQnWUqLB,c9v3E}QKC/?oӰ_COƱlTn*P\<T1EӟG|Vk^nQW*m=+cn
^YzO7i,mj"XZ/x5`ZY
ZNͻ6"+^13wp2,X^/CvGe:'+FbBcbXGKD>oͦ˕iʔN'sX屒Sid]s.?EH#ͫ8(?
Z~KBi4uZ'pѵLb1W+9L}#P;2𬔖s7ƫ09Sy[FP)U'	ZaԽJW}[
g15H\d;d+h|[AA $	
<bS̲	J\(?7qv?8tPA0p7_B(yK@yHzk@R"I܃BHx@w^Bpua=u ]"2F]	]
K^	̑NȾd:
}p0{Kkוz8zLk8zLӗW۵q"NWֲklM=@%Ap2J=FA?ͻ|w-(
0
TM$áIf	!E+uǕ/IWE֍tRpCꝰru8xѐ8$[50逴㢮,tFm#z fQ9Vb'|1njޕ;9EWڀt&V ( B\d9bYFgBԺhz]9 4cSGUP\9L`Ph<uH"ó4.#[S AFl&\"v ÐA@@{hOԥ~<vEAZ@%(GOuYZM,RL@:UVUK
R5ҝ]Q#cZ1_bs@"#dC3ǁdS$eD,ʪ;7k
CCc|6쳷ޙ1Ze$Yy\}L(ңt|x5.Oq~$b=`&\B(q0cu6x0ш#%7	jO/mPR`kn$$=6lrmɶd%"L݈`zQXIT,yX݄U_üBrYan<@,gN<_漣ZA]R̓Qϋ#dWax`@T
ƻHhS
ʻ(-=#vGIW@*IG	իύQF8<.cXy
փZ+?+<:NCv)?S֍
[lF|tK$+$H:GIy8Mq4&5Z:@^-LG8n+rdV	VҌݽF*܂%XE'kI$}`ӲbaK9c
G86<_(rכG<2lQa<͟^ÒDwnDzĥKdK<RF9MD1gV|ƒ9[LNJ!aLD
),0me
2-/v%,*(@4:S[?z(䋯,oF?>`bmlbօxfaօ
`PUQ݈|*˷,!q6YN@s4Y$e{iZ{mwiAoSq$ے7q:ԱSOc3mf@<lǝt6vsoOwZNӍGhdzo_	'[CJ5Uj' 3ߓwX֫ۏep<gyP6A^ +EsXz/
;EZ9>hm<`AmOe뛚䲂	⃥	*ZEN
S'LCrIErXWbB.PU_Էj+Z&
t2QR/;-G:Ik2C_Iv,Q5sW|Eo7ʘ}y-x'
ne9J;<[eE=;-ўt,(xNv"KWeBZ>[%R[9~=+w\a,=(WL[1
ulvn_;4FlBlO
/?fI!9F]l֎QEbwrx@+9_'K_׬SdX^˺xȦVx)P`ZoGj[ڽ*ֲ~lin
>	?7%s]||e&yC?U_
>4	c=?c?_?)`2F;Sm>\9p`.g҅+VLs,b'_;9h;bnꤵ!mL,6E?1@8eS T|́BxJ7U	
?AKWʶ	0qП.'6K2wգxR/08I
^|>#c6c	d
G0!Zftƌ5K:҂8D́".d8k9-xHo:0׹;-i6lx:
!r-Dq "t
hhj
R<F iBg0R0BB4%Rx<&Xu*&^B+kdKPU0*A]OQz
!Mб&
56-8,Ps,(g[r\Xijy"^~5udx#ՊH4ݷ`f|8zwx<'YJKE\r@PQҔFI9@	y@夗trD'#G	4IaԏhuVI*5JTk$ڈD7bNb!3W*L
4N$9jiU
Μ(4k47Ba5Aװ<.,5mHzM}k=›_zlRlu Q	:b_¯<ˤ=	][bAs4_F̊ឥ
ĝ(עC$d9H
ꯓ&qRƐ!C2dȐ!C2dȐ!C2djB
help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020304182811.A29732>