summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-10-02 11:20:14 +0000
committeryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-10-02 11:20:14 +0000
commit4c513b5e68ca2b3a96fa3cc413fd0eeea83c46a2 (patch)
tree75f91e2f8520c42fd1347c3c24b79bed3078816e
parentc4c0c9d10795763b9a3d5238cfe6f486b19a9cc3 (diff)
merges r29101 from trunk into ruby_1_9_2.
-- Creating dummy library for dl/fiddle tests on AIX. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_2@29391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog6
-rw-r--r--test/dl/test_base.rb28
-rw-r--r--test/fiddle/helper.rb28
-rw-r--r--version.h2
4 files changed, 63 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 09bcd568f1..f91608fa68 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu Aug 26 10:38:11 2010 Yutaka Kanemoto <kanemoto@ruby-lang.org>
+
+ * test/dl/test_base.rb: AIX does not have dynamically loadable lib[cm].
+
+ * test/fiddle/helper.rb: AIX does not have dynamically loadable lib[cm].
+
Wed Aug 25 03:42:43 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/dl/cfunc.c (rb_dlcfunc_call): workaround for VC9 for x64.
diff --git a/test/dl/test_base.rb b/test/dl/test_base.rb
index c9b54193f8..3b22ce5b57 100644
--- a/test/dl/test_base.rb
+++ b/test/dl/test_base.rb
@@ -47,6 +47,34 @@ when /solaris/
end
libc_so = File.join(libdir, "libc.so.6")
libm_so = File.join(libdir, "libm.so.6")
+when /aix/
+ pwd=Dir.pwd
+ libc_so = libm_so = "#{pwd}/libaixdltest.so"
+ unless File.exist? libc_so
+ cobjs=%w!strcpy.o!
+ mobjs=%w!floats.o sin.o!
+ funcs=%w!sin sinf strcpy strncpy!
+ expfile='dltest.exp'
+ require 'tmpdir'
+ Dir.mktmpdir do |dir|
+ begin
+ Dir.chdir dir
+ %x!/usr/bin/ar x /usr/lib/libc.a #{cobjs.join(' ')}!
+ %x!/usr/bin/ar x /usr/lib/libm.a #{mobjs.join(' ')}!
+ %x!echo "#{funcs.join("\n")}\n" > #{expfile}!
+ require 'rbconfig'
+ if RbConfig::CONFIG["GCC"] = 'yes'
+ lflag='-Wl,'
+ else
+ lflag=''
+ end
+ flags="#{lflag}-bE:#{expfile} #{lflag}-bnoentry -lm"
+ %x!#{RbConfig::CONFIG["LDSHARED"]} -o #{libc_so} #{(cobjs+mobjs).join(' ')} #{flags}!
+ ensure
+ Dir.chdir pwd
+ end
+ end
+ end
else
libc_so = ARGV[0] if ARGV[0] && ARGV[0][0] == ?/
libm_so = ARGV[1] if ARGV[1] && ARGV[1][0] == ?/
diff --git a/test/fiddle/helper.rb b/test/fiddle/helper.rb
index 6f9c5651b8..b11f2e40c6 100644
--- a/test/fiddle/helper.rb
+++ b/test/fiddle/helper.rb
@@ -38,6 +38,34 @@ when /kfreebsd/
when /bsd|dragonfly/
libc_so = "/usr/lib/libc.so"
libm_so = "/usr/lib/libm.so"
+when /aix/
+ pwd=Dir.pwd
+ libc_so = libm_so = "#{pwd}/libaixdltest.so"
+ unless File.exist? libc_so
+ cobjs=%w!strcpy.o!
+ mobjs=%w!floats.o sin.o!
+ funcs=%w!sin sinf strcpy strncpy!
+ expfile='dltest.exp'
+ require 'tmpdir'
+ Dir.mktmpdir do |dir|
+ begin
+ Dir.chdir dir
+ %x!/usr/bin/ar x /usr/lib/libc.a #{cobjs.join(' ')}!
+ %x!/usr/bin/ar x /usr/lib/libm.a #{mobjs.join(' ')}!
+ %x!echo "#{funcs.join("\n")}\n" > #{expfile}!
+ require 'rbconfig'
+ if RbConfig::CONFIG["GCC"] = 'yes'
+ lflag='-Wl,'
+ else
+ lflag=''
+ end
+ flags="#{lflag}-bE:#{expfile} #{lflag}-bnoentry -lm"
+ %x!#{RbConfig::CONFIG["LDSHARED"]} -o #{libc_so} #{(cobjs+mobjs).join(' ')} #{flags}!
+ ensure
+ Dir.chdir pwd
+ end
+ end
+ end
else
libc_so = ARGV[0] if ARGV[0] && ARGV[0][0] == ?/
libm_so = ARGV[1] if ARGV[1] && ARGV[1][0] == ?/
diff --git a/version.h b/version.h
index b2767ea959..22910697bf 100644
--- a/version.h
+++ b/version.h
@@ -1,6 +1,6 @@
#define RUBY_VERSION "1.9.2"
#define RUBY_RELEASE_DATE "2010-10-02"
-#define RUBY_PATCHLEVEL 11
+#define RUBY_PATCHLEVEL 12
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 9