mgem 0.1.1 → 0.1.2
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.
- 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