Subject: Re: looking for Linux testers: libiconv package on glibc systems
To: None <tech-pkg@netbsd.org, pkgsrc-wip-discuss@lists.sourceforge.net>
From: Sebastian Prause <sebastian-p@gmx.net>
List: tech-pkg
Date: 03/20/2004 14:58:31
* Jeremy C. Reed <reed@reedmedia.net> wrote:
| glibc since 2.1 (December 1997) provides iconv() conversion functions.
| (And has been improved since then.)
|
| glibc also provides iconv(1) tool.
|
| I don't know which other libc's provide good iconv() and iconv
| tool. But most (all?) Linux distributions don't ship libiconv libraries.
|
| And as far as I can tell the libcharset library is not needed with glibc.
|
| Even with USE_GNU_ICONV set, the package is probably not needed on a glibc
| system. Maybe USE_GNU_ICONV is deprecated? I think only editors/abiword,
| editors/abiword1 and converters/wv2 use it.
|
| Can anyone using Linux with pkgsrc please try removing your libiconv
| package and use the native glibc support instead?
|
| Please use this patch to make sure:
|
| Index: converters/libiconv/Makefile
| ===================================================================
| RCS file: /cvsroot/pkgsrc/converters/libiconv/Makefile,v
| retrieving revision 1.24
| diff -b -u -r1.24 Makefile
| --- converters/libiconv/Makefile	2 Mar 2004 05:01:38 -0000	1.24
| +++ converters/libiconv/Makefile	20 Mar 2004 04:29:10 -0000
| @@ -10,6 +10,12 @@
|  HOMEPAGE=		http://www.gnu.org/software/libiconv/
|  COMMENT=		Character set conversion library
|
| +.include "../../mk/bsd.prefs.mk"
| +.if ${OPSYS} == "Linux"
| +# don't use PKG_SKIP_REASON yet so we can make sure the buildlinking is correct
| +PKG_FAIL_REASON+=	"${PKGNAME} is not needed for Linux; it is included in GNU libc."
| +.endif
| +
|  PKG_INSTALLATION_TYPES=	overwrite pkgviews
|
|  USE_BUILDLINK3=		YES
|

I tried that with audio/vorbis-tools (which depends on libiconv via
buildlink3). Trying to install without touching anything gives the
expected error message from your patch:

===> Required package libiconv>=1.9.1: NOT found
===> Verifying reinstall for ../../converters/libiconv
===> libiconv-1.9.1nb1 is not needed for Linux; it is included in GNU
libc.
*** Error code 1
[...]

Now using either "bmake PREFER_NATIVE=iconv" or "bmake USE_GNU_ICONV=YES
PREFER_NATIVE=iconv" makes the build succeed. (Using only "bmake
USE_GNU_ICONV=YES" fails with above error message, too).

devel/glib2 works, too, so I guess libiconv it's not needed on Linux with 
glibc

   -- Sebastian Prause