Subject: Re: libiconv breaks on Debian 3.1
To: Jeremy C. Reed <reed@reedmedia.net>
From: Georg Schwarz <georg.schwarz@freenet.de>
List: tech-pkg
Date: 03/06/2005 16:16:28
Installed the changes as you describe and added wip to pkgsrc.
However, now I end up like this:
...
===> Registering installation for gettext-runtime-0.14.1
gettext-runtime-0.14.1 requires installed package pkg_install-info-4.5nb3
===> Returning to build of lynx-2.8.5.2nb1
===> Required installed package openssl>=0.9.7d: openssl-0.9.7enb1 found
===> 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
Stop.
bmake: stopped in /home/schwarz/pkgsrc/converters/libiconv
another attempt:
schwarz@takaoka:~/pkgsrc/www/lynx$ /usr/local/pkg/bin/bmake
===> *** No /usr/src/pkgsrc/pkgsrc/distfiles/pkg-vulnerabilities file found,
===> *** skipping vulnerability checks. To fix, install
===> *** the pkgsrc/security/audit-packages package and run
===> *** '/usr/local/pkg/sbin/download-vulnerability-list'.
=> Checksum SHA1 OK for lynx/lynx2.8.5.tar.bz2.
=> Checksum RMD160 OK for lynx/lynx2.8.5.tar.bz2.
=> Checksum SHA1 OK for lynx/2.8.5rel.2.patch.gz.
=> Checksum RMD160 OK for lynx/2.8.5rel.2.patch.gz.
===> Extracting for lynx-2.8.5.2nb1
===> Required installed package gettext-runtime>=0.14.1: gettext-runtime-0.14.1 found
===> Required installed package openssl>=0.9.7d: openssl-0.9.7enb1 found
===> Required package gettext>=0.10.35nb1: NOT found
===> Verifying reinstall for ../../devel/gettext
===> *** No /usr/src/pkgsrc/pkgsrc/distfiles/pkg-vulnerabilities file found,
===> *** skipping vulnerability checks. To fix, install
===> *** the pkgsrc/security/audit-packages package and run
===> *** '/usr/local/pkg/sbin/download-vulnerability-list'.
=> Checksum SHA1 OK for gettext-0.11.5.tar.gz.
=> Checksum RMD160 OK for gettext-0.11.5.tar.gz.
===> Extracting for gettext-0.11.5nb5
===> Required installed package gettext-m4-0.11.5: gettext-m4-0.11.5 found
===> Required installed package pkg_install-info-[0-9]*: pkg_install-info-4.5nb3 found
===> Required package gettext-lib>=0.11.5: NOT found
===> Verifying reinstall for ../../wip/gettext-runtime
===> *** No /usr/src/pkgsrc/pkgsrc/distfiles/pkg-vulnerabilities file found,
===> *** skipping vulnerability checks. To fix, install
===> *** the pkgsrc/security/audit-packages package and run
===> *** '/usr/local/pkg/sbin/download-vulnerability-list'.
===> Installing for gettext-runtime-0.14.1
===> Becoming root@takaoka to install gettext-runtime.
/bin/su Password:
===> gettext-runtime-0.14.1 is already installed - perhaps an older version?
*** If so, you may use either of:
*** - "pkg_delete gettext-runtime-0.14.1" and "/usr/local/pkg/bin/bmake reinstall" to upgrade properly
*** - "/usr/local/pkg/bin/bmake update" to rebuild the package and all of its dependencies
*** - "/usr/local/pkg/bin/bmake replace" to replace only the package without re-linking
*** dependencies, risking various problems.
*** Error code 1
> 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/
>
>
>
>
>
>
>
--
Georg Schwarz http://home.pages.de/~schwarz/
georg.schwarz@freenet.de +49 178 8545053