[前][次][番号順一覧][スレッド一覧]

ruby-changes:22655

From: akr <ko1@a...>
Date: Mon, 20 Feb 2012 21:09:35 +0900 (JST)
Subject: [ruby-changes:22655] akr:r34704 (trunk): * ext/curses/extconf.rb: restore $libs and $defs for each

akr	2012-02-20 21:09:25 +0900 (Mon, 20 Feb 2012)

  New Revision: 34704

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=34704

  Log:
    * ext/curses/extconf.rb: restore $libs and $defs for each
      header/library choice.

  Modified files:
    trunk/ChangeLog
    trunk/ext/curses/extconf.rb

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 34703)
+++ ChangeLog	(revision 34704)
@@ -1,3 +1,8 @@
+Mon Feb 20 21:08:00 2012  Tanaka Akira  <akr@f...>
+
+	* ext/curses/extconf.rb: restore $libs and $defs for each
+	  header/library choice.
+
 Mon Feb 20 19:57:26 2012  Tanaka Akira  <akr@f...>
 
 	* ext/dbm/extconf.rb: weaken header/library consistency check if db is
Index: ext/curses/extconf.rb
===================================================================
--- ext/curses/extconf.rb	(revision 34703)
+++ ext/curses/extconf.rb	(revision 34704)
@@ -1,5 +1,16 @@
 require 'mkmf'
 
+def transact
+  old_libs = $libs.dup
+  old_defs = $defs.dup
+  result = yield
+  if !result
+    $libs = old_libs
+    $defs = old_defs
+  end
+  result
+end
+
 dir_config('curses')
 dir_config('ncurses')
 dir_config('termcap')
@@ -9,14 +20,21 @@
 
 have_library("mytinfo", "tgetent") if /bow/ =~ RUBY_PLATFORM
 have_library("tinfo", "tgetent") or have_library("termcap", "tgetent")
-if have_header(*curses=%w"ncurses.h") and (have_library("ncursesw", "initscr") or have_library("ncurses", "initscr"))
+
+curses = nil
+if transact { have_header(*curses=%w"ncurses.h") and
+              (have_library("ncursesw", "initscr") or
+               have_library("ncurses", "initscr")) }
   make=true
-elsif have_header(*curses=%w"ncurses/curses.h") and have_library("ncurses", "initscr")
+elsif transact { have_header(*curses=%w"ncurses/curses.h") and
+                 have_library("ncurses", "initscr") }
   make=true
-elsif have_header(*curses=%w"curses_colr/curses.h") and have_library("cur_colr", "initscr")
+elsif transact { 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")
+elsif transact { have_header(*curses=%w"curses.h") and
+                 have_library("curses", "initscr") }
   make=true
 end
 

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]