<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Something Similar &#187; iconv</title>
	<atom:link href="http://somethingsimilar.com/category/iconv/feed/" rel="self" type="application/rss+xml" />
	<link>http://somethingsimilar.com</link>
	<description>Just like it.</description>
	<lastBuildDate>Tue, 08 Sep 2009 16:30:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>libiconv and rFeedParser</title>
		<link>http://somethingsimilar.com/2007/07/22/libiconv-and-rfeedparser/</link>
		<comments>http://somethingsimilar.com/2007/07/22/libiconv-and-rfeedparser/#comments</comments>
		<pubDate>Sun, 22 Jul 2007 21:43:00 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[iconv]]></category>
		<category><![CDATA[rfeedparser]]></category>

		<guid isPermaLink="false">http://www.somethingsimilar.com/wordpress/2007/07/22/libiconv-and-rfeedparser/</guid>
		<description><![CDATA[I got a chance to read libiconv&#8217;s DESIGN document (found in the tarball) and noticed this passage:


  Extensibility
  
  The dlopen(3) approach is good for guaranteeing extensibility if the iconv
   implementation is distributed without source. (Or when, as in glibc, you
   cannot rebuild iconv without rebuilding your libc, [...]]]></description>
			<content:encoded><![CDATA[<p>I got a chance to read <a href="http://www.gnu.org/software/libiconv/">libiconv</a>&#8217;s DESIGN document (found in the <a href="http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.11.tar.gz">tarball</a>) and noticed this passage:</p>

<blockquote>
  <p>Extensibility</p>
  
  <p>The dlopen(3) approach is good for guaranteeing extensibility if the iconv
   implementation is distributed without source. (Or when, as in glibc, you
   cannot rebuild iconv without rebuilding your libc, thus possibly
   destabilizing your system.)</p>
  
  <p>The libiconv package achieves extensibility through the LGPL license:
   Every user has access to the source of the package and can extend and
   replace just libiconv.so.</p>
  
  <p>The places which have to be modified when a new encoding is added are as
   follows: add an #include statement in iconv.c, add an entry in the table in
   iconv.c, and of course, update the README and iconv_open.3 manual page.</p>
</blockquote>

<p>The upshot of this is that adding new encodings through some <code>iconv-encodings</code> package will be a pain in the ass and would cause breakage in unexpected, fascinating ways.  But, there are smarter people than I out there, and maybe something can still be done.</p>

<p>Of course, this also means that we would not get FreeBSD &#8220;for free&#8221; (though, I imagine <code>xmlparser</code> doesn&#8217;t build on it, anyway) and we would have to come up with a solution for it as well.  </p>

<p>What a mess.</p>
]]></content:encoded>
			<wfw:commentRss>http://somethingsimilar.com/2007/07/22/libiconv-and-rfeedparser/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
