Subject: bug#14944: closed (Re: bug#14944: 24.3.50; Cygw32 build break)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 24 Jul 2013 15:14:02 +0000

Your bug report

#14944: 24.3.50; Cygw32 build break

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
14944: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=14944
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#14944: 24.3.50; Cygw32 build break
From: Ken Brown <[email-masked]>
To: Eli Zaretskii <[email-masked]>
Cc: [email-masked], [email-masked], [email-masked]
Date: Wed, 24 Jul 2013 11:12:45 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

On 7/24/2013 10:38 AM, Eli Zaretskii wrote:
>> Date: Wed, 24 Jul 2013 07:42:14 -0400
>> From: Ken Brown <[email-masked]>
>> Cc: [email-masked], Paul Eggert <[email-masked]>
>>
>> This happened because of a change in rev 113453, in which make_save_ptr
>> (formerly called make_save_pointer) was defined only on platforms that
>> need it.  The cygw32 platform was missed.  The following should fix it.
>>
>> === modified file 'src/alloc.c'
>> --- src/alloc.c 2013-07-21 15:56:55 +0000
>> +++ src/alloc.c 2013-07-24 11:35:40 +0000
>> @@ -3371,7 +3371,7 @@
>>      return val;
>>    }
>>
>> -#if defined HAVE_NS || defined DOS_NT
>> +#if defined HAVE_NS || defined DOS_NT || defined HAVE_NTGUI
>>    Lisp_Object
>>    make_save_ptr (void *a)
>>    {
>
> If you are adding HAVE_NTGUI, then DOS_NT is redundant, and should be
> removed.

Done, as bzr 113529.  I'm closing the bug.

Ken

Subject: 24.3.50; Cygw32 build break
From: Kazuhiro Ito <[email-masked]>
To: [email-masked]
Date: Wed, 24 Jul 2013 19:59:40 +0900
List-Id: <debbugs-submit.debbugs.gnu.org>

Because make_save_ptr is not defined in Cygw32, Cygw32 can't be built
on trunk.

(snip)
w32fns.o: In function `w32_monitor_enum':
/build/emacs/trunk/src/w32fns.c:4933: undefined reference to `make_save_ptr'
collect2: error: ld returned 1 exit status
(snip)

make_save_ptr is defined as below in src/alloc.c

#if defined HAVE_NS || defined DOS_NT
Lisp_Object
make_save_ptr (void *a)
{
  Lisp_Object val = allocate_misc (Lisp_Misc_Save_Value);
  struct Lisp_Save_Value *p = XSAVE_VALUE (val);
  p->save_type = SAVE_POINTER;
  p->data[0].pointer = a;
  return val;
}
#endif

-- 
Kazuhiro Ito