From owner-freebsd-ports@FreeBSD.ORG Tue Aug 24 19:14:40 2010 Return-Path: Delivered-To: freebsd-ports@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D41641065695; Tue, 24 Aug 2010 19:14:40 +0000 (UTC) (envelope-from ehaupt@FreeBSD.org) Received: from mx.critical.ch (cl-8.zrh-02.ch.sixxs.net [IPv6:2001:1620:f00:7::2]) by mx1.freebsd.org (Postfix) with ESMTP id 53BA48FC1D; Tue, 24 Aug 2010 19:14:40 +0000 (UTC) Received: from beaver.home.critical.ch (80-218-148-45.dclient.hispeed.ch [80.218.148.45]) (authenticated bits=0) by mx.critical.ch (8.14.3/8.14.3/critical-1.0) with ESMTP id o7OJEWwU071918; Tue, 24 Aug 2010 21:14:32 +0200 (CEST) (envelope-from ehaupt@FreeBSD.org) Date: Tue, 24 Aug 2010 21:14:20 +0200 From: Emanuel Haupt To: Jeremy Chadwick 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> X-Mailer: Sylpheed 3.0.3 (GTK+ 2.20.1; amd64-portbld-freebsd8.1) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: Garrett Wollman , Alex, Emanuel Haupt , freebsd-ports@FreeBSD.org, Goncharov Subject: Re: shells/bash and the libiconv dependency mess X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Aug 2010 19:14:40 -0000 Jeremy Chadwick 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