Subject: Re: libiconv breaks on Debian 3.1
To: Georg Schwarz <georg.schwarz@freenet.de>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 03/05/2005 18:20:37
On Sun, 6 Mar 2005, Georg Schwarz wrote:
> I am just building along pkgsrc on a newly installed Debian 3.1 (i386)
> system. I end up like this:
>
> ....
> ===> Returning to build of gettext-0.11.5nb5
> ===> Required package libiconv>=1.9.1nb4: NOT found
> ===> Verifying reinstall for ../../converters/libiconv
> ===> libiconv-1.9.2nb1 is not needed for Linux; it is included in GNU
> libc.
> *** Error code 1
> bmake: stopped in /home/schwarz/pkgsrc/converters/libiconv
>
> Oops, what is going wrong here?
I purposely used PKG_FAIL_REASON instead of PKG_SKIP_REASON to find out
what is forcing libiconv.
gettext needs gettext-lib which requires libiconv.
I also don't use gettext-lib because it is not needed under Linux.
I packaged up replace gettext related packages in pkgsrc-wip, but had some
slight issues and I never got around to updating pkgsrc.
As a workaround, please consider my patches below. I have been
using this for probably over a year (on NetBSD and Linux).
Index: devel/gettext/Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/devel/gettext/Makefile,v
retrieving revision 1.61
diff -b -u -r1.61 Makefile
--- devel/gettext/Makefile 3 Oct 2004 00:13:27 -0000 1.61
+++ devel/gettext/Makefile 6 Mar 2005 02:16:49 -0000
@@ -11,6 +11,9 @@
HOMEPAGE= http://www.gnu.org/software/gettext/gettext.html
COMMENT= Tools for providing messages in different languages
+CONFLICTS+= gettext-tools-[0-9]*
+CONFLICTS+= gettext-runtime-[0-9]*
+
DEPENDS+= gettext-m4-0.11.5:../../devel/gettext-m4
BUILDLINK_DEPENDS.gettext+= gettext-lib>=0.11.5
Index: devel/gettext-lib/Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/devel/gettext-lib/Makefile,v
retrieving revision 1.35
diff -b -u -r1.35 Makefile
--- devel/gettext-lib/Makefile 3 Dec 2004 15:14:54 -0000 1.35
+++ devel/gettext-lib/Makefile 6 Mar 2005 02:16:49 -0000
@@ -13,7 +13,13 @@
HOMEPAGE= http://www.gnu.org/software/gettext/gettext.html
COMMENT= Internationalized Message Handling Library (libintl)
+.include "../../mk/bsd.prefs.mk"
+.if ${OPSYS} == "Linux"
+PKG_FAIL_REASON+= "${PKGNAME} is not needed for Linux; it is included in GNU libc."
+.endif
+
CONFLICTS= gettext<=0.10.35
+CONFLICTS+= gettext-runtime-[0-9]*
PKG_INSTALLATION_TYPES= overwrite pkgviews
@@ -30,8 +36,6 @@
INSTALL_TARGET= install-exec
BUILD_DIRS= ${WRKSRC}/intl
-.include "../../mk/bsd.prefs.mk"
-
.if ${OPSYS} == "Darwin"
CPPFLAGS+= -D_INTL_REDIRECT_MACROS=1 -DSTATIC=static
.endif
Index: devel/gettext-lib/buildlink3.mk
===================================================================
RCS file: /cvsroot/pkgsrc/devel/gettext-lib/buildlink3.mk,v
retrieving revision 1.21
diff -b -u -r1.21 buildlink3.mk
--- devel/gettext-lib/buildlink3.mk 3 Oct 2004 00:13:27 -0000 1.21
+++ devel/gettext-lib/buildlink3.mk 6 Mar 2005 02:16:49 -0000
@@ -11,9 +11,8 @@
BUILDLINK_PACKAGES+= gettext
.if !empty(GETTEXT_BUILDLINK3_MK:M+)
-BUILDLINK_DEPENDS.gettext+= gettext-lib>=0.10.35nb1
-BUILDLINK_RECOMMENDED.gettext+= gettext-lib>=0.11.5nb4
-BUILDLINK_PKGSRCDIR.gettext?= ../../devel/gettext-lib
+BUILDLINK_DEPENDS.gettext+= gettext-runtime>=0.14.1
+BUILDLINK_PKGSRCDIR.gettext?= ../../wip/gettext-runtime
.endif # GETTEXT_BUILDLINK3_MK
# libiconv/buildlink3.mk is included by gettext-lib/builtin.mk
Index: devel/gettext-lib/builtin.mk
===================================================================
RCS file: /cvsroot/pkgsrc/devel/gettext-lib/builtin.mk,v
retrieving revision 1.17
diff -b -u -r1.17 builtin.mk
--- devel/gettext-lib/builtin.mk 11 Dec 2004 00:32:16 -0000 1.17
+++ devel/gettext-lib/builtin.mk 6 Mar 2005 02:16:50 -0000
@@ -29,10 +29,9 @@
. endif
. if !empty(IS_BUILTIN.gettext:M[yY][eE][sS])
# XXX
-# XXX Consider the native libintl to be gettext-lib-0.10.35nb1 until we
-# XXX find a way to more accurately determine the version.
+# XXX Consider the native libintl to be gettext-runtime-0.14.1
# XXX
-BUILTIN_PKG.gettext= gettext-lib-0.10.35nb1
+BUILTIN_PKG.gettext= gettext-runtime-0.14.1
BUILDLINK_VARS+= BUILTIN_PKG.gettext
. endif
.endif # IS_BUILTIN.gettext
@@ -91,7 +90,7 @@
fi
. endif
#
-# The listed platforms have an implementation of gettext that isn't
+# The listed platforms have an implementation of libintl that isn't
# GNUish enough.
#
_INCOMPAT_GETTEXT= SunOS-*-*
@@ -133,9 +132,9 @@
#
# Determine if we need to include the libiconv buildlink3.mk file.
# We need to if we're using the pkgsrc gettext, and the version is
-# at least gettext>=0.11.5nb1.
+# at least gettext-runtime>=0.14.1.
#
-_GETTEXT_ICONV_DEPENDS= gettext-lib>=0.11.5nb1
+_GETTEXT_ICONV_DEPENDS= gettext-runtime>=0.14.1
. if !defined(_GETTEXT_NEEDS_ICONV)
_GETTEXT_NEEDS_ICONV?= no
. for _depend_ in ${BUILDLINK_DEPENDS.gettext}
Index: devel/gettext-m4/Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/devel/gettext-m4/Makefile,v
retrieving revision 1.11
diff -b -u -r1.11 Makefile
--- devel/gettext-m4/Makefile 14 Oct 2004 16:04:49 -0000 1.11
+++ devel/gettext-m4/Makefile 6 Mar 2005 02:16:50 -0000
@@ -11,6 +11,7 @@
COMMENT= Autoconf/automake m4 files for GNU NLS library
CONFLICTS= gettext<=0.10.35nb1
+CONFLICTS+= gettext-tools-[0-9]*
PKG_INSTALLATION_TYPES= overwrite pkgviews
I also commented out the BUILD_DEPENDS of gettext in mk/automake.mk.
Jeremy C. Reed
BSD News, BSD tutorials, BSD links
http://www.bsdnewsletter.com/