delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2012/12/06/22:15:01

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-3.3 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,RP_MATCHES_RCVD,SPF_NEUTRAL
X-Spam-Check-By: sourceware.org
Message-ID: <50C15EF4.7070703@cornell.edu>
Date: Thu, 06 Dec 2012 22:13:56 -0500
From: Ken Brown <kbrown AT cornell DOT edu>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120824 Thunderbird/15.0
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
CC: Daniel Colascione <dancol AT dancol DOT org>
Subject: Re: Updated: emacs*-24.2.90-1 (TEST)
References: <announce DOT 50BB4D0D DOT 7010204 AT cornell DOT edu> <loom DOT 20121203T102613-270 AT post DOT gmane DOT org> <loom DOT 20121206T085349-191 AT post DOT gmane DOT org> <50C08983 DOT 8000806 AT cornell DOT edu> <87ip8f10hc DOT fsf AT Rainer DOT invalid> <50C1076F DOT 3000107 AT cornell DOT edu> <50C10D43 DOT 2070804 AT dancol DOT org>
In-Reply-To: <50C10D43.2070804@dancol.org>
X-PMX-CORNELL-SPAM-CHECKED: Pawpaw
X-Original-Sender: kbrown AT cornell DOT edu - Thu Dec 6 22:14:42 2012
X-PMX-CORNELL-REASON: CU_White_List_Override
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On 12/6/2012 4:25 PM, Daniel Colascione wrote:
> Thanks for highlighting the issue.
>
> On 12/6/12 1:00 PM, Ken Brown wrote:
>> On 12/6/2012 1:47 PM, Achim Gratz wrote:
>>> Ken Brown writes:
>>>> emacs-w32 shouldn't require dbus-daemon, as far as I know.  This
>>>> sounds like a bug.  Could you give me a specific recipe for
>>>> reproducing the problem?
>>>
>>> Just make sure Cygwin has cleanly terminated, then open a mintty (I use
>>> tcsh if that has a bearing on this bug) and start emacs-w32 from it.
>>> Toggle the menu bar if it's not already on an select File->Open from
>>> it.
>>> Open another mintty and try to kill the hanging emacs process from it.
>
> Works fine for me, albeit using kill -9, not regular kill. What
> exactly do you see? According to a message upthread, Emacs hangs hard
> any time you try to open a dialog box. Can you please attach gdb to
> Emacs when it's in this state and get a backtrace?
>
> If these problems persist, my first instinct would be to not support
> dbus in cygw32 builds of Emacs. People mostly use dbus to integrate
> components of a Unixish desktop environment, and I imagine users of
> cygw32 want to use Cygwin Emacs as part of a Windowsish desktop
> environment, which uses USER32 facilities to do what other
> environments do with dbus.

D-Bus support is not the issue.  Even emacs-nox supports D-Bus, and it 
has done so for more than 2 years.  In other words, you can use all the 
features of dbus.el if you want.

The issue here is completely different.  It's that something in the 
cygw32 build of emacs is making emacs think it *needs* a D-Bus daemon, 
even though the user has not tried to use dbus.el, and even though the 
cygw32 build should work without a D-Bus daemon.

And I've just discovered what that something is:  After the cygw32 build 
is configured, HAVE_GSETTINGS and HAVE_GCONF are defined to be 1 in 
src/config.h (assuming you have the relevant -devel packages installed). 
  And GSettings and GConf are Glib features that require a D-Bus daemon.

A workaround is to add the configure options --without-gsettings and 
--without-gconf, but that shouldn't be necessary.  If the --with-w32 
option is given, then configure shouldn't even be checking for GSettings 
and GConf.  Can you fix this?  I thought the following patch would fix 
it, but it doesn't:

=== modified file 'configure.ac'
--- configure.ac        2012-12-05 04:05:57 +0000
+++ configure.ac        2012-12-07 03:02:33 +0000
@@ -1603,6 +1603,8 @@
  if test "${HAVE_W32}" = "yes"; then
    window_system=w32
    with_xft=no
+  with_gsettings=no
+  with_gconf=no
  fi

  ## $window_system is now set to the window system we will

Ken

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019