From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7976 invoked from network); 1 Jun 1998 11:05:23 -0000 Received: from math.gatech.edu (list@130.207.146.50) by ns1.primenet.com.au with SMTP; 1 Jun 1998 11:05:23 -0000 Received: (from list@localhost) by math.gatech.edu (8.8.5/8.8.5) id GAA27644; Mon, 1 Jun 1998 06:52:34 -0400 (EDT) Resent-Date: Mon, 1 Jun 1998 06:52:34 -0400 (EDT) Message-ID: <000d01bd8d4a$379e4ee0$21c9ca95@ao13.mow.sni.de> From: "Andrej Borsenkow" To: "Zefram" , Subject: URGENT: Please, backout change (Re: zsh-3.1.4 released) Date: Mon, 1 Jun 1998 14:44:11 +0400 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.2106.4 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.2106.4 Sender: zefram@tao.co.uk Resent-Message-ID: <"S4S0c1.0.tl6.nVeSr"@math> Resent-From: zsh-workers@math.gatech.edu X-Mailing-List: archive/latest/4011 X-Loop: zsh-workers@math.gatech.edu Precedence: list Resent-Sender: zsh-workers-request@math.gatech.edu Because I am responsible for this change, I request to backout it: Mon May 25 21:13:41 1998 Andrew Main * Src/mkmakemod.sh, configure.in, aczsh.m4: Link modules against $(LIBS), and include -lc in $(LIBS), in case a module requires a function that only exists in static libraries. It breaks environment in ZSH. It happens as following: as said, our systems have two libc - dynamic libc.so.1 and static libc.so (yes, it *is* ar lib, but called so :) Unfortunately, _environ is located in static libc. If I try to link shared libray, which is using _environ, with libc, the following happens: 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. This problem is not specific to ZSH - every now and then it comes up e.g. with Perl, or any software, which is using shared libs. Unfortunately, there is no clean way to autoconf it. Dynamic loading runs on MIPS line (Reliant UNIX) without this change; it is possible to make it running on Intel line (SINIX-L/SINIX-M) but with many eforts (actually, only one module has to be linked with -lc) ... I personally would simply disallow dynamic loading on i386-sni-sysv4 - or at least to put it in NEWS or FAQ. Thank you A. Borsenkow