mirror of https://github.com/grpc/grpc.git
The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)
https://grpc.io/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
2.0 KiB
44 lines
2.0 KiB
From 365843bfe0bfc3f1c1b11e81e24ac7b6c7942bdf Mon Sep 17 00:00:00 2001 |
|
From: Lars Kanis <lars@greiz-reinsdorf.de> |
|
Date: Fri, 27 Dec 2019 18:18:59 +0100 |
|
Subject: [PATCH] Fix determining of ruby versions in "rake native gem" |
|
|
|
"rake native gem" without "cross" didn't set the ruby version constraint. |
|
Instead it failed with NoMethodError like so: |
|
|
|
/ffi $ rake native gem |
|
no configuration section for specified version of Ruby (rbconfig-i386-mingw32-2.6.3) |
|
no configuration section for specified version of Ruby (rbconfig-x64-mingw32-2.6.3) |
|
install -c build/x86_64-linux/ffi_c/2.6.3/ffi_c.so lib/ffi_c.so |
|
cp build/x86_64-linux/ffi_c/2.6.3/ffi_c.so build/x86_64-linux/stage/lib/ffi_c.so |
|
rake aborted! |
|
NoMethodError: undefined method `split' for nil:NilClass |
|
/home/lars/.rvm/gems/ruby-2.6.3/gems/rake-compiler-1.0.9/lib/rake/extensiontask.rb:515:in `ruby_api_version' |
|
/home/lars/.rvm/gems/ruby-2.6.3/gems/rake-compiler-1.0.9/lib/rake/extensiontask.rb:262:in `block in define_native_tasks' |
|
/home/lars/.rvm/gems/ruby-2.6.3/gems/rake-12.3.3/exe/rake:27:in `<top (required)>' |
|
/home/lars/.rvm/gems/ruby-2.6.3/bin/ruby_executable_hooks:24:in `eval' |
|
/home/lars/.rvm/gems/ruby-2.6.3/bin/ruby_executable_hooks:24:in `<main>' |
|
Tasks: TOP => native => native:x86_64-linux => native:ffi:x86_64-linux |
|
(See full trace by running task with --trace) |
|
--- |
|
lib/rake/extensiontask.rb | 4 ++++ |
|
1 file changed, 4 insertions(+) |
|
|
|
diff --git a/lib/rake/extensiontask.rb b/lib/rake/extensiontask.rb |
|
index d85b1a3..cb1ea12 100644 |
|
--- a/lib/rake/extensiontask.rb |
|
+++ b/lib/rake/extensiontask.rb |
|
@@ -242,6 +242,10 @@ Java extension should be preferred. |
|
# lib_path |
|
lib_path = lib_dir |
|
|
|
+ # Update compiled platform/version combinations |
|
+ ruby_versions = (@ruby_versions_per_platform[platf] ||= []) |
|
+ ruby_versions << ruby_ver |
|
+ |
|
# create 'native:gem_name' and chain it to 'native' task |
|
unless Rake::Task.task_defined?("native:#{@gem_spec.name}:#{platf}") |
|
task "native:#{@gem_spec.name}:#{platf}" do |t| |
|
-- |
|
2.20.1 |
|
|
|
|