From 66fd410332f4a2aa009a7b6544b5637fad84842c Mon Sep 17 00:00:00 2001 From: yugui Date: Sun, 16 Jan 2011 06:30:33 +0000 Subject: [PATCH] merges r30407 and r30450 from trunk into ruby_1_9_2. -- * ext/fiddle/extconf.rb: check for windows.h while building fiddle. Thanks Jon Forums! [ruby-core:33923] -- * Use _WIN32 rather than checking for windows.h. Thanks Jon Forums! [ruby-core:33977] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_2@30559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 10 ++++++++++ ext/dl/cfunc.c | 8 ++++---- ext/dl/dl.h | 2 +- ext/dl/handle.c | 4 ++-- ext/fiddle/fiddle.c | 2 +- ext/fiddle/fiddle.h | 2 +- ext/fiddle/function.c | 2 +- test/fiddle/test_fiddle.rb | 10 ++++++++++ version.h | 2 +- 9 files changed, 31 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index ffec148bf0..e605643aa9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +Wed Jan 5 12:10:08 2011 Aaron Patterson + + * Use _WIN32 rather than checking for windows.h. Thanks Jon Forums! + [ruby-core:33977] + +Tue Dec 28 04:32:37 2010 Aaron Patterson + + * ext/fiddle/extconf.rb: check for windows.h while building fiddle. + Thanks Jon Forums! [ruby-core:33923] + Sun Dec 26 11:39:11 2010 Nobuyoshi Nakada * parse.y (stmt): missing ripper rule. i.e., `a::B ||= c 1'. diff --git a/ext/dl/cfunc.c b/ext/dl/cfunc.c index 0d969defcc..6a42dcd79e 100644 --- a/ext/dl/cfunc.c +++ b/ext/dl/cfunc.c @@ -25,7 +25,7 @@ rb_dl_set_last_error(VALUE self, VALUE val) return Qnil; } -#if defined(HAVE_WINDOWS_H) +#if defined(_WIN32) #include static ID id_win32_last_error; @@ -578,7 +578,7 @@ rb_dlcfunc_call(VALUE self, VALUE ary) } rb_dl_set_last_error(self, INT2NUM(errno)); -#if defined(HAVE_WINDOWS_H) +#if defined(_WIN32) rb_dl_set_win32_last_error(self, INT2NUM(GetLastError())); #endif @@ -607,13 +607,13 @@ void Init_dlcfunc(void) { id_last_error = rb_intern("__DL2_LAST_ERROR__"); -#if defined(HAVE_WINDOWS_H) +#if defined(_WIN32) id_win32_last_error = rb_intern("__DL2_WIN32_LAST_ERROR__"); #endif rb_cDLCFunc = rb_define_class_under(rb_mDL, "CFunc", rb_cObject); rb_define_alloc_func(rb_cDLCFunc, rb_dlcfunc_s_allocate); rb_define_module_function(rb_cDLCFunc, "last_error", rb_dl_get_last_error, 0); -#if defined(HAVE_WINDOWS_H) +#if defined(_WIN32) rb_define_module_function(rb_cDLCFunc, "win32_last_error", rb_dl_get_win32_last_error, 0); #endif rb_define_method(rb_cDLCFunc, "initialize", rb_dlcfunc_initialize, -1); diff --git a/ext/dl/dl.h b/ext/dl/dl.h index 2fa330f925..2b3b1f827e 100644 --- a/ext/dl/dl.h +++ b/ext/dl/dl.h @@ -20,7 +20,7 @@ #define RTLD_NOW 0 #endif #else -# if defined(HAVE_WINDOWS_H) +# if defined(_WIN32) # include # define dlopen(name,flag) ((void*)LoadLibrary(name)) # define dlerror() strerror(rb_w32_map_errno(GetLastError())) diff --git a/ext/dl/handle.c b/ext/dl/handle.c index a450e6bac5..d567a4f48c 100644 --- a/ext/dl/handle.c +++ b/ext/dl/handle.c @@ -7,7 +7,7 @@ VALUE rb_cDLHandle; -#ifdef HAVE_WINDOWS_H +#ifdef _WIN32 # ifndef _WIN32_WCE static void * w32_coredll(void) @@ -142,7 +142,7 @@ rb_dlhandle_initialize(int argc, VALUE argv[], VALUE self) rb_secure(2); -#if defined(HAVE_WINDOWS_H) +#if defined(_WIN32) if( !clib ){ HANDLE rb_libruby_handle(void); ptr = rb_libruby_handle(); diff --git a/ext/fiddle/fiddle.c b/ext/fiddle/fiddle.c index 78e21c57cf..2580ac0e53 100644 --- a/ext/fiddle/fiddle.c +++ b/ext/fiddle/fiddle.c @@ -18,7 +18,7 @@ void Init_fiddle() rb_define_const(mFiddle, "TYPE_FLOAT", INT2NUM(TYPE_FLOAT)); rb_define_const(mFiddle, "TYPE_DOUBLE", INT2NUM(TYPE_DOUBLE)); -#if defined(HAVE_WINDOWS_H) +#if defined(_WIN32) rb_define_const(mFiddle, "WINDOWS", Qtrue); #else rb_define_const(mFiddle, "WINDOWS", Qfalse); diff --git a/ext/fiddle/fiddle.h b/ext/fiddle/fiddle.h index 4418fafb1e..7165969225 100644 --- a/ext/fiddle/fiddle.h +++ b/ext/fiddle/fiddle.h @@ -4,7 +4,7 @@ #include #include -#if defined(HAVE_WINDOWS_H) +#if defined(_WIN32) #include #endif diff --git a/ext/fiddle/function.c b/ext/fiddle/function.c index 66e5707231..c1b75afae6 100644 --- a/ext/fiddle/function.c +++ b/ext/fiddle/function.c @@ -125,7 +125,7 @@ function_call(int argc, VALUE argv[], VALUE self) ffi_call(cif, NUM2PTR(rb_Integer(cfunc)), &retval, values); rb_funcall(mFiddle, rb_intern("last_error="), 1, INT2NUM(errno)); -#if defined(HAVE_WINDOWS_H) +#if defined(_WIN32) rb_funcall(mFiddle, rb_intern("win32_last_error="), 1, INT2NUM(errno)); #endif diff --git a/test/fiddle/test_fiddle.rb b/test/fiddle/test_fiddle.rb index fa19aaff07..625aaf940d 100644 --- a/test/fiddle/test_fiddle.rb +++ b/test/fiddle/test_fiddle.rb @@ -16,4 +16,14 @@ class TestFiddle < Fiddle::TestCase assert_equal(DL.const_get(name), Fiddle.const_get(name)) end end + + def test_windows_constant + require 'rbconfig' + if RbConfig::CONFIG['host_os'] =~ /mswin|mingw/ + assert Fiddle::WINDOWS, "Fiddle::WINDOWS should be 'true' on Windows platforms" + else + refute Fiddle::WINDOWS, "Fiddle::WINDOWS should be 'false' on non-Windows platforms" + end + end + end diff --git a/version.h b/version.h index 928327c28d..a2d9455a64 100644 --- a/version.h +++ b/version.h @@ -1,5 +1,5 @@ #define RUBY_VERSION "1.9.2" -#define RUBY_PATCHLEVEL 141 +#define RUBY_PATCHLEVEL 142 #define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MINOR 9 #define RUBY_VERSION_TEENY 1