magica 0.8.0 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/magica/application.rb +9 -1
- data/lib/magica/build.rb +1 -1
- data/lib/magica/dependency.rb +18 -5
- data/lib/magica/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0170d95ed71566285f2b7b5d903fa9c2b447f97c
|
4
|
+
data.tar.gz: 1d2cf2541c7910760fb1036b9dd0946bb6d37dff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3d5d8bee53d637e8f375507ed1b9b2ad842b19bc4687453594f0325942bbab87b07e075d0c4c3228f5cbea63f747235453ef8637715f7e8e745d3e9c29941f5a
|
7
|
+
data.tar.gz: b8be26e4404c06911c064972d546bd4e9cd18cebf78bdf6188abb00046c000dbbbd0563d09f315c505e9f793423cfebe4fc391151763bfdcc316d1983d70e46c
|
data/lib/magica/application.rb
CHANGED
@@ -46,7 +46,7 @@ module Magica
|
|
46
46
|
switch =~ /--#{Regexp.union(not_applicable_to_magica)}/
|
47
47
|
end
|
48
48
|
|
49
|
-
super.push(version, clean, clean_all, target)
|
49
|
+
super.push(version, clean, clean_all, rebuild, target)
|
50
50
|
end
|
51
51
|
|
52
52
|
def top_level_tasks
|
@@ -99,6 +99,14 @@ module Magica
|
|
99
99
|
end]
|
100
100
|
end
|
101
101
|
|
102
|
+
def rebuild
|
103
|
+
['--rebuild', '-r',
|
104
|
+
'Rerun all dependency build command',
|
105
|
+
lambda do |_value|
|
106
|
+
options.rebuild = true
|
107
|
+
end]
|
108
|
+
end
|
109
|
+
|
102
110
|
def target
|
103
111
|
['--target', '-t TARGET',
|
104
112
|
'Specify the build to use',
|
data/lib/magica/build.rb
CHANGED
@@ -142,7 +142,7 @@ module Magica
|
|
142
142
|
Dependency.new(self, name, options, &block)
|
143
143
|
desc "The targets #{@name}'s dependency project : #{name}"
|
144
144
|
task "#{@name}:dependency:#{name}" do
|
145
|
-
Dependency[name].build
|
145
|
+
Dependency[name].build
|
146
146
|
end
|
147
147
|
@dependencies << "#{@name}:dependency:#{name}"
|
148
148
|
@static_libraries.push(*Dependency[name].static_libraries)
|
data/lib/magica/dependency.rb
CHANGED
@@ -27,6 +27,7 @@ module Magica
|
|
27
27
|
@dir = "lib/#{@name}"
|
28
28
|
@install_dir = "#{@dir}/build"
|
29
29
|
@build_command = 'make'
|
30
|
+
@clean_command = ''
|
30
31
|
@environments = {}
|
31
32
|
|
32
33
|
@static_libraries = []
|
@@ -66,17 +67,21 @@ module Magica
|
|
66
67
|
@build_command = command.to_s
|
67
68
|
end
|
68
69
|
|
70
|
+
def clean_command(command)
|
71
|
+
@clean_command = command.to_s
|
72
|
+
end
|
73
|
+
|
69
74
|
def static_library(*name)
|
70
75
|
@static_libraries.push(*name.flatten)
|
71
76
|
end
|
72
77
|
|
73
|
-
def build
|
78
|
+
def build
|
74
79
|
clean if @builder.options[:clean_all]
|
75
80
|
|
76
81
|
return unless exec?
|
77
82
|
|
78
83
|
setup_environment
|
79
|
-
clone
|
84
|
+
clone
|
80
85
|
exec
|
81
86
|
end
|
82
87
|
|
@@ -100,6 +105,7 @@ module Magica
|
|
100
105
|
|
101
106
|
def exec?
|
102
107
|
clean_all = @builder.options[:clean_all]
|
108
|
+
return true if @builder.options[:rebuild]
|
103
109
|
return false if !clean_all & File.exist?(@install_dir)
|
104
110
|
return false if !clean_all & @build_command.empty? & File.exist?(@dir)
|
105
111
|
true
|
@@ -112,8 +118,10 @@ module Magica
|
|
112
118
|
Dir.chdir root
|
113
119
|
end
|
114
120
|
|
115
|
-
|
116
|
-
|
121
|
+
# rubocop:disable Metrics/MethodLength
|
122
|
+
def clone
|
123
|
+
return if @builder.options[:rebuild]
|
124
|
+
@vcs = @builder.send(@command)
|
117
125
|
@vcs.flags = %w[--quiet]
|
118
126
|
|
119
127
|
puts "UPDATE DEPENDENCY\t #{[@name, @version].join(' ')}"
|
@@ -126,6 +134,7 @@ module Magica
|
|
126
134
|
checkout if @version
|
127
135
|
end
|
128
136
|
end
|
137
|
+
# rubocop:enable Metrics/MethodLength
|
129
138
|
|
130
139
|
def checkout
|
131
140
|
@vcs.checkout(source_dir, @version)
|
@@ -146,7 +155,11 @@ module Magica
|
|
146
155
|
end
|
147
156
|
|
148
157
|
def clean
|
149
|
-
FileUtils.rm_r(@install_dir, force: true)
|
158
|
+
return FileUtils.rm_r(@install_dir, force: true) if @clean_command.empty?
|
159
|
+
root = Dir.pwd
|
160
|
+
Dir.chdir source_dir
|
161
|
+
sh @clean_command, verbose: false
|
162
|
+
Dir.chdir root
|
150
163
|
end
|
151
164
|
end
|
152
165
|
end
|
data/lib/magica/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: magica
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- 蒼時弦也
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-06-
|
11
|
+
date: 2017-06-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|