unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
@ 2011-12-29 14:06 Daniel Colascione
  2012-04-10 23:26 ` Lars Magne Ingebrigtsen
  2012-04-11 11:44 ` Lars Magne Ingebrigtsen
  0 siblings, 2 replies; 17+ messages in thread
From: Daniel Colascione @ 2011-12-29 14:06 UTC (permalink / raw)
  To: 10398

In Cygwin 1.7, vfork is an alias for fork.  The vfork the #define in
cygwin.h was protecting against is gone.  It's better to use vfork now
so that when Cygwin gains a new, working vfork, we use it
automatically.
---
 src/s/cygwin.h |    4 ----
 1 files changed, 0 insertions(+), 4 deletions(-)

diff --git a/src/s/cygwin.h b/src/s/cygwin.h
index 8f5a0ab..e025e46 100644
--- a/src/s/cygwin.h
+++ b/src/s/cygwin.h
@@ -81,10 +81,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 #define HAVE_SOCKETS
 
-/* vfork() interacts badly with setsid(), causing ptys to fail to
-   change their controlling terminal */
-#define vfork fork
-
 /* This should work (at least when compiling with gcc).  But I have no way
    or intention to verify or even test it.  If you encounter a problem with
    it, feel free to change this setting, but please add a comment here about
-- 
1.7.5.1






^ permalink raw reply related	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2011-12-29 14:06 bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days Daniel Colascione
@ 2012-04-10 23:26 ` Lars Magne Ingebrigtsen
  2012-04-11  6:47   ` Chong Yidong
  2012-04-11  6:58   ` Eli Zaretskii
  2012-04-11 11:44 ` Lars Magne Ingebrigtsen
  1 sibling, 2 replies; 17+ messages in thread
From: Lars Magne Ingebrigtsen @ 2012-04-10 23:26 UTC (permalink / raw)
  To: Daniel Colascione; +Cc: 10398

Daniel Colascione <dancol@dancol.org> writes:

> In Cygwin 1.7, vfork is an alias for fork.  The vfork the #define in
> cygwin.h was protecting against is gone.  It's better to use vfork now
> so that when Cygwin gains a new, working vfork, we use it
> automatically.

[...]

> -/* vfork() interacts badly with setsid(), causing ptys to fail to
> -   change their controlling terminal */
> -#define vfork fork

Sounds sensible to me, but I'm no exactly (ahem) a Cygwin expert.

Eli, what do you think?

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-10 23:26 ` Lars Magne Ingebrigtsen
@ 2012-04-11  6:47   ` Chong Yidong
  2012-04-11  6:58   ` Eli Zaretskii
  1 sibling, 0 replies; 17+ messages in thread
From: Chong Yidong @ 2012-04-11  6:47 UTC (permalink / raw)
  To: Ken Brown; +Cc: Lars Magne Ingebrigtsen, 10398

Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

> Daniel Colascione <dancol@dancol.org> writes:
>
>> In Cygwin 1.7, vfork is an alias for fork.  The vfork the #define in
>> cygwin.h was protecting against is gone.  It's better to use vfork now
>> so that when Cygwin gains a new, working vfork, we use it
>> automatically.
>
> [...]
>
>> -/* vfork() interacts badly with setsid(), causing ptys to fail to
>> -   change their controlling terminal */
>> -#define vfork fork
>
> Sounds sensible to me, but I'm no exactly (ahem) a Cygwin expert.
>
> Eli, what do you think?

Ken Brown is the Emacs maintainer for Cygwin.

Ken, any objection to the above proposed change?





^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-10 23:26 ` Lars Magne Ingebrigtsen
  2012-04-11  6:47   ` Chong Yidong
@ 2012-04-11  6:58   ` Eli Zaretskii
  2012-04-11 11:15     ` Ken Brown
  1 sibling, 1 reply; 17+ messages in thread
From: Eli Zaretskii @ 2012-04-11  6:58 UTC (permalink / raw)
  To: Lars Magne Ingebrigtsen, Ken Brown; +Cc: 10398

> From: Lars Magne Ingebrigtsen <larsi@gnus.org>
> Cc: 10398@debbugs.gnu.org, Eli Zaretskii <eliz@gnu.org>
> Date: Wed, 11 Apr 2012 01:26:56 +0200
> 
> Daniel Colascione <dancol@dancol.org> writes:
> 
> > In Cygwin 1.7, vfork is an alias for fork.  The vfork the #define in
> > cygwin.h was protecting against is gone.  It's better to use vfork now
> > so that when Cygwin gains a new, working vfork, we use it
> > automatically.
> 
> [...]
> 
> > -/* vfork() interacts badly with setsid(), causing ptys to fail to
> > -   change their controlling terminal */
> > -#define vfork fork
> 
> Sounds sensible to me, but I'm no exactly (ahem) a Cygwin expert.
> 
> Eli, what do you think?

Not that _I_ am a Cygwin expert, but isn't it safer to do that only
for Cygwin 1.7 and later?  Ken, WDYT?





^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-11  6:58   ` Eli Zaretskii
@ 2012-04-11 11:15     ` Ken Brown
  2012-04-11 11:39       ` Eli Zaretskii
  2012-04-11 17:48       ` Drew Adams
  0 siblings, 2 replies; 17+ messages in thread
From: Ken Brown @ 2012-04-11 11:15 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 10398, Lars Magne Ingebrigtsen

On 4/11/2012 2:58 AM, Eli Zaretskii wrote:
>> From: Lars Magne Ingebrigtsen<larsi@gnus.org>
>> Cc: 10398@debbugs.gnu.org, Eli Zaretskii<eliz@gnu.org>
>> Date: Wed, 11 Apr 2012 01:26:56 +0200
>>
>> Daniel Colascione<dancol@dancol.org>  writes:
>>
>>> In Cygwin 1.7, vfork is an alias for fork.  The vfork the #define in
>>> cygwin.h was protecting against is gone.  It's better to use vfork now
>>> so that when Cygwin gains a new, working vfork, we use it
>>> automatically.
>>
>> [...]
>>
>>> -/* vfork() interacts badly with setsid(), causing ptys to fail to
>>> -   change their controlling terminal */
>>> -#define vfork fork
>>
>> Sounds sensible to me, but I'm no exactly (ahem) a Cygwin expert.
>>
>> Eli, what do you think?
>
> Not that _I_ am a Cygwin expert, but isn't it safer to do that only
> for Cygwin 1.7 and later?  Ken, WDYT?

I think it's a good change.  And I don't think we should make an effort 
to support Cygwin versions earlier than 1.7.  Cygwin 1.5 is no longer 
supported by Cygwin, so I don't see a reason for emacs to try to support 
it.  I suspect there have been many emacs changes that are not 
compatible with Cygwin 1.5.

Ken






^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-11 11:15     ` Ken Brown
@ 2012-04-11 11:39       ` Eli Zaretskii
  2012-04-11 12:35         ` Ken Brown
  2012-04-11 17:48       ` Drew Adams
  1 sibling, 1 reply; 17+ messages in thread
From: Eli Zaretskii @ 2012-04-11 11:39 UTC (permalink / raw)
  To: Ken Brown; +Cc: 10398, larsi

> Date: Wed, 11 Apr 2012 07:15:46 -0400
> From: Ken Brown <kbrown@cornell.edu>
> CC: Lars Magne Ingebrigtsen <larsi@gnus.org>, dancol@dancol.org,
>         10398@debbugs.gnu.org, Chong Yidong <cyd@stupidchicken.com>
> 
> I don't think we should make an effort to support Cygwin versions
> earlier than 1.7.  Cygwin 1.5 is no longer supported by Cygwin, so I
> don't see a reason for emacs to try to support it.  I suspect there
> have been many emacs changes that are not compatible with Cygwin
> 1.5.

Fair enough, but then perhaps the configure script should at least
warn, or maybe even refuse to continue, if it sees an older version?





^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2011-12-29 14:06 bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days Daniel Colascione
  2012-04-10 23:26 ` Lars Magne Ingebrigtsen
@ 2012-04-11 11:44 ` Lars Magne Ingebrigtsen
  1 sibling, 0 replies; 17+ messages in thread
From: Lars Magne Ingebrigtsen @ 2012-04-11 11:44 UTC (permalink / raw)
  To: Daniel Colascione; +Cc: 10398

Daniel Colascione <dancol@dancol.org> writes:

> In Cygwin 1.7, vfork is an alias for fork.  The vfork the #define in
> cygwin.h was protecting against is gone.  It's better to use vfork now
> so that when Cygwin gains a new, working vfork, we use it
> automatically.

I've now applied your patch to the Emacs trunk.

-- 
(domestic pets only, the antidote for overdose, milk.)
  bloggy blog http://lars.ingebrigtsen.no/





^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-11 11:39       ` Eli Zaretskii
@ 2012-04-11 12:35         ` Ken Brown
  2012-04-11 19:26           ` Eli Zaretskii
  0 siblings, 1 reply; 17+ messages in thread
From: Ken Brown @ 2012-04-11 12:35 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 10398, larsi

On 4/11/2012 7:39 AM, Eli Zaretskii wrote:
>> Date: Wed, 11 Apr 2012 07:15:46 -0400
>> From: Ken Brown<kbrown@cornell.edu>
>> CC: Lars Magne Ingebrigtsen<larsi@gnus.org>, dancol@dancol.org,
>>          10398@debbugs.gnu.org, Chong Yidong<cyd@stupidchicken.com>
>>
>> I don't think we should make an effort to support Cygwin versions
>> earlier than 1.7.  Cygwin 1.5 is no longer supported by Cygwin, so I
>> don't see a reason for emacs to try to support it.  I suspect there
>> have been many emacs changes that are not compatible with Cygwin
>> 1.5.
>
> Fair enough, but then perhaps the configure script should at least
> warn, or maybe even refuse to continue, if it sees an older version?

A warning would be fine, but I would suggest waiting until someone 
reports an actual problem.  My guess is that no one running Cygwin 1.5 
will ever try to build the emacs trunk.  But if someone does try and 
runs into problems, we can take the appropriate action.  If you 
disagree, I have no objection to inserting a warning now.

Ken





^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-11 11:15     ` Ken Brown
  2012-04-11 11:39       ` Eli Zaretskii
@ 2012-04-11 17:48       ` Drew Adams
  2012-04-11 19:37         ` Ken Brown
  1 sibling, 1 reply; 17+ messages in thread
From: Drew Adams @ 2012-04-11 17:48 UTC (permalink / raw)
  To: 'Ken Brown', 'Eli Zaretskii'
  Cc: 10398, 'Lars Magne Ingebrigtsen'

> I think it's a good change.  And I don't think we should make 
> an effort to support Cygwin versions earlier than 1.7.
> Cygwin 1.5 is no longer supported by Cygwin, so I don't see
> a reason for emacs to try to support it.  I suspect there
> have been many emacs changes that are not compatible with
> Cygwin 1.5.

Dunno what is meant here by "support Cygwin", but FWIW (probably not much) I
still use Cygwin 1.5.  I do so because it seems to work OK for my use cases and
because I have come across lots of problems reported here and there wrt later
versions (and Emacs).

(Yes, I know, you can find whatever problems you want on the Internet, real or
wrong.  Still, why upgrade if I don't need to?)

I do not run Emacs inside Cygwin, but I use Cygwin's `grep' and other commands
from Emacs, and I use Cygwin's bash shell interactively.

I probably won't be upgrading Cygwin anytime soon unless I'm forced to.  But I'm
no doubt not your typical Cygwin user.  Just one data point to consider.  Or
not.






^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-11 12:35         ` Ken Brown
@ 2012-04-11 19:26           ` Eli Zaretskii
  2012-04-12  2:51             ` Ken Brown
  0 siblings, 1 reply; 17+ messages in thread
From: Eli Zaretskii @ 2012-04-11 19:26 UTC (permalink / raw)
  To: Ken Brown; +Cc: 10398, larsi

> Date: Wed, 11 Apr 2012 08:35:02 -0400
> From: Ken Brown <kbrown@cornell.edu>
> CC: larsi@gnus.org, dancol@dancol.org, 10398@debbugs.gnu.org,
>         cyd@stupidchicken.com
> 
> >> I don't think we should make an effort to support Cygwin versions
> >> earlier than 1.7.  Cygwin 1.5 is no longer supported by Cygwin, so I
> >> don't see a reason for emacs to try to support it.  I suspect there
> >> have been many emacs changes that are not compatible with Cygwin
> >> 1.5.
> >
> > Fair enough, but then perhaps the configure script should at least
> > warn, or maybe even refuse to continue, if it sees an older version?
> 
> A warning would be fine, but I would suggest waiting until someone 
> reports an actual problem.  My guess is that no one running Cygwin 1.5 
> will ever try to build the emacs trunk.  But if someone does try and 
> runs into problems, we can take the appropriate action.  If you 
> disagree, I have no objection to inserting a warning now.

I think we should put our money where our mouth is.  If we consider
Cygwin 1.5 unsupported, we should at least warn the prospective users
that they are building Emacs with unsupported tools.

So yes, I think we should insert a warning now.  Could you please make
such a change?  TIA.





^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-11 17:48       ` Drew Adams
@ 2012-04-11 19:37         ` Ken Brown
  2012-04-11 20:04           ` Drew Adams
  0 siblings, 1 reply; 17+ messages in thread
From: Ken Brown @ 2012-04-11 19:37 UTC (permalink / raw)
  To: Drew Adams; +Cc: 10398, 'Lars Magne Ingebrigtsen'

On 4/11/2012 1:48 PM, Drew Adams wrote:
>> I think it's a good change.  And I don't think we should make
>> an effort to support Cygwin versions earlier than 1.7.
>> Cygwin 1.5 is no longer supported by Cygwin, so I don't see
>> a reason for emacs to try to support it.  I suspect there
>> have been many emacs changes that are not compatible with
>> Cygwin 1.5.
>
> Dunno what is meant here by "support Cygwin", but FWIW (probably not much) I
> still use Cygwin 1.5.  I do so because it seems to work OK for my use cases and
> because I have come across lots of problems reported here and there wrt later
> versions (and Emacs).
>
> (Yes, I know, you can find whatever problems you want on the Internet, real or
> wrong.  Still, why upgrade if I don't need to?)
>
> I do not run Emacs inside Cygwin, but I use Cygwin's `grep' and other commands
> from Emacs, and I use Cygwin's bash shell interactively.

The change we're talking about here won't affect you.  It's only 
relevant to people working in Cygwin and building the Emacs trunk (for 
use within Cygwin).

Ken






^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-11 19:37         ` Ken Brown
@ 2012-04-11 20:04           ` Drew Adams
  0 siblings, 0 replies; 17+ messages in thread
From: Drew Adams @ 2012-04-11 20:04 UTC (permalink / raw)
  To: 'Ken Brown'; +Cc: 10398, 'Lars Magne Ingebrigtsen'

> The change we're talking about here won't affect you.  It's only 
> relevant to people working in Cygwin and building the Emacs 
> trunk (for use within Cygwin).

Got it.  Sorry for the noise.  Thx.






^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-11 19:26           ` Eli Zaretskii
@ 2012-04-12  2:51             ` Ken Brown
  2012-04-12  4:53               ` Glenn Morris
                                 ` (2 more replies)
  0 siblings, 3 replies; 17+ messages in thread
From: Ken Brown @ 2012-04-12  2:51 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 10398, larsi

On 4/11/2012 3:26 PM, Eli Zaretskii wrote:
> I think we should put our money where our mouth is.  If we consider
> Cygwin 1.5 unsupported, we should at least warn the prospective users
> that they are building Emacs with unsupported tools.
> 
> So yes, I think we should insert a warning now.  Could you please make
> such a change?  TIA.

How's this:

=== modified file 'configure.in'
--- configure.in        2012-04-02 04:38:31 +0000
+++ configure.in        2012-04-12 02:38:52 +0000
@@ -3805,6 +3805,14 @@
    echo
 fi

+if test "${opsys}" = "cygwin"; then
+   cygwin_rel=`uname -r|sed -e 's/\(^1\.[[579]]\)\..*/\1/'`
+   if test "${cygwin_rel}" = "1.5"; then
+      echo
+      echo "*** Warning: Building Emacs on Cygwin 1.5 is not supported."
+      echo
+   fi
+fi

 # Remove any trailing slashes in these variables.
 [test "${prefix}" != NONE &&

FYI, here's what the output of `uname -r' looks like on Cygwin:

$ uname -r
1.7.14s(0.260/5/3)






^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-12  2:51             ` Ken Brown
@ 2012-04-12  4:53               ` Glenn Morris
  2012-04-12  6:00               ` Eli Zaretskii
  2012-04-12  7:40               ` Andreas Schwab
  2 siblings, 0 replies; 17+ messages in thread
From: Glenn Morris @ 2012-04-12  4:53 UTC (permalink / raw)
  To: Ken Brown; +Cc: 10398, larsi

Ken Brown wrote:

> +      echo
> +      echo "*** Warning: Building Emacs on Cygwin 1.5 is not supported."
> +      echo

I think AC_MSG_WARN is the standard way to do that kind of thing.
See eg the one for Gtk+ already in configure.in.





^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-12  2:51             ` Ken Brown
  2012-04-12  4:53               ` Glenn Morris
@ 2012-04-12  6:00               ` Eli Zaretskii
  2012-04-12  7:40               ` Andreas Schwab
  2 siblings, 0 replies; 17+ messages in thread
From: Eli Zaretskii @ 2012-04-12  6:00 UTC (permalink / raw)
  To: Ken Brown; +Cc: 10398, larsi

> Date: Wed, 11 Apr 2012 22:51:45 -0400
> From: Ken Brown <kbrown@cornell.edu>
> CC: larsi@gnus.org, dancol@dancol.org, 10398@debbugs.gnu.org,
>         cyd@stupidchicken.com
> 
> --- configure.in        2012-04-02 04:38:31 +0000
> +++ configure.in        2012-04-12 02:38:52 +0000
> @@ -3805,6 +3805,14 @@
>     echo
>  fi
> 
> +if test "${opsys}" = "cygwin"; then
> +   cygwin_rel=`uname -r|sed -e 's/\(^1\.[[579]]\)\..*/\1/'`
> +   if test "${cygwin_rel}" = "1.5"; then
> +      echo
> +      echo "*** Warning: Building Emacs on Cygwin 1.5 is not supported."
> +      echo
> +   fi
> +fi

The text of the warning looks good to me, thanks.





^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-12  2:51             ` Ken Brown
  2012-04-12  4:53               ` Glenn Morris
  2012-04-12  6:00               ` Eli Zaretskii
@ 2012-04-12  7:40               ` Andreas Schwab
  2012-04-12 12:21                 ` Ken Brown
  2 siblings, 1 reply; 17+ messages in thread
From: Andreas Schwab @ 2012-04-12  7:40 UTC (permalink / raw)
  To: Ken Brown; +Cc: 10398, larsi

Ken Brown <kbrown@cornell.edu> writes:

> +if test "${opsys}" = "cygwin"; then
> +   cygwin_rel=`uname -r|sed -e 's/\(^1\.[[579]]\)\..*/\1/'`

Why do you need the filter?

      case `uname -r` in 1.5.*) ...

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."





^ permalink raw reply	[flat|nested] 17+ messages in thread

* bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days
  2012-04-12  7:40               ` Andreas Schwab
@ 2012-04-12 12:21                 ` Ken Brown
  0 siblings, 0 replies; 17+ messages in thread
From: Ken Brown @ 2012-04-12 12:21 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: 10398-done, larsi

On 4/12/2012 3:40 AM, Andreas Schwab wrote:
> Ken Brown<kbrown@cornell.edu>  writes:
>
>> +if test "${opsys}" = "cygwin"; then
>> +   cygwin_rel=`uname -r|sed -e 's/\(^1\.[[579]]\)\..*/\1/'`
>
> Why do you need the filter?
>
>        case `uname -r` in 1.5.*) ...

Thanks.  And thanks to Glenn for telling me about AC_MSG_WARN.  I've 
committed the change to the trunk (bzr revision 107877), and I'm closing 
the bug.

Ken






^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2012-04-12 12:21 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-12-29 14:06 bug#10398: [PATCH] Use real vfork under Cygwin: it's fine these days Daniel Colascione
2012-04-10 23:26 ` Lars Magne Ingebrigtsen
2012-04-11  6:47   ` Chong Yidong
2012-04-11  6:58   ` Eli Zaretskii
2012-04-11 11:15     ` Ken Brown
2012-04-11 11:39       ` Eli Zaretskii
2012-04-11 12:35         ` Ken Brown
2012-04-11 19:26           ` Eli Zaretskii
2012-04-12  2:51             ` Ken Brown
2012-04-12  4:53               ` Glenn Morris
2012-04-12  6:00               ` Eli Zaretskii
2012-04-12  7:40               ` Andreas Schwab
2012-04-12 12:21                 ` Ken Brown
2012-04-11 17:48       ` Drew Adams
2012-04-11 19:37         ` Ken Brown
2012-04-11 20:04           ` Drew Adams
2012-04-11 11:44 ` Lars Magne Ingebrigtsen

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).