From xemacs-m  Mon Dec 30 12:42:11 1996
Received: from cdc.noaa.gov (manager.Colorado.EDU [128.138.218.210])
          by xemacs.cs.uiuc.edu (8.8.4/8.8.4) with SMTP
	  id MAA16482 for <xemacs-beta@xemacs.org>; Mon, 30 Dec 1996 12:42:09 -0600 (CST)
Received: from charney by cdc.noaa.gov (SMI-8.6/SMI-SVR4)
	id LAA19125; Mon, 30 Dec 1996 11:42:11 -0700
Received: by charney (SMI-8.6) id LAA24176; Mon, 30 Dec 1996 11:42:10 -0700
Sender: mdb@cdc.noaa.gov
To: xemacs-beta@xemacs.org
Subject: Re: 19.15b5 timer fix
References: <E0vcG3N-0002Pf-00@chekov.ctd.comsat.com>
	<m27mm9m4hd.fsf@altair.xemacs.org>
	<vku3pd6nru.fsf@suomi.i-have-a-misconfigured-system-so-shoot-me>
	<m2d8vsiu4n.fsf@altair.xemacs.org>
Organization: CIRES, University of Colorado
X-Attribution: mb
From: Mark Borges <mdb@cdc.noaa.gov>
Date: 30 Dec 1996 11:42:09 -0700
In-Reply-To: Steven L Baur's message of 29 Dec 1996 19:33:12 -0800
Message-ID: <vkg20nx4am.fsf@cdc.noaa.gov>
Lines: 74
X-Mailer: Gnus v5.2.40/XEmacs 19.15

>> On 29 Dec 1996 19:33:12 -0800,
>> Steven L Baur(sb) wrote:
>>>>>> "mb" == Mark Borges <mdb@cdc.noaa.gov> writes:
>>>>>> "Neal" == Neal Becker <neal@ctd.comsat.com> writes:

Neal> A long-standing consistent problem is shown by M-x grep, with no
Neal> matches.  The line saying:

Neal> grep finished with no matches found at Mon Dec 23 14:27:13

Neal> will not be displayed until xemacs feels good and ready.  I was
Neal> hoping 19.15b5 would fix it.  It doesn't.

sb> Do you ever see this on Linux, or just HP/UX?

mb> FWIW, I see it under Solaris-2.5.

sb> Ben suggested to me offline that this might be fixed by defining
sb> BROKEN_SIGCHLD.  (Add a -DBROKEN_SIGCHLD to cflags, or put it in your
sb> src/s/system.h file).

sb> Does that make things any better?

I don't know about Neal, but doesn't this #define lead to the 10% CPU
chewage discussed a while back?

------------------------------------------------------------------------------
$ tail src/s/sol2-5.h
long random (void);
void srandom (unsigned int seed);
#endif /* NOT_C_CODE */
/* 2.5 now has random back in libc but we don't want to use it. */
#undef HAVE_RANDOM
/* Apparently this is not necessary here, and it causes 10% CPU
   chewage. */
#undef BROKEN_SIGCHLD
$ 
------------------------------------------------------------------------------

The #undef is present because src/s/sol2-4.h (which is included by
src/s/sol2-5.h) does this:

------------------------------------------------------------------------------
/* XEmacs addition: Raymond Toy says XEmacs completely misses SIGCHLD
   when compiled with GCC 2.7.0 (but not, apparently, with SunPro C?),
   X11R6, and Solaris 2.4.
   Someone else submitted a simple test program that duplicates this
   behavior, and says it has something to do with the fact that X11R6
   links with the threads library. */
#ifdef THIS_IS_X11R6
#define BROKEN_SIGCHLD
#endif
------------------------------------------------------------------------------

(I'm using X11R6.1 here).

But, this may all be moot (for me anyway), as the problem only appears
when CDE is autodetected -- this causes /usr/openwin/lib/libX11.so.4
to be linked in. The net result is that I have an XEmacs binary that
uses both the X11R6.1 and X11R5 libX11.so shared library. This strikes
me as not good.

So, I recompiled explicitly turning off CDE (`--with-cde=no'), and now
only X11R6.1's libX11.so is linked. Now, `M-x grep' does return on the
next event (mouse-click, or cursor movement) in the dired window. I
have yet to see the previous lossage I reported in beta5.

Still not ideal, but I'm using the dired distributed with efs-1.14,
which may be relevant as it does return by itself in a reasonable
amount of time using `xemacs -q'. I'll retest with efs-1.15 when it
becomes available.

-- 
  -mb-

