unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#14944: 24.3.50; Cygw32 build break
@ 2013-07-24 10:59 Kazuhiro Ito
  2013-07-24 11:42 ` Ken Brown
  0 siblings, 1 reply; 4+ messages in thread
From: Kazuhiro Ito @ 2013-07-24 10:59 UTC (permalink / raw)
  To: 14944

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





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

* bug#14944: 24.3.50; Cygw32 build break
  2013-07-24 10:59 bug#14944: 24.3.50; Cygw32 build break Kazuhiro Ito
@ 2013-07-24 11:42 ` Ken Brown
  2013-07-24 14:38   ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Ken Brown @ 2013-07-24 11:42 UTC (permalink / raw)
  To: Kazuhiro Ito; +Cc: 14944, Paul Eggert

On 7/24/2013 6:59 AM, Kazuhiro Ito wrote:
> 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

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)
  {


Ken





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

* bug#14944: 24.3.50; Cygw32 build break
  2013-07-24 11:42 ` Ken Brown
@ 2013-07-24 14:38   ` Eli Zaretskii
  2013-07-24 15:12     ` Ken Brown
  0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2013-07-24 14:38 UTC (permalink / raw)
  To: Ken Brown; +Cc: kzhr, 14944, eggert

> Date: Wed, 24 Jul 2013 07:42:14 -0400
> From: Ken Brown <kbrown@cornell.edu>
> Cc: 14944@debbugs.gnu.org, Paul Eggert <eggert@cs.ucla.edu>
> 
> 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.





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

* bug#14944: 24.3.50; Cygw32 build break
  2013-07-24 14:38   ` Eli Zaretskii
@ 2013-07-24 15:12     ` Ken Brown
  0 siblings, 0 replies; 4+ messages in thread
From: Ken Brown @ 2013-07-24 15:12 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: kzhr, 14944-done, eggert

On 7/24/2013 10:38 AM, Eli Zaretskii wrote:
>> Date: Wed, 24 Jul 2013 07:42:14 -0400
>> From: Ken Brown <kbrown@cornell.edu>
>> Cc: 14944@debbugs.gnu.org, Paul Eggert <eggert@cs.ucla.edu>
>>
>> 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






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

end of thread, other threads:[~2013-07-24 15:12 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-24 10:59 bug#14944: 24.3.50; Cygw32 build break Kazuhiro Ito
2013-07-24 11:42 ` Ken Brown
2013-07-24 14:38   ` Eli Zaretskii
2013-07-24 15:12     ` Ken Brown

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).