From fcbf63e62c627deae76c1b8cb8c0876c536ed811 Mon Sep 17 00:00:00 2001 From: Jari Vetoniemi Date: Mon, 16 Mar 2020 18:49:26 +0900 Subject: Fresh start --- jni/ruby/ext/win32ole/extconf.rb | 44 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 jni/ruby/ext/win32ole/extconf.rb (limited to 'jni/ruby/ext/win32ole/extconf.rb') diff --git a/jni/ruby/ext/win32ole/extconf.rb b/jni/ruby/ext/win32ole/extconf.rb new file mode 100644 index 0000000..59da40b --- /dev/null +++ b/jni/ruby/ext/win32ole/extconf.rb @@ -0,0 +1,44 @@ +#---------------------------------- +# extconf.rb +# $Revision: 38867 $ +#---------------------------------- +require 'mkmf' + +case RUBY_PLATFORM +when /cygwin/ + inc = nil + lib = '/usr/lib/w32api' +end + +dir_config("win32", inc, lib) + +def create_win32ole_makefile + if have_library("ole32") and + have_library("oleaut32") and + have_library("uuid", "&CLSID_CMultiLanguage", "mlang.h") and + have_library("user32") and + have_library("kernel32") and + have_library("advapi32") and + have_header("windows.h") + unless have_type("IMultiLanguage2", "mlang.h") + have_type("IMultiLanguage", "mlang.h") + end + spec = nil + checking_for('thread_specific', '%s') do + spec = %w[__declspec(thread) __thread].find {|th| + try_compile("#{th} int foo;", "", :werror => true) + } + spec or 'no' + end + $defs << "-DRB_THREAD_SPECIFIC=#{spec}" if spec + create_makefile("win32ole") + end +end + + +case RUBY_PLATFORM +when /mswin/ + $CFLAGS.sub!(/((?:\A|\s)[-\/])W\d(?=\z|\s)/, '\1W3') or + $CFLAGS += ' -W3' +end +create_win32ole_makefile -- cgit v1.2.3