[#1378] differences between Module and Class ? — Mathieu Bouchard <matju@...>

25 messages 2003/08/11
[#1387] Re: differences between Module and Class ? — matz@... (Yukihiro Matsumoto) 2003/08/12

Hi,

[#1442] Re: differences between Module and Class ? — Mathieu Bouchard <matju@...> 2003/08/21

[#1406] _id2ref bug? — Ryan Pavlik <rpav@...>

While debugging some caching code, I've come across a segfault related

22 messages 2003/08/14
[#1407] Re: _id2ref bug? — matz@... (Yukihiro Matsumoto) 2003/08/14

Hi,

[#1413] Re: _id2ref bug? (REPRODUCED, short) — Ryan Pavlik <rpav@...> 2003/08/14

On Fri, 15 Aug 2003 01:57:18 +0900

Re: curses.c and Mac OS X

From: nobu.nokada@...
Date: 2003-08-17 14:08:08 UTC
List: ruby-core #1437
Hi,

At Sun, 17 Aug 2003 17:23:52 +0900,
Elliott Hughes wrote:
> This does, though, and if it doesn't break other OSes looks like the least
> unpleasant patch yet:

It seems that _XOPEN_SOURCE_EXTENDED has no effect at all.

Does this work?


Index: ext/curses/curses.c
===================================================================
RCS file: /cvs/ruby/src/ruby/ext/curses/curses.c,v
retrieving revision 1.20
diff -u -2 -p -w -r1.20 curses.c
--- ext/curses/curses.c	15 Aug 2003 03:01:52 -0000	1.20
+++ ext/curses/curses.c	17 Aug 2003 13:57:06 -0000
@@ -15,9 +15,6 @@
 
 #include "ruby.h"
-
-#include <stdio.h>
 #include "rubyio.h"
 
-#define _XOPEN_SOURCE_EXTENDED 1
 #if defined(HAVE_NCURSES_H)
 # include <ncurses.h>
Index: ext/curses/extconf.rb
===================================================================
RCS file: /cvs/ruby/src/ruby/ext/curses/extconf.rb,v
retrieving revision 1.14
diff -u -2 -p -w -r1.14 extconf.rb
--- ext/curses/extconf.rb	15 Aug 2003 03:01:52 -0000	1.14
+++ ext/curses/extconf.rb	17 Aug 2003 14:04:55 -0000
@@ -21,4 +21,20 @@ if make
   for f in %w(isendwin ungetch beep getnstr wgetnstr doupdate flash deleteln wdeleteln keypad keyname init_color wresize resizeterm)
     have_func(f)
+  end
+  flag = "-D_XOPEN_SOURCE_EXTENDED"
+  if try_compile(<<"SRC", flag)
+#if defined(HAVE_NCURSES_H)
+# include <ncurses.h>
+#elif defined(HAVE_NCURSES_CURSES_H)
+# include <ncurses/curses.h>
+#elif defined(HAVE_CURSES_COLR_CURSES_H)
+# include <varargs.h>
+# include <curses_colr/curses.h>
+#else
+# include <curses.h>
+#endif
+int test_var[sizeof(char*)-sizeof(int)];
+SRC
+    $defs << flag
   end
   create_makefile("curses")


-- 
Nobu Nakada

In This Thread