bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#65325: "make check" hangs on Cygwin


From: Ken Brown
Subject: bug#65325: "make check" hangs on Cygwin
Date: Fri, 18 Aug 2023 18:02:46 -0400
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.14.0

On 8/16/2023 1:49 PM, Ken Brown wrote:
On 8/16/2023 11:23 AM, Ken Brown wrote:
On 8/16/2023 7:54 AM, Eli Zaretskii wrote:
From: Bruno Haible <bruno@clisp.org>
Date: Wed, 16 Aug 2023 00:08:08 +0200

Building Emacs (git sources from today) on Cygwin 2.9.0/x86_64:

This is a pretty old Cygwin release.

1. I configured in a subdirectory (VPATH build) with options
      --disable-silent-rules --without-all --without-x
2. "make" succeeds.
3. "make check" leads to a process that is stuck, does not continue
    for several hours. It does not eat much CPU time, but nevertheless,
    something is blocked. Log file 'make-check.log' is attached.

Thanks.  Alas, the maintainer of Cygwin Emacs (CC'ed) has been silent
for quite some time, so I'm not sure when and how this could be
addressed.

I'll test this using the current Cygwin release.

I can reproduce the hang.  But I don't get the hang in the default build on my system (no configure options).  I'll have to play with the configure options and try to figure out what's going on.

OK, the hang in server-tests.el [and a similar hang in keyboard-tests.el] occurs when getchar is called at keyboard.c:3978. This call only occurs if dbus, file notification, and threads are all disabled, i.e., if the configure options without-dbus, without-file-notification, and without-threads are all specified or implied. I don't understand the keyboard code well enough to know (a) why we reach that call to getchar in the context of the hanging tests and (b) why getchar is only called in the absence of dbus, file notification, and threads.

I can work around the problem by always avoiding that getchar call on Cygwin (i.e., by adding "&& !defined CYGWIN" at line 3972). With that change, all tests pass on Cygwin with Bruno's configure options. But I don't want to make that change without understanding what's going on. Can anyone help?

Ken






reply via email to

[Prev in Thread] Current Thread [Next in Thread]