blob: e3770be4164ffbe1713d88f214a42f0a0022d913 [file] [log] [blame]
Chris Fallin91473dc2014-12-12 15:58:26 -08001Gem::Specification.new do |s|
2 s.name = "google-protobuf"
Jie Luo1231af12023-11-02 15:28:01 -07003 s.version = "3.25.0"
Julio Monteiro8c3a2ce2019-08-22 18:32:06 -03004 git_tag = "v#{s.version.to_s.sub('.rc.', '-rc')}" # Converts X.Y.Z.rc.N to vX.Y.Z-rcN, used for the git tag
Josh Haberman8c40b512017-02-13 14:16:38 -08005 s.licenses = ["BSD-3-Clause"]
Chris Fallin91473dc2014-12-12 15:58:26 -08006 s.summary = "Protocol Buffers"
7 s.description = "Protocol Buffers are Google's data interchange format."
Adam Greenec70b6052015-05-01 08:54:18 -07008 s.homepage = "https://developers.google.com/protocol-buffers"
Chris Fallin91473dc2014-12-12 15:58:26 -08009 s.authors = ["Protobuf Authors"]
10 s.email = "protobuf@googlegroups.com"
Julio Monteiro8c3a2ce2019-08-22 18:32:06 -030011 s.metadata = { "source_code_uri" => "https://github.com/protocolbuffers/protobuf/tree/#{git_tag}/ruby" }
Chris Fallin91473dc2014-12-12 15:58:26 -080012 s.require_paths = ["lib"]
Jason Lunnc52d80c2023-07-24 23:13:47 -070013 s.files = Dir.glob('lib/**/*.{rb,rake}')
Josh Haberman70a4b032016-02-04 14:18:14 -080014 if RUBY_PLATFORM == "java"
Jason Lunn07f3cab2016-09-29 00:18:55 -040015 s.platform = "java"
Jason Lunnc52d80c2023-07-24 23:13:47 -070016 s.files += ["lib/google/protobuf_java.jar"] +
17 Dir.glob('ext/**/*').reject do |file|
18 File.basename(file) =~ /^((convert|defs|map|repeated_field)\.[ch]|
19 BUILD\.bazel|extconf\.rb|wrap_memcpy\.c)$/x
20 end
21 s.extensions = ["ext/google/protobuf_c/Rakefile"]
22 s.add_dependency "ffi", "~>1"
23 s.add_dependency "ffi-compiler", "~>1"
Josh Haberman70a4b032016-02-04 14:18:14 -080024 else
Jason Lunnc52d80c2023-07-24 23:13:47 -070025 s.files += Dir.glob('ext/**/*').reject do |file|
26 File.basename(file) =~ /^(BUILD\.bazel)$/
27 end
28 s.extensions = %w[
29 ext/google/protobuf_c/extconf.rb
30 ext/google/protobuf_c/Rakefile
31 ]
32 s.add_development_dependency "rake-compiler-dock", "= 1.2.1"
33 end
ericsalo843b74e2023-08-09 15:59:26 -070034 s.required_ruby_version = '>= 2.7'
Jason Lunnc52d80c2023-07-24 23:13:47 -070035 s.add_development_dependency "rake", "~> 13"
36 s.add_development_dependency "ffi", "~>1"
37 s.add_development_dependency "ffi-compiler", "~>1"
Masaki Hara64f6c592020-04-17 15:31:47 +090038 s.add_development_dependency "rake-compiler", "~> 1.1.0"
Josh Haberman8c40b512017-02-13 14:16:38 -080039 s.add_development_dependency "test-unit", '~> 3.0', '>= 3.0.9'
Chris Fallin91473dc2014-12-12 15:58:26 -080040end