summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-06-06 00:46:32 +0000
committeryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-06-06 00:46:32 +0000
commit005a7bb5d1bf1bb35706ffd558c93ceb558f7a44 (patch)
tree6ec083ce3efbbb8ca7f6c94ca39628bca51e2b33
parent9c36cb3917372a63406267018b37b9940254ac72 (diff)
merges a part of r31717 from trunk into ruby_1_9_2.
-- * ext/tk/lib/tk/extconf.rb: search directories for 64bit library (e.g. * /usr/lib64), and bug fix. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_2@31932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--ext/tk/extconf.rb63
-rw-r--r--version.h2
3 files changed, 49 insertions, 21 deletions
diff --git a/ChangeLog b/ChangeLog
index f488a9b144..2392f021cc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue May 24 07:06:34 2011 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
+
+ * ext/tk/lib/tk/extconf.rb: search directories for 64bit library (e.g.
+ /usr/lib64) and bug fix.
+
Mon Jun 6 07:08:54 2011 Yuki Sonoda (Yugui) <yugui@yugui.jp>
* test/drb/ut_array.rb: uses 'druby://localhost:0' instead of nil
diff --git a/ext/tk/extconf.rb b/ext/tk/extconf.rb
index 388d6fc1aa..22a8d93f18 100644
--- a/ext/tk/extconf.rb
+++ b/ext/tk/extconf.rb
@@ -111,6 +111,10 @@ def is_macosx?
/darwin/ =~ RUBY_PLATFORM
end
+def maybe_64bit?
+ /64|universal/ =~ RUBY_PLATFORM
+end
+
def check_tcltk_version(version)
return [nil, nil] unless version.kind_of? String
@@ -187,14 +191,18 @@ def get_shlib_path_head
if CROSS_COMPILING
elsif is_win32?
if TkLib_Config["ActiveTcl"]
- path_head.concat ["c:/ActiveTcl", "c:/Program Files/ActiveTcl"]
+ path_head.concat ["c:/ActiveTcl", "c:/Program Files/ActiveTcl",
+ "c:/Program Files (x86)/ActiveTcl"]
end
path_head.concat [
- "c:/Tcl", "c:/Program Files/Tcl",
- "/Tcl", "/Program Files/Tcl"
+ "c:/Tcl", "c:/Program Files/Tcl", "c:/Program Files (x86)/Tcl",
+ "/Tcl", "/Program Files/Tcl", "/Program Files (x86)/Tcl"
]
path_head.each{|dir| path_dirs << "#{dir}"}
+ path_dirs |= ENV['LIBRARY_PATH'].split(';') if ENV['LIBRARY_PATH']
+ path_dirs |= ENV['PATH'].split(';') if ENV['PATH']
+
else
[
'/opt', '/pkg', '/share',
@@ -203,6 +211,7 @@ def get_shlib_path_head
].each{|dir|
next unless File.directory?(dir)
+ path_dirs << "#{dir}/lib64"
path_dirs << "#{dir}/lib"
path_dirs << "#{dir}" unless Dir.glob("#{dir}/lib*.*", File::FNM_CASEFOLD).empty?
@@ -387,18 +396,20 @@ def get_tclConfig_dirs
end
dirs.concat [
"c:/ActiveTcl*/lib", "c:/Tcl*/lib",
- "c:/Program Files/ActiveTcl*/lib", "c:/Program Files/Tcl*/lib",
+ "c:/Program Files*/ActiveTcl*/lib", "c:/Program Files*/Tcl*/lib",
"/ActiveTcl*/lib", "/Tcl*/lib",
- "/Program Files/ActiveTcl*/lib", "/Program Files/Tcl*/lib"
+ "/Program Files*/ActiveTcl*/lib", "/Program Files*/Tcl*/lib"
]
else
dirs = [
- "c:/Tcl*/lib", "c:/Program Files/Tcl*/lib",
- "/Tcl*/lib", "/Program Files/Tcl*/lib"
+ "c:/Tcl*/lib", "c:/Program Files*/Tcl*/lib",
+ "/Tcl*/lib", "/Program Files*/Tcl*/lib"
]
end
dirs.collect{|d| Dir.glob(d, File::FNM_CASEFOLD)}.flatten!
dirs |= dirs
+ dirs |= ENV['LIBRARY_PATH'].split(';') if ENV['LIBRARY_PATH']
+ dirs |= ENV['PATH'].split(';') if ENV['PATH']
exeext = RbConfig::CONFIG['EXEEXT']
ENV['PATH'].split(File::PATH_SEPARATOR).each{|dir|
@@ -443,14 +454,16 @@ def get_tclConfig_dirs
end
end
- config_dir.concat [
- RbConfig::CONFIG['libdir'],
- File.join(RbConfig::CONFIG['exec_prefix'], 'lib'),
- File.join(RbConfig::CONFIG['prefix'], 'lib'),
- "/usr/local/opt/lib", "/usr/local/pkg/lib", "/usr/local/share/lib",
- "/usr/local/lib", "/usr/opt/lib", "/usr/pkg/lib",
- "/usr/share/lib", "/usr/contrib/lib", "/usr/lib"
- ]
+ config_dir << RbConfig::CONFIG['libdir']
+ ((maybe_64bit?)? ['lib64', 'lib']: ['lib']).each{|dir|
+ config_dir.concat [
+ File.join(RbConfig::CONFIG['exec_prefix'], dir),
+ File.join(RbConfig::CONFIG['prefix'], dir),
+ "/usr/local/opt/#{dir}", "/usr/local/pkg/#{dir}", "/usr/local/share/#{dir}",
+ "/usr/local/#{dir}", "/usr/opt/#{dir}", "/usr/pkg/#{dir}",
+ "/usr/share/#{dir}", "/usr/contrib/#{dir}", "/usr/#{dir}"
+ ]
+ }
config_dir.concat [
'/opt', '/pkg', '/share',
@@ -877,9 +890,12 @@ def find_tcl(tcllib, stubs, version, *opt_paths)
if !CROSS_COMPILING and is_win32?
default_paths.concat [
- "c:/Tcl/lib", "c:/Program Files/Tcl/lib",
- "/Tcl/lib", "/Program Files/Tcl/lib"
+ "c:/Tcl/lib", "c:/Program Files/Tcl/lib","c:/Program Files (x86)/Tcl/lib",
+ "/Tcl/lib", "/Program Files/Tcl/lib","/Program Files (x86)/Tcl/lib"
].find_all{|dir| File.directory?(dir)}
+
+ default_paths |= ENV['LIBRARY_PATH'].split(';') if ENV['LIBRARY_PATH']
+ default_paths |= ENV['PATH'].split(';') if ENV['PATH']
end
unless TkLib_Config["space-on-tk-libpath"]
@@ -989,9 +1005,12 @@ def find_tk(tklib, stubs, version, *opt_paths)
if !CROSS_COMPILING and is_win32?
default_paths.concat [
- "c:/Tcl/lib", "c:/Program Files/Tcl/lib",
- "/Tcl/lib", "/Program Files/Tcl/lib"
+ "c:/Tcl/lib", "c:/Program Files/Tcl/lib", "c:/Program Files (x86)/Tcl/lib",
+ "/Tcl/lib", "/Program Files/Tcl/lib","/Program Files (x86)/Tcl/lib"
].find_all{|dir| File.directory?(dir)}
+
+ default_paths |= ENV['LIBRARY_PATH'].split(';') if ENV['LIBRARY_PATH']
+ default_paths |= ENV['PATH'].split(';') if ENV['PATH']
end
unless TkLib_Config["space-on-tk-libpath"]
@@ -1086,8 +1105,12 @@ def find_tcltk_header(tclver, tkver)
if !CROSS_COMPILING && is_win32?
base_dir.concat [
"c:/Tcl/include", "c:/Program Files/Tcl/include",
- "/Tcl/include", "/Program Files/Tcl/include"
+ "c:/Program Files (x86)/Tcl/include",
+ "/Tcl/include", "/Program Files/Tcl/include",
+ "/Program Files (x86)/Tcl/include"
].find_all{|dir| File.directory?(dir)}
+
+ base_dir |= ENV['CPATH'].split(';') if ENV['CPATH']
end
unless TkLib_Config["space-on-tk-libpath"]
diff --git a/version.h b/version.h
index 8891e97e4e..7655a02b0e 100644
--- a/version.h
+++ b/version.h
@@ -1,5 +1,5 @@
#define RUBY_VERSION "1.9.2"
-#define RUBY_PATCHLEVEL 273
+#define RUBY_PATCHLEVEL 274
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 9
#define RUBY_VERSION_TEENY 1