mgem 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/bin/mgem +57 -26
- data/lib/mgem.rb +1 -1
- metadata +1 -1
data/bin/mgem
CHANGED
@@ -28,6 +28,55 @@ def list_active_gems(current_gems)
|
|
28
28
|
puts
|
29
29
|
end
|
30
30
|
|
31
|
+
def get_toolchain
|
32
|
+
puts <<__TOOLCHAIN_SELECT__
|
33
|
+
|
34
|
+
Please choose your toolchain:
|
35
|
+
'gcc' for GNU Compiler Collection
|
36
|
+
'clang' for LLVM C Compiler
|
37
|
+
'vs' for Visual Studio 2012 on Windows
|
38
|
+
|
39
|
+
__TOOLCHAIN_SELECT__
|
40
|
+
|
41
|
+
print 'Toolchain: '
|
42
|
+
STDOUT.flush
|
43
|
+
toolchain = case STDIN.gets.chomp
|
44
|
+
when 'vs'
|
45
|
+
'vs2012'
|
46
|
+
when 'clang'
|
47
|
+
'clang'
|
48
|
+
when 'gcc'
|
49
|
+
'gcc'
|
50
|
+
else
|
51
|
+
puts <<__ERROR__
|
52
|
+
|
53
|
+
Your input "#{toolchain}" wasn't valid.
|
54
|
+
Fallback to GCC toolchain!
|
55
|
+
__ERROR__
|
56
|
+
|
57
|
+
'gcc'
|
58
|
+
end
|
59
|
+
|
60
|
+
toolchain
|
61
|
+
end
|
62
|
+
|
63
|
+
def get_binaries
|
64
|
+
puts
|
65
|
+
print 'Compile mrbc? (y/n): '
|
66
|
+
mrbc = STDIN.gets.chomp
|
67
|
+
print 'Compile mruby? (y/n): '
|
68
|
+
mruby = STDIN.gets.chomp
|
69
|
+
print 'Compile mirb? (y/n): '
|
70
|
+
mirb = STDIN.gets.chomp
|
71
|
+
|
72
|
+
binaries = []
|
73
|
+
binaries << 'mrbc' unless mrbc == 'n'
|
74
|
+
binaries << 'mruby' unless mruby == 'n'
|
75
|
+
binaries << 'mirb' unless mirb == 'n'
|
76
|
+
|
77
|
+
binaries.join ' '
|
78
|
+
end
|
79
|
+
|
31
80
|
if ARGV[0] == 'info' or ARGV[0] == 'detail'
|
32
81
|
puts "Detail information of '#{ARGV[1]}':"
|
33
82
|
gems.search(ARGV[1], :name).each {|gem| detail_info_proc.call(gem) }
|
@@ -61,34 +110,13 @@ elsif ARGV[0] == 'update'
|
|
61
110
|
puts "#{new_gems} new GEMs!"
|
62
111
|
end
|
63
112
|
elsif ARGV[0] == 'config'
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
'gcc' for GNU Compiler Collection
|
68
|
-
'clang' for LLVM C Compiler
|
69
|
-
'vs' for Visual Studio 2012 on Windows
|
70
|
-
|
71
|
-
__TOOLCHAIN_SELECT__
|
72
|
-
|
73
|
-
print 'Toolchain: '
|
74
|
-
STDOUT.flush
|
75
|
-
toolchain = case STDIN.gets.chomp
|
76
|
-
when 'vs'
|
77
|
-
'vs2012'
|
78
|
-
when 'clang'
|
79
|
-
'clang'
|
80
|
-
when 'gcc'
|
81
|
-
'gcc'
|
113
|
+
if ARGV[1] == 'default'
|
114
|
+
toolchain = 'gcc'
|
115
|
+
binaries = 'mrbc mruby mirb'
|
82
116
|
else
|
83
|
-
|
84
|
-
|
85
|
-
Your input "#{toolchain}" wasn't valid.
|
86
|
-
Fallback to GCC toolchain!
|
87
|
-
__ERROR__
|
88
|
-
|
89
|
-
'gcc'
|
117
|
+
toolchain = get_toolchain
|
118
|
+
binaries = get_binaries
|
90
119
|
end
|
91
|
-
|
92
120
|
gem_command = gems.active.map do |g|
|
93
121
|
" conf.gem :git => \'#{g.repository}\'"
|
94
122
|
end.join("\n")
|
@@ -105,6 +133,8 @@ __ERROR__
|
|
105
133
|
MRuby::Build.new do |conf|
|
106
134
|
toolchain :#{toolchain}
|
107
135
|
|
136
|
+
conf.bins = %w(#{binaries})
|
137
|
+
|
108
138
|
#{gem_command}
|
109
139
|
end
|
110
140
|
|
@@ -123,6 +153,7 @@ Usage:
|
|
123
153
|
mgem rm *name* De-Activate a GEM
|
124
154
|
mgem search *pattern* Search for GEMs
|
125
155
|
mgem config Generate a mruby build config including all active GEMs
|
156
|
+
mgem config default Same as 'mgem config' but w/o interactive questions
|
126
157
|
mgem update Update the list of GEMs
|
127
158
|
|
128
159
|
Website:
|
data/lib/mgem.rb
CHANGED