%YAML 1.2 --- | # -*- ruby -*- # encoding: utf-8 $LOAD_PATH.push File.expand_path('../src/ruby/lib', __FILE__) require 'grpc/version' Gem::Specification.new do |s| s.name = 'grpc' s.version = GRPC::VERSION s.authors = ['gRPC Authors'] s.email = 'grpc-io@googlegroups.com' s.homepage = 'https://github.com/google/grpc/tree/master/src/ruby' s.summary = 'GRPC system in Ruby' s.description = 'Send RPCs from Ruby using GRPC' s.license = 'Apache-2.0' s.required_ruby_version = '>= 2.4.0' s.files = %w( Makefile .yardopts ) s.files += %w( etc/roots.pem ) s.files += Dir.glob('src/ruby/bin/**/*') s.files += Dir.glob('src/ruby/ext/**/*') s.files += Dir.glob('src/ruby/lib/**/*').reject do |f| # Binaries are included by rake-compiler and would lead to circular dependencies here File.fnmatch("**/?.?/grpc_c.so", f) end s.files += Dir.glob('src/ruby/pb/**/*').reject do |f| f.match(%r{^src/ruby/pb/test}) end s.files += Dir.glob('include/grpc/**/*') s.test_files = Dir.glob('src/ruby/spec/**/*') s.bindir = 'src/ruby/bin' s.require_paths = %w( src/ruby/lib src/ruby/bin src/ruby/pb ) s.platform = Gem::Platform::RUBY s.add_dependency 'google-protobuf', '~> ${settings.protobuf_major_minor_version}' s.add_dependency 'googleapis-common-protos-types', '~> 1.0' s.add_development_dependency 'bundler', '>= 1.9' s.add_development_dependency 'facter', '~> 2.4' s.add_development_dependency 'logging', '~> 2.0' s.add_development_dependency 'simplecov', '~> 0.14.1' s.add_development_dependency 'rake', '~> 13.0' s.add_development_dependency 'rake-compiler', '~> 1.1' s.add_development_dependency 'rake-compiler-dock', '~> 1.0' s.add_development_dependency 'rspec', '~> 3.6' s.add_development_dependency 'rubocop', '~> 0.49.1' s.add_development_dependency 'signet', '~> 0.7' s.add_development_dependency 'googleauth', '>= 0.5.1', '< 0.10' s.extensions = %w(src/ruby/ext/grpc/extconf.rb) <% files = [] ruby_deps = ruby_gem.get('deps', []) lib_maps = {lib.name: lib for lib in libs} for dep in ruby_deps[:]: ruby_deps.extend(lib_maps[dep].transitive_deps) for dep in ruby_deps: lib = lib_maps[dep] files.extend(lib.get('public_headers', []) + lib.headers + lib.src) files = sorted(set(files)) %> % for file in files: s.files += %w( ${file} ) % endfor end