Subject: bug#14569: 24.3.50; bootstrap fails on Cygwin

From: Ken Brown <[email-masked]>
Date: Mon, 24 Jun 2013 13:16:37 -0400

On 6/24/2013 12:55 PM, Paul Eggert wrote:
> On 06/24/13 08:51, Ken Brown wrote:
>> The Cygwin port uses Emacs's allocator.
>
> I just looked at Emacs's allocator, and I was wrong:
> it tries to be thread-safe, if HAVE_PTHREAD is defined.
> Is it defined on Cygwin?  If not, that's a bug; if so,
> possibly there is still an incompatibility between
> Cygwin threading and Emacs's allocator, but it'll
> require some Cygwin expertise to debug.

Yes, HAVE_PTHREAD is defined on Cygwin.

> At any rate *this* bug is now fixed, so I'm marking it
> as done.  If the Cygwin port has strange memory-related
> problems in the future, you might try the following patch (not
> that it's necessarily the right thing...).
>
> === modified file 'configure.ac'
> --- configure.ac	2013-06-24 14:27:25 +0000
> +++ configure.ac	2013-06-24 16:53:54 +0000
> @@ -1805,7 +1805,7 @@ dnl See comments in aix4-2.h about maybe
>   system_malloc=no
>   case "$opsys" in
>     ## darwin ld insists on the use of malloc routines in the System framework.
> -  darwin|sol2-10) system_malloc=yes ;;
> +  cygwin|darwin|sol2-10) system_malloc=yes ;;
>   esac
>
>   if test "${system_malloc}" = "yes"; then

I've tried this, but it doesn't work.  I would be glad to switch to 
Cygwin's malloc if I could, but I haven't been able to figure out how.  See

   http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11519#71

Ken