From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7987 invoked from network); 1 Jun 1998 11:09:20 -0000 Received: from math.gatech.edu (list@130.207.146.50) by ns1.primenet.com.au with SMTP; 1 Jun 1998 11:09:20 -0000 Received: (from list@localhost) by math.gatech.edu (8.8.5/8.8.5) id HAA28047; Mon, 1 Jun 1998 07:02:26 -0400 (EDT) Resent-Date: Mon, 1 Jun 1998 07:02:26 -0400 (EDT) From: Zefram Message-Id: <199806011103.MAA06968@taos.demon.co.uk> Subject: Re: URGENT: Please, backout change (Re: zsh-3.1.4 released) To: borsenkow.msk@sni.de (Andrej Borsenkow) Date: Mon, 1 Jun 1998 12:03:02 +0100 (BST) Cc: zsh-workers@math.gatech.edu In-Reply-To: <000d01bd8d4a$379e4ee0$21c9ca95@ao13.mow.sni.de> from "Andrej Borsenkow" at Jun 1, 98 02:44:11 pm X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Resent-Message-ID: <"xrNHE3.0.7s6.1feSr"@math> Resent-From: zsh-workers@math.gatech.edu X-Mailing-List: archive/latest/4012 X-Loop: zsh-workers@math.gatech.edu Precedence: list Resent-Sender: zsh-workers-request@math.gatech.edu Andrej Borsenkow wrote: > the code in libzsh gets its own static copy of _environ > startup code in zsh is linked with it's own static copy of _environ > which results in every copy of ZSH starting with blank (at the best) >environment pointer. Hmmmm. We need to link modules against $LIBS for other reasons too (it's the only way to being in the right libraries in some cases), so we can't really back that out. It seems that this is a problem where static modifiable library data (such as environ) appears only in statically linked libraries. My feeling is that this arrangement of libraries means that shared libraries are hopelessly broken, so we shouldn't try to cater for these systems (not that we reasonably can). >Unfortunately, there is no clean way to autoconf it. We can, but only for specific symbols. All we need is to compile an executable and library with references to environ, load them both, and compare the environ pointers. If they differ, then shared libraries are broken. Do this for all symbols that are a problem on any system. Until someone writes this autoconf test, just don't use --enable-dynamic on systems that exhibit this lossage. -zefram