Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Aug 2010 21:14:20 +0200
From:      Emanuel Haupt <ehaupt@FreeBSD.org>
To:        Jeremy Chadwick <freebsd@jdc.parodius.com>
Cc:        Garrett Wollman <wollman@khavrinen.csail.mit.edu>, Alex, Emanuel Haupt <ehaupt@FreeBSD.org>, freebsd-ports@FreeBSD.org, Goncharov <alex-goncharov@comcast.net>
Subject:   Re: shells/bash and the libiconv dependency mess
Message-ID:  <20100824211420.3ecced97.ehaupt@FreeBSD.org>
In-Reply-To: <20100824153157.GA63745@icarus.home.lan>
References:  <20100817060114.GA86738@icarus.home.lan> <20100824153157.GA63745@icarus.home.lan>

next in thread | previous in thread | raw e-mail | index | archive | help
Jeremy Chadwick <freebsd@jdc.parodius.com> wrote:
> On Mon, Aug 16, 2010 at 11:01:14PM -0700, Jeremy Chadwick wrote:
> > Let me explain what transpired in chronological order:
> > 
> > On 2010/05/11, ehaupt committed the following patch:
> > 
> > http://www.freebsd.org/cgi/cvsweb.cgi/ports/shells/bash/files/patch-Makefile.in
> > 
> > And bumped PORTREVISION (from 0 to 1) in the Makefile.  This
> > unconditionally made bash require libiconv, and the only
> > justification is "fix statically linked version".
> > 
> > Those of us who use WITHOUT_NLS or who do not have libiconv already
> > on their systems (from another port) immediately notice the problem
> > (bash will no longer build):
> > 
> > http://www.freebsd.org/cgi/query-pr.cgi?pr=147747
> > http://www.freebsd.org/cgi/query-pr.cgi?pr=148329
> > http://www.freebsd.org/cgi/query-pr.cgi?pr=149218
> > 
> > Three months goes by and finally something is committed to fix the
> > problem on 2010/08/06.  Except the fix doesn't make any sense; all
> > it does is make libiconv a mandatory dependency (USE_ICONV):
> > 
> > http://www.freebsd.org/cgi/cvsweb.cgi/ports/shells/bash/Makefile#rev1.123
> > 
> > This, of course, means that WITHOUT_NLS is broken and doesn't work
> > as it's supposed to, since libiconv is now a mandatory requirement
> > (it doesn't need to be):
> > 
> > # make WITHOUT_NLS=true all-depends-list
> > /usr/ports/devel/bison
> > /usr/ports/converters/libiconv
> > /usr/ports/devel/m4
> > /usr/ports/devel/libtool22
> > 
> > Why was this done the way it was?  patch-Makefile.in should be
> > removed and instead replaced with a REINPLACE_CMD that handles the
> > conditionals (WITH_STATIC_BASIC, WITHOUT_NLS, etc.) in a more clean
> > manner.
> > 
> > And where are the details of the supposed "statically linked
> > version" problem?
> > 
> > Sorry if I sound angry, but this whole situation is a mess, and
> > shells/bash is a very important port.  If someone wants me to put my
> > money where my mouth is and go + clean it up I'll be happy to.
> > Testing all the different quirk combinations really isn't that
> > complex.
> 
> Since I didn't really get any answers regarding this predicament, I
> went ahead and did the necessary effort.  Below are my QA notes.  The
> patch is available here:
> 
> http://jdc.parodius.com/freebsd/bash-without-nls.patch

The patch works for me. One minor thing, PORTREVISION should be bumped.

> Please note the required removal of files/patch-Makefile.in.
> 
> I can file a PR for all this if need be, just let me know.

Please do that, that way I can commit the patch after a 14 day
maintainer timeout.

Emanuel



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