summaryrefslogtreecommitdiff
path: root/ext/io/console/io-console.gemspec
blob: f9c1729cb7795aa550877e39800102ea9d4a2173 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# -*- ruby -*-
_VERSION = ["", "ext/io/console/"].find do |dir|
  begin
    break File.open(File.join(__dir__, "#{dir}console.c")) {|f|
      f.gets("\nIO_CONSOLE_VERSION ")
      f.gets[/"(.+)"/, 1]
    }
  rescue Errno::ENOENT
  end
end

Gem::Specification.new do |s|
  s.name = "io-console"
  s.version = _VERSION
  s.summary = "Console interface"
  s.email = "nobu@ruby-lang.org"
  s.description = "add console capabilities to IO instances."
  s.required_ruby_version = ">= 2.6.0"
  s.homepage = "https://github.com/ruby/io-console"
  s.metadata["source_code_url"] = s.homepage
  s.metadata["changelog_uri"] = s.homepage + "/releases"
  s.authors = ["Nobu Nakada"]
  s.require_path = %[lib]
  s.files = %w[
    .document
    LICENSE.txt
    README.md
    ext/io/console/console.c
    ext/io/console/extconf.rb
    ext/io/console/win32_vk.inc
    lib/io/console/size.rb
  ]
  s.extensions = %w[ext/io/console/extconf.rb]

  if Gem::Platform === s.platform and s.platform =~ 'java'
    s.files.delete_if {|f| f.start_with?("ext/")}
    s.extensions.clear
    s.require_paths.unshift('lib/ffi')
    s.files.concat(%w[
      lib/ffi/io/console.rb
      lib/ffi/io/console/bsd_console.rb
      lib/ffi/io/console/common.rb
      lib/ffi/io/console/linux_console.rb
      lib/ffi/io/console/native_console.rb
      lib/ffi/io/console/stty_console.rb
      lib/ffi/io/console/stub_console.rb
      lib/ffi/io/console/version.rb
    ])
  end

  s.licenses = ["Ruby", "BSD-2-Clause"]
end