cint 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/cint +50 -24
- data/lib/cint/project.rb +8 -1
- data/lib/cint/version.rb +1 -1
- metadata +5 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: affdf44f9c627e7021bea7c252316a4a00dcd03e
|
4
|
+
data.tar.gz: 6e8bc2e0b5dafa8530edc6f2f6e98afba023e775
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d2b7c76c14b543399a7a26f04c9c65a7d0b75e9f0a2cfc55f657a5b3ed4436ed677277ce39ec2b0135c1f88735b5bf72357fdf44981bf04aeb702d7456f78ddd
|
7
|
+
data.tar.gz: 1943e0cb0b2b5feb08965a3f453fa07ea2b2516f3a7a0a943c0c47b1df931fb66065c2603277bfdb49a9274cf806917ad6fdd34753c390afe1ce18e6146d919b
|
data/bin/cint
CHANGED
@@ -11,7 +11,7 @@ require 'lib/xcodeproj'
|
|
11
11
|
require 'lib/cint'
|
12
12
|
|
13
13
|
program :name, 'integrator'
|
14
|
-
program :version, '0.
|
14
|
+
program :version, '0.1.6'
|
15
15
|
program :description, 'Integrates Carthage Frameworks'
|
16
16
|
program :help, 'Author', 'Alex Antonyuk <alex@antonyuk.me>'
|
17
17
|
|
@@ -59,9 +59,25 @@ def prepare_frameworks(frameworks)
|
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
62
|
-
def print_report(
|
62
|
+
def print_report(target, all, integrated)
|
63
|
+
all.map! { |f| File.basename(f) }
|
64
|
+
integrated.map! { |f| File.basename(f) }
|
65
|
+
|
66
|
+
puts "Target ".green + target.name.yellow
|
67
|
+
puts
|
68
|
+
|
69
|
+
old = all - integrated
|
70
|
+
unless old.empty?
|
71
|
+
info 'Existed:'
|
72
|
+
puts old.join("\n").yellow
|
73
|
+
end
|
74
|
+
puts
|
63
75
|
info 'Integrated:'
|
64
|
-
|
76
|
+
if integrated.empty?
|
77
|
+
puts 'None'.yellow
|
78
|
+
else
|
79
|
+
puts integrated.join("\n").yellow
|
80
|
+
end
|
65
81
|
end
|
66
82
|
|
67
83
|
def find_project
|
@@ -82,6 +98,33 @@ def get_project_name(args)
|
|
82
98
|
project_name
|
83
99
|
end
|
84
100
|
|
101
|
+
def intergate_frameworks(target, project)
|
102
|
+
platform = SDK_TO_PLATFORM[target.sdk]
|
103
|
+
frameworks = CarthageFiles.frameworks(platform)
|
104
|
+
|
105
|
+
if frameworks.empty?
|
106
|
+
warning 'No frameworks found'
|
107
|
+
return
|
108
|
+
end
|
109
|
+
|
110
|
+
# Add Framework Files
|
111
|
+
added_frameworks = project.add_missing_frameworks_to_target(target, frameworks)
|
112
|
+
|
113
|
+
# Add Frameworks Search Path (FRAMEWORK_SEARCH_PATHS)
|
114
|
+
fw_search_path = "$(PROJECT_DIR)/Carthage/Build/#{platform}"
|
115
|
+
project.add_path(fw_search_path)
|
116
|
+
|
117
|
+
# Integrate Shell Script
|
118
|
+
phase = target.carthage_build_phase
|
119
|
+
prepared_frameworks = prepare_frameworks(frameworks)
|
120
|
+
phase.setup_with_frameworks(prepared_frameworks) unless target.sdk == 'macosx'
|
121
|
+
|
122
|
+
# footer
|
123
|
+
say "\n"
|
124
|
+
print_report(target, frameworks, added_frameworks)
|
125
|
+
say "\n"
|
126
|
+
end
|
127
|
+
|
85
128
|
# Commands
|
86
129
|
command :install do |c|
|
87
130
|
c.syntax = 'cint install <project_name>'
|
@@ -98,30 +141,13 @@ command :install do |c|
|
|
98
141
|
# choose target
|
99
142
|
choice = choose("Choose target:\n", *project.targets.map(&:name))
|
100
143
|
target = project.target_by_name(choice)
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
# Add Framework Files
|
107
|
-
project.add_missing_frameworks_to_target(target, frameworks)
|
108
|
-
|
109
|
-
# Add Frameworks Search Path (FRAMEWORK_SEARCH_PATHS)
|
110
|
-
fw_search_path = "$(PROJECT_DIR)/Carthage/Build/#{platform}"
|
111
|
-
project.add_path(fw_search_path)
|
112
|
-
|
113
|
-
# Integrate Shell Script
|
114
|
-
phase = target.carthage_build_phase
|
115
|
-
prepared_frameworks = prepare_frameworks(frameworks)
|
116
|
-
phase.setup_with_frameworks(prepared_frameworks) unless target.sdk == 'macosx'
|
117
|
-
|
144
|
+
|
145
|
+
# integrate
|
146
|
+
intergate_frameworks(target, project)
|
147
|
+
|
118
148
|
# Save Project
|
119
149
|
project.save
|
120
150
|
|
121
|
-
# footer
|
122
|
-
say "\n"
|
123
|
-
print_report(frameworks)
|
124
|
-
say "\n"
|
125
151
|
info 'Done. Re-open Project'
|
126
152
|
end
|
127
153
|
end
|
data/lib/cint/project.rb
CHANGED
@@ -25,15 +25,22 @@ module Cint
|
|
25
25
|
fs = _fix_frameworks_paths(frameworks)
|
26
26
|
fs -= target.frameworks_build_phase.files.map { |f| f.file_ref.path }
|
27
27
|
|
28
|
+
added_frameworks = []
|
28
29
|
files = fs.map do |f|
|
29
30
|
file = @project.frameworks_group.files.find { |ff| ff.path == f}
|
30
|
-
|
31
|
+
if file.nil?
|
32
|
+
file = @project.frameworks_group.new_file(f) if file.nil?
|
33
|
+
added_frameworks << f
|
34
|
+
end
|
35
|
+
|
31
36
|
file
|
32
37
|
end
|
33
38
|
|
34
39
|
files.each do |f|
|
35
40
|
target.frameworks_build_phase.add_file_reference(f)
|
36
41
|
end
|
42
|
+
|
43
|
+
return added_frameworks
|
37
44
|
end
|
38
45
|
|
39
46
|
def _fix_frameworks_paths(frameworks)
|
data/lib/cint/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cint
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Antonyuk
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-08-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: xcodeproj
|
@@ -72,20 +72,14 @@ dependencies:
|
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '11.
|
76
|
-
- - ">="
|
77
|
-
- !ruby/object:Gem::Version
|
78
|
-
version: 11.1.2
|
75
|
+
version: '11.2'
|
79
76
|
type: :development
|
80
77
|
prerelease: false
|
81
78
|
version_requirements: !ruby/object:Gem::Requirement
|
82
79
|
requirements:
|
83
80
|
- - "~>"
|
84
81
|
- !ruby/object:Gem::Version
|
85
|
-
version: '11.
|
86
|
-
- - ">="
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
version: 11.1.2
|
82
|
+
version: '11.2'
|
89
83
|
- !ruby/object:Gem::Dependency
|
90
84
|
name: rspec
|
91
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -135,7 +129,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
135
129
|
version: '0'
|
136
130
|
requirements: []
|
137
131
|
rubyforge_project:
|
138
|
-
rubygems_version: 2.6.
|
132
|
+
rubygems_version: 2.6.6
|
139
133
|
signing_key:
|
140
134
|
specification_version: 4
|
141
135
|
summary: Simplifies all routines with adding Frameworks built with Carthage into a
|