From owner-freebsd-current Mon Apr 22 14:27:48 2002 Delivered-To: freebsd-current@freebsd.org Received: from khavrinen.lcs.mit.edu (khavrinen.lcs.mit.edu [18.24.4.193]) by hub.freebsd.org (Postfix) with ESMTP id DE99237BBC1 for ; Mon, 22 Apr 2002 14:25:39 -0700 (PDT) Received: (from wollman@localhost) by khavrinen.lcs.mit.edu (8.11.4/8.11.6) id g3MLOkJ03799; Mon, 22 Apr 2002 17:24:46 -0400 (EDT) (envelope-from wollman) Date: Mon, 22 Apr 2002 17:24:46 -0400 (EDT) From: Garrett Wollman Message-Id: <200204222124.g3MLOkJ03799@khavrinen.lcs.mit.edu> To: John Hay Cc: freebsd-current@FreeBSD.ORG Subject: Re: new expr(1) behaviour breaks libtool In-Reply-To: <200204211817.g3LIHTQ18310@zibbi.icomtek.csir.co.za> References: <20020421124321.T29857@espresso.q9media.com> <200204211817.g3LIHTQ18310@zibbi.icomtek.csir.co.za> Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG < said: >> > expr -lgrove : -l\(.*\) >> > expr -- -L/export/ports/textproc/jade/work/jade-1.2.1/lib/.libs : -l\(.*\) >> > If we are going to leave this behaviour, we will have to teach libtool >> > how to call expr(1) differently on -stable and -current and it looks >> > like yet again different from the rest of the world. :-((( No, you just have to teach libtool to properly protect the arguments to expr(1). libtool 1.4 does this for some numeric operations, but not for string parsing. expr(1) goes into some detail about this, but the simple answer is: expr "X$arg" : 'X-l\(.*\)' is what's required. (There is nothing special about the character `X', other than it not being a hyphen.) I have just committed code to expr which will cause it to behave more like the old expr did in the presence of an EXPR_COMPAT environment variable. Ports can then be set up to build with this variable defined until the libtool maintainers fix up their act. -GAWollman To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message