From a750fa504bcb1f6eb173948b48d6ab8ca1c8ce13 Mon Sep 17 00:00:00 2001 From: Lamont Granquist Date: Tue, 17 Feb 2015 15:08:09 -0800 Subject: mixin windows? helper directly into the object its useful to be able to include/extend the platform class and then use this sugar directly --- lib/ffi_yajl/ext.rb | 4 +++- lib/ffi_yajl/platform.rb | 10 ++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) (limited to 'lib') diff --git a/lib/ffi_yajl/ext.rb b/lib/ffi_yajl/ext.rb index 0d0faf3..5784023 100644 --- a/lib/ffi_yajl/ext.rb +++ b/lib/ffi_yajl/ext.rb @@ -7,12 +7,14 @@ require 'libyajl2' require 'ffi_yajl/platform' module FFI_Yajl + extend FFI_Yajl::Platform + # FIXME: DRY with ffi_yajl/ffi.rb # FIXME: extract map_library_name from FFI and stop requiring it at the top level # so that the C-library can be installed without FFI libname = ::FFI.map_library_name("yajl") # awful windows patch, but there is an open issue to entirely replace FFI.map_library_name already - libname = "libyajl.so" if Platform::windows? + libname = "libyajl.so" if windows? libpath = File.expand_path(File.join(Libyajl2.opt_path, libname)) libpath.gsub!(/dylib/, 'bundle') libpath = ::FFI.map_library_name("yajl") unless File.exist?(libpath) diff --git a/lib/ffi_yajl/platform.rb b/lib/ffi_yajl/platform.rb index bde716d..6c2a498 100644 --- a/lib/ffi_yajl/platform.rb +++ b/lib/ffi_yajl/platform.rb @@ -1,5 +1,7 @@ -module Platform - def self.windows? - !!(RUBY_PLATFORM =~ /mswin|mingw|cygwin|windows/) +module FFI_Yajl + module Platform + def windows? + !!(RUBY_PLATFORM =~ /mswin|mingw|cygwin|windows/) + end end -end \ No newline at end of file +end -- cgit v1.2.1