extract_ttc 0.3.4 → 0.3.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 726ed344297adb0a19bf31a9805601a20387201583633760437a93535990ceef
4
- data.tar.gz: 16ee6ef956167272ce1dd07b7cc93c9517e1cac4feae613c3fb41f77995e1822
3
+ metadata.gz: 590052a1f263a68b8eab78f76674f3a73291131ee360cc1dfbff8900b460f17f
4
+ data.tar.gz: 1bd7b0d42aaef2f2e80daa65119fb16383acc33f6425b79204b00411779d560a
5
5
  SHA512:
6
- metadata.gz: 89699b35d304b4b4616fdbe0b7a017aa263a928142a3f4a94369d6ab17089ae5401b0097e4abe42b3be3a636146645e3b267eb254d8a3e67686314b538c5dd0c
7
- data.tar.gz: 28c6a9d78339b3e9ddb4460f78d9b3c2049a721e81894760adc6638df59469315beeed3c2d515197862d6cc9caa495977f59af56621d706b7fe032d097c141ac
6
+ metadata.gz: 844f688c6ed9ed8948ab3f113952953a5f4f9a553ba569a3a97eebb4e14330926fef6ea99025a607ec8b9e2a90e4edc9ef0447e86ef2f4f189603023cede9717
7
+ data.tar.gz: c4535b912d18f5fe13f4ab7113a9d97416cd244caa4cac3c2c128a55e8f7538fd9ccb3a8d396995fb31e4aca7873294788d3535adfcd13baed330d7738830192
data/.gitignore CHANGED
@@ -8,8 +8,10 @@
8
8
  /spec/reports/
9
9
  /tmp/
10
10
  /Gemfile.lock
11
- **/*.so
12
- **/*.o
11
+
12
+ /lib/*.so
13
+ /lib/*.bundle
14
+ /ext/*.o
13
15
 
14
16
  # remote file cache
15
17
  .rubocop-*
data/Gemfile CHANGED
@@ -2,3 +2,10 @@ source "https://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in extract_ttc.gemspec
4
4
  gemspec
5
+
6
+ gem "rake-compiler", "~> 1.2"
7
+ gem "rake-compiler-dock", "~> 1.2"
8
+ gem "rspec", "~> 3.0"
9
+ gem "rubocop", "~> 1.5"
10
+ gem "rubocop-performance", "~> 1.10"
11
+ gem "rubocop-rails", "~> 2.9"
data/README.adoc CHANGED
@@ -1,3 +1,8 @@
1
+ image:https://img.shields.io/gem/v/extract_ttc.svg["Gem Version", link="https://rubygems.org/gems/extract_ttc"]
2
+ image:https://github.com/fontist/extract_ttc/workflows/test-and-release/badge.svg["Build Status", link="https://github.com/fontist/extract_ttc/actions?workflow=test-and-release"]
3
+ // image:https://codeclimate.com/github/metanorma/extract_ttc/badges/gpa.svg["Code Climate", link="https://codeclimate.com/github/fontist/extract_ttc"]
4
+ image:https://img.shields.io/github/issues-pr-raw/fontist/extract_ttc.svg["Pull Requests", link="https://github.com/fontist/extract_ttc/pulls"]
5
+
1
6
  = ExtractTtc: Ruby gem to extract TTF from TTC
2
7
 
3
8
  == Purpose
data/Rakefile CHANGED
@@ -20,7 +20,7 @@ rescue LoadError
20
20
  end
21
21
  # -- Allow rake-compiler-dock configuration without dev. dependencies
22
22
 
23
- R_CC_V = "RUBY_CC_VERSION=3.1.0:3.0.0:2.7.0".freeze
23
+ ruby_cc_version = "3.1.0"
24
24
  bundler_ver = ENV["BUNDLER_VER"] || "2.3.22"
25
25
 
26
26
  task default: :spec
@@ -28,9 +28,18 @@ task spec: :compile
28
28
 
29
29
  spec = Gem::Specification.load("extract_ttc.gemspec")
30
30
 
31
- ext_thru_rc_dock = %w[x86_64-linux aarch64-linux] +
32
- %w[x64-mingw32 x64-mingw-ucrt x86_64-darwin arm64-darwin]
33
-
31
+ ext_thru_rc_dock = %w[
32
+ x86_64-linux
33
+ aarch64-linux
34
+ x64-mingw32
35
+ x64-mingw-ucrt
36
+ x86_64-darwin
37
+ arm64-darwin
38
+ ]
39
+
40
+ # TODO automate build with:
41
+ # "rbsys/x86_64-linux-musl:latest" - for x86_64-linux-musl
42
+ # "*" - find/create image for aarch64-linux-musl
34
43
  ext_thru_musl_cc = %w[x86_64-linux-musl aarch64-linux-musl]
35
44
 
36
45
  # HACK: Prevent rake-compiler from overriding required_ruby_version,
@@ -60,31 +69,24 @@ namespace "gem" do
60
69
  RCD
61
70
  end
62
71
 
63
- desc "build native gems with rake-compiler-dock"
64
- task "native" => "cache" do
65
- ext_thru_rc_dock.each do |plat|
66
- RakeCompilerDock.sh <<~RCD, platform: plat
67
- gem install bundler:#{bundler_ver} --no-document &&
68
- bundle install --local &&
69
- bundle exec rake native:#{plat} gem #{R_CC_V}
70
- RCD
71
- end
72
- end
73
- end
74
-
75
- namespace "gem" do
76
72
  ext_thru_rc_dock.each do |plat|
77
73
  desc "Build native gems with rake-compiler-dock in parallel"
78
74
  multitask "parallel" => plat
79
75
 
80
76
  desc "Build the native gem for #{plat}"
81
77
  task plat => "cache" do
78
+ ruby_cc_ver = if plat == "x64-mingw32"
79
+ "3.0.0"
80
+ else
81
+ ruby_cc_version
82
+ end
83
+
82
84
  RakeCompilerDock.sh <<~RCD, platform: plat
83
85
  gem install bundler:#{bundler_ver} --no-document &&
84
86
  bundle install --local &&
85
87
  bundle exec rake native:#{plat} \
86
88
  pkg/#{exttask.gem_spec.full_name}-#{plat}.gem \
87
- #{R_CC_V}
89
+ RUBY_CC_VERSION=#{ruby_cc_ver}
88
90
  RCD
89
91
  end
90
92
  end
data/extract_ttc.gemspec CHANGED
@@ -28,13 +28,6 @@ Gem::Specification.new do |spec|
28
28
  spec.add_runtime_dependency "bundler", "~> 2.3", ">= 2.3.22"
29
29
  spec.add_runtime_dependency "ffi", "~> 1.0"
30
30
  spec.add_runtime_dependency "rake", "~> 13"
31
- spec.add_runtime_dependency "rake-compiler", "~> 1.2"
32
- spec.add_runtime_dependency "rake-compiler-dock", "~> 1.2"
33
-
34
- spec.add_development_dependency "rspec", "~> 3.0"
35
- spec.add_development_dependency "rubocop", "~> 1.5"
36
- spec.add_development_dependency "rubocop-performance", "~> 1.10"
37
- spec.add_development_dependency "rubocop-rails", "~> 2.9"
38
31
 
39
32
  spec.extensions << "ext/stripttc/extconf.rb"
40
33
  spec.metadata["rubygems_mfa_required"] = "false"
@@ -1,3 +1,3 @@
1
1
  module ExtractTtc
2
- VERSION = "0.3.4".freeze
2
+ VERSION = "0.3.6".freeze
3
3
  end
data/lib/extract_ttc.rb CHANGED
@@ -16,19 +16,9 @@ module ExtractTtc
16
16
  extend FFI::Library
17
17
  # NOTE: ffi doesn't support bundles out of box https://github.com/ffi/ffi/issues/42#issuecomment-750031554
18
18
  # NOTE: rake-compiler doesn't support dylib generation https://github.com/rake-compiler/rake-compiler/issues/183
19
- lib_name = if File.exist?(
20
- File.join(
21
- File.dirname(__FILE__),
22
- RUBY_VERSION.split(".").first(2).join("."),
23
- "stripttc.bundle",
24
- ),
25
- ) || File.exist?(
26
- File.join(
27
- File.dirname(__FILE__),
28
- "stripttc.bundle",
29
- ),
30
- )
31
- "stripttc.bundle"
19
+ macos_binary = "stripttc.bundle"
20
+ lib_name = if File.exist?(File.join(File.dirname(__FILE__), macos_binary))
21
+ macos_binary
32
22
  else
33
23
  "stripttc.so"
34
24
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: extract_ttc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.4
4
+ version: 0.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-02-13 00:00:00.000000000 Z
11
+ date: 2023-03-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -58,90 +58,6 @@ dependencies:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
60
  version: '13'
61
- - !ruby/object:Gem::Dependency
62
- name: rake-compiler
63
- requirement: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: '1.2'
68
- type: :runtime
69
- prerelease: false
70
- version_requirements: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - "~>"
73
- - !ruby/object:Gem::Version
74
- version: '1.2'
75
- - !ruby/object:Gem::Dependency
76
- name: rake-compiler-dock
77
- requirement: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - "~>"
80
- - !ruby/object:Gem::Version
81
- version: '1.2'
82
- type: :runtime
83
- prerelease: false
84
- version_requirements: !ruby/object:Gem::Requirement
85
- requirements:
86
- - - "~>"
87
- - !ruby/object:Gem::Version
88
- version: '1.2'
89
- - !ruby/object:Gem::Dependency
90
- name: rspec
91
- requirement: !ruby/object:Gem::Requirement
92
- requirements:
93
- - - "~>"
94
- - !ruby/object:Gem::Version
95
- version: '3.0'
96
- type: :development
97
- prerelease: false
98
- version_requirements: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: '3.0'
103
- - !ruby/object:Gem::Dependency
104
- name: rubocop
105
- requirement: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: '1.5'
110
- type: :development
111
- prerelease: false
112
- version_requirements: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - "~>"
115
- - !ruby/object:Gem::Version
116
- version: '1.5'
117
- - !ruby/object:Gem::Dependency
118
- name: rubocop-performance
119
- requirement: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - "~>"
122
- - !ruby/object:Gem::Version
123
- version: '1.10'
124
- type: :development
125
- prerelease: false
126
- version_requirements: !ruby/object:Gem::Requirement
127
- requirements:
128
- - - "~>"
129
- - !ruby/object:Gem::Version
130
- version: '1.10'
131
- - !ruby/object:Gem::Dependency
132
- name: rubocop-rails
133
- requirement: !ruby/object:Gem::Requirement
134
- requirements:
135
- - - "~>"
136
- - !ruby/object:Gem::Version
137
- version: '2.9'
138
- type: :development
139
- prerelease: false
140
- version_requirements: !ruby/object:Gem::Requirement
141
- requirements:
142
- - - "~>"
143
- - !ruby/object:Gem::Version
144
- version: '2.9'
145
61
  description: Extract font collection to separate font files
146
62
  email:
147
63
  - operations@ribose.com