diff options
Diffstat (limited to 'ext')
-rw-r--r-- | ext/curses/curses.c | 11 | ||||
-rw-r--r-- | ext/curses/extconf.rb | 16 | ||||
-rw-r--r-- | ext/tcltklib/stubs.c | 5 |
3 files changed, 18 insertions, 14 deletions
diff --git a/ext/curses/curses.c b/ext/curses/curses.c index e1080f1bd8..8aa095e5a5 100644 --- a/ext/curses/curses.c +++ b/ext/curses/curses.c @@ -14,11 +14,8 @@ */ #include "ruby.h" - -#include <stdio.h> #include "rubyio.h" -#define _XOPEN_SOURCE_EXTENDED 1 #if defined(HAVE_NCURSES_H) # include <ncurses.h> #elif defined(HAVE_NCURSES_CURSES_H) @@ -31,18 +28,18 @@ # if defined(__bsdi__) || defined(__NetBSD__) || defined(__APPLE__) # if !defined(_maxx) # define _maxx maxx -# endif +# endif # if !defined(_maxy) # define _maxy maxy -# endif +# endif # if !defined(_begx) # define _begx begx -# endif +# endif # if !defined(_begy) # define _begy begy +# endif # endif #endif -#endif #ifdef HAVE_INIT_COLOR # define USE_COLOR 1 diff --git a/ext/curses/extconf.rb b/ext/curses/extconf.rb index 46fcc8f471..a79cebf600 100644 --- a/ext/curses/extconf.rb +++ b/ext/curses/extconf.rb @@ -7,19 +7,25 @@ dir_config('termcap') make=false have_library("mytinfo", "tgetent") if /bow/ =~ RUBY_PLATFORM have_library("tinfo", "tgetent") or have_library("termcap", "tgetent") -if have_header("ncurses.h") and have_library("ncurses", "initscr") +if have_header(*curses=%w"ncurses.h") and have_library("ncurses", "initscr") make=true -elsif have_header("ncurses/curses.h") and have_library("ncurses", "initscr") +elsif have_header(*curses=%w"ncurses/curses.h") and have_library("ncurses", "initscr") make=true -elsif have_header("curses_colr/curses.h") and have_library("cur_colr", "initscr") +elsif have_header(*curses=%w"curses_colr/curses.h") and have_library("cur_colr", "initscr") + curses.unshift("varargs.h") + make=true +elsif have_header(*curses=%w"curses.h") and have_library("curses", "initscr") make=true -elsif have_header("curses.h") and have_library("curses", "initscr") - make=true end 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" + src = "int test_var[(sizeof(char*)>sizeof(int))*2-1];" + if try_compile(cpp_include(%w[stdio.h stdlib.h]+curses)+src , flag) + $defs << flag + end create_makefile("curses") end diff --git a/ext/tcltklib/stubs.c b/ext/tcltklib/stubs.c index a1dd08f4a3..56cc8ca921 100644 --- a/ext/tcltklib/stubs.c +++ b/ext/tcltklib/stubs.c @@ -1,8 +1,6 @@ int ruby_tcltk_stubs(); #if defined USE_TCL_STUBS && defined USE_TK_STUBS -#include <tcl.h> -#include <tk.h> #include "ruby.h" #if defined _WIN32 || defined __CYGWIN__ @@ -28,6 +26,9 @@ int ruby_tcltk_stubs(); # define TK_NAME "libtk8.9%s" #endif +#include <tcl.h> +#include <tk.h> + int ruby_tcltk_stubs() { |