build-tool 0.0.3 → 0.1.0
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.tar.gz.sig +0 -0
- data/History.txt +28 -1
- data/Manifest.txt +91 -52
- data/README.txt +63 -0
- data/Rakefile +20 -23
- data/bin/build-tool +53 -0
- data/lib/build-tool.rb +7 -0
- data/lib/build-tool/GUI.rb +360 -0
- data/lib/build-tool/application.rb +84 -0
- data/lib/build-tool/build-system/autoconf.rb +60 -0
- data/lib/build-tool/build-system/base.rb +142 -0
- data/lib/build-tool/build-system/cmake.rb +119 -0
- data/lib/build-tool/build-system/custom.rb +115 -0
- data/lib/build-tool/build-system/qt.rb +113 -0
- data/lib/build-tool/cfg/lexer.rb +558 -0
- data/lib/build-tool/cfg/lexer.rex +248 -0
- data/lib/build-tool/cfg/lexer_base.rb +82 -0
- data/lib/build-tool/cfg/node.rb +94 -0
- data/lib/build-tool/cfg/parser.rb +871 -0
- data/lib/build-tool/cfg/parser.y +279 -0
- data/lib/build-tool/cfg/visitor.rb +471 -0
- data/lib/build-tool/commands.rb +639 -0
- data/lib/build-tool/commands/build.rb +120 -0
- data/lib/build-tool/commands/configure.rb +73 -0
- data/lib/build-tool/commands/ctags.rb +46 -0
- data/lib/build-tool/commands/environments.rb +29 -0
- data/lib/build-tool/commands/environments/list.rb +37 -0
- data/lib/build-tool/commands/environments/set.rb +33 -0
- data/lib/build-tool/commands/fetch.rb +50 -0
- data/lib/build-tool/commands/files.rb +73 -0
- data/lib/build-tool/commands/help.rb +22 -0
- data/lib/build-tool/commands/info.rb +48 -0
- data/lib/build-tool/commands/install.rb +56 -0
- data/lib/build-tool/commands/modules.rb +29 -0
- data/lib/build-tool/commands/modules/info.rb +75 -0
- data/lib/build-tool/commands/modules/list.rb +49 -0
- data/lib/build-tool/commands/modules/shell.rb +40 -0
- data/lib/build-tool/commands/rebase.rb +46 -0
- data/lib/build-tool/commands/recipes.rb +32 -0
- data/lib/build-tool/commands/recipes/info.rb +46 -0
- data/lib/build-tool/commands/recipes/install.rb +184 -0
- data/lib/build-tool/commands/recipes/list.rb +33 -0
- data/lib/build-tool/configuration.rb +115 -0
- data/lib/build-tool/environment.rb +119 -0
- data/lib/build-tool/errors.rb +9 -0
- data/lib/build-tool/module.rb +366 -0
- data/lib/build-tool/pluginbase.rb +43 -0
- data/lib/build-tool/recipe.rb +180 -0
- data/lib/build-tool/repository.rb +59 -0
- data/lib/build-tool/server.rb +43 -0
- data/lib/build-tool/singleton.rb +50 -0
- data/lib/build-tool/sshkey.rb +22 -0
- data/lib/build-tool/vcs/base.rb +105 -0
- data/lib/build-tool/vcs/git-svn.rb +154 -0
- data/lib/build-tool/vcs/git.rb +187 -0
- data/lib/build-tool/vcs/svn.rb +136 -0
- data/lib/mj/logging.rb +31 -0
- data/lib/mj/tools/ssh.rb +64 -0
- data/lib/{kde-build → mj/tools}/subprocess.rb +21 -16
- data/lib/mj/visitor.rb +21 -0
- data/recipes/kde/files/finish_installation.sh +16 -0
- data/recipes/kde/files/kde4.desktop +22 -0
- data/recipes/kde/files/xsession +89 -0
- data/recipes/kde/info.yaml +10 -0
- data/recipes/kde/recipe +585 -0
- data/recipes/kde/recipe-local +90 -0
- data/recipes/kde/settings.yaml +52 -0
- data/recipes/kde43/info.yaml +10 -0
- data/recipes/kde43/recipe +256 -0
- data/recipes/kde43/recipe-local +90 -0
- data/recipes/kde43/settings.yaml +32 -0
- data/recipes/kdeqt4.6/custom/qt/qtscriptgenerator/compile.sh +77 -0
- data/recipes/kdeqt4.6/custom/qt/qtscriptgenerator/configure.sh +70 -0
- data/recipes/kdeqt4.6/custom/qt/qtscriptgenerator/install.sh +39 -0
- data/recipes/kdeqt4.6/info.yaml +7 -0
- data/recipes/kdeqt4.6/recipe +155 -0
- data/recipes/kdeqt4.6/recipe-local +30 -0
- data/recipes/kdeqt4.6/settings.yaml +27 -0
- data/tags +745 -0
- data/tasks/genfiles.rake +28 -0
- data/tasks/rdoc.rake +34 -0
- data/tasks/rspec.rake +21 -0
- data/test.rb +28 -0
- data/test/commands/test_build.rb +29 -0
- data/test/test_build_system.rb +98 -0
- data/test/test_cli.rb +61 -0
- data/test/test_command.rb +175 -0
- data/test/test_configuration_parser.rb +542 -0
- data/test/test_environment.rb +82 -0
- data/test/test_helper.rb +39 -7
- data/test/test_module.rb +158 -0
- data/test/test_repository.rb +75 -0
- data/test/test_singleton.rb +51 -0
- data/test/test_ssh_key.rb +14 -0
- data/test/test_svn_parser.rb +28 -0
- data/test/test_vcs.rb +33 -0
- metadata +139 -90
- metadata.gz.sig +0 -0
- data/PostInstall.txt +0 -3
- data/TODO +0 -2
- data/bin/kde-build.rb +0 -21
- data/config/website.yml +0 -2
- data/config/website.yml.sample +0 -2
- data/lib/kde-build.rb +0 -18
- data/lib/kde-build/application.rb +0 -270
- data/lib/kde-build/build_system.rb +0 -28
- data/lib/kde-build/build_system/autoconf.rb +0 -108
- data/lib/kde-build/build_system/base.rb +0 -139
- data/lib/kde-build/build_system/cmake.rb +0 -94
- data/lib/kde-build/build_system/qtcopy.rb +0 -127
- data/lib/kde-build/command.rb +0 -42
- data/lib/kde-build/command/build.rb +0 -106
- data/lib/kde-build/command/compile.rb +0 -39
- data/lib/kde-build/command/configure.rb +0 -48
- data/lib/kde-build/command/ctags.rb +0 -41
- data/lib/kde-build/command/fetch.rb +0 -33
- data/lib/kde-build/command/help.rb +0 -71
- data/lib/kde-build/command/info.rb +0 -45
- data/lib/kde-build/command/install.rb +0 -39
- data/lib/kde-build/command/module_based.rb +0 -44
- data/lib/kde-build/command/rebase.rb +0 -50
- data/lib/kde-build/command/version.rb +0 -43
- data/lib/kde-build/configuration.rb +0 -209
- data/lib/kde-build/exception.rb +0 -6
- data/lib/kde-build/metaaid.rb +0 -18
- data/lib/kde-build/module.rb +0 -227
- data/lib/kde-build/module_configuration.rb +0 -107
- data/lib/kde-build/moduleregistry.rb +0 -85
- data/lib/kde-build/tools/ctags.rb +0 -59
- data/lib/kde-build/tools/logging.rb +0 -49
- data/lib/kde-build/tools/make.rb +0 -58
- data/lib/kde-build/tools/ssh.rb +0 -47
- data/lib/kde-build/vcs.rb +0 -28
- data/lib/kde-build/vcs/base.rb +0 -85
- data/lib/kde-build/vcs/git-svn.rb +0 -139
- data/lib/kde-build/vcs/git.rb +0 -121
- data/lib/kde-build/vcs/svn.rb +0 -102
- data/script/console +0 -10
- data/script/destroy +0 -14
- data/script/generate +0 -14
- data/script/txt2html +0 -71
- data/test.yaml.tmpl +0 -632
- data/test/test_kde-build.rb +0 -11
- data/test/test_vcs_svn.rb +0 -44
- data/website/index.html +0 -84
- data/website/index.txt +0 -59
- data/website/javascripts/rounded_corners_lite.inc.js +0 -285
- data/website/stylesheets/screen.css +0 -159
- data/website/template.html.erb +0 -50
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'build-tool/application'
|
2
|
+
require 'build-tool/commands'
|
3
|
+
|
4
|
+
module BuildTool; module Commands;
|
5
|
+
|
6
|
+
#
|
7
|
+
# Help command
|
8
|
+
#
|
9
|
+
class Help < Standard
|
10
|
+
|
11
|
+
name "help"
|
12
|
+
description "print this help text"
|
13
|
+
|
14
|
+
def do_execute( args )
|
15
|
+
return Application::instance.cli.show_help( args )
|
16
|
+
end
|
17
|
+
|
18
|
+
end # class Help
|
19
|
+
|
20
|
+
end; # module Help
|
21
|
+
|
22
|
+
end; # module BuildTool
|
@@ -0,0 +1,48 @@
|
|
1
|
+
require 'build-tool/commands'
|
2
|
+
|
3
|
+
module BuildTool; module Commands;
|
4
|
+
|
5
|
+
#
|
6
|
+
# BuildCommand
|
7
|
+
#
|
8
|
+
class Info < Standard
|
9
|
+
|
10
|
+
name "info"
|
11
|
+
description "show info"
|
12
|
+
|
13
|
+
def initialize_options
|
14
|
+
super
|
15
|
+
end
|
16
|
+
|
17
|
+
def applicable?
|
18
|
+
BuildTool::Application.instance.name != "build-tool"
|
19
|
+
end
|
20
|
+
|
21
|
+
def do_execute( args )
|
22
|
+
if args.length != 0
|
23
|
+
# *TODO* print better message
|
24
|
+
logger.warn "Arguments ignored."
|
25
|
+
end
|
26
|
+
|
27
|
+
recipe = configuration.recipe
|
28
|
+
say "Recipe"
|
29
|
+
say "------"
|
30
|
+
say "Name: #{recipe.name}"
|
31
|
+
say "Short: #{recipe.short_description}"
|
32
|
+
say "Long: #{recipe.long_description}"
|
33
|
+
say "Full Path: #{recipe.global_config_file_path('recipe')}"
|
34
|
+
say ""
|
35
|
+
say "Configuration"
|
36
|
+
say "-------------"
|
37
|
+
say "Settings: #{ Application::instance.local_settings_file_path }"
|
38
|
+
say "Overrides: #{ recipe.local_config_file_path( 'recipe' ) }"
|
39
|
+
|
40
|
+
return 0
|
41
|
+
end
|
42
|
+
|
43
|
+
end # class Info
|
44
|
+
|
45
|
+
end; end # module BuildTool::Commands
|
46
|
+
|
47
|
+
|
48
|
+
|
@@ -0,0 +1,56 @@
|
|
1
|
+
require 'build-tool/application'
|
2
|
+
require 'build-tool/commands'
|
3
|
+
|
4
|
+
module BuildTool; module Commands;
|
5
|
+
|
6
|
+
class CtagsError < BuildTool::Error; end
|
7
|
+
#
|
8
|
+
# BuildCommand
|
9
|
+
#
|
10
|
+
class Install < ModuleBasedCommand
|
11
|
+
|
12
|
+
include MJ::Tools::SubProcess
|
13
|
+
|
14
|
+
name "install"
|
15
|
+
description "install the module"
|
16
|
+
|
17
|
+
def initialize_options
|
18
|
+
|
19
|
+
@fast = false
|
20
|
+
|
21
|
+
options.on( "--fast", "Fast install. No compile (if supported)" ) { |t|
|
22
|
+
@fast = t
|
23
|
+
}
|
24
|
+
|
25
|
+
super
|
26
|
+
end
|
27
|
+
|
28
|
+
def applicable?
|
29
|
+
BuildTool::Application.instance.name != "build-tool"
|
30
|
+
end
|
31
|
+
|
32
|
+
def is_module_ready?( mod )
|
33
|
+
isready = true
|
34
|
+
if !mod.checkedout?
|
35
|
+
logger.warn "#{mod.name}: module not checked out -> skipping."
|
36
|
+
end
|
37
|
+
return isready
|
38
|
+
end
|
39
|
+
|
40
|
+
|
41
|
+
def do_execute_module( mod )
|
42
|
+
if mod.checkedout?
|
43
|
+
mod.install( @log_directory, @fast )
|
44
|
+
else
|
45
|
+
logger.info "Not checked out. Skipping"
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
end # class Build
|
50
|
+
|
51
|
+
end; end # module BuildTool::Commands
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'build-tool/commands'
|
2
|
+
|
3
|
+
module BuildTool; module Commands; module Modules
|
4
|
+
|
5
|
+
class CLI < Commands::SubCommands
|
6
|
+
|
7
|
+
name "modules"
|
8
|
+
description "Module related commands."
|
9
|
+
|
10
|
+
def initialize_options
|
11
|
+
super
|
12
|
+
end
|
13
|
+
|
14
|
+
def applicable?
|
15
|
+
BuildTool::Application.instance.name != "build-tool"
|
16
|
+
end
|
17
|
+
|
18
|
+
def do_execute
|
19
|
+
raise NotImplementedError
|
20
|
+
end
|
21
|
+
|
22
|
+
end # class CLI
|
23
|
+
|
24
|
+
def self.create( *args )
|
25
|
+
cmd = CLI.new( *args )
|
26
|
+
end
|
27
|
+
|
28
|
+
end; end; end # module BuildTool::Commands::Modules
|
29
|
+
|
@@ -0,0 +1,75 @@
|
|
1
|
+
require 'build-tool/commands'
|
2
|
+
|
3
|
+
module BuildTool; module Commands; module Modules
|
4
|
+
|
5
|
+
#
|
6
|
+
# BuildCommand
|
7
|
+
#
|
8
|
+
class Info < ModuleBasedCommand
|
9
|
+
|
10
|
+
name "info"
|
11
|
+
description "show detailed information about modules."
|
12
|
+
|
13
|
+
def do_execute_module( mod )
|
14
|
+
|
15
|
+
if mod.repository
|
16
|
+
say "Repository: #{mod.repository.url}/#{mod.remote_path}"
|
17
|
+
if mod.repository.sshkey
|
18
|
+
say " SSH Key: '#{mod.repository.sshkey.name}' (#{mod.repository.sshkey.file})"
|
19
|
+
end
|
20
|
+
else
|
21
|
+
say "Repository: not configured"
|
22
|
+
end
|
23
|
+
|
24
|
+
if mod.build_prefix
|
25
|
+
say "Local Checkout: #{mod.vcs.local_path} #{mod.checkedout? ? '(EXISTS)' : '(TODO)' }"
|
26
|
+
say "Build Directory #{mod.build_directory} #{mod.configured? ? '(CONFIGURED)' : '(TODO)' }"
|
27
|
+
else
|
28
|
+
say "Local Checkout: build-prefix not configured"
|
29
|
+
say "Local Checkout: build-prefix not configured"
|
30
|
+
end
|
31
|
+
|
32
|
+
say "Prefix: #{mod.install_prefix.to_s}"
|
33
|
+
if mod.environment
|
34
|
+
say "Environment:"
|
35
|
+
mod.environment.vars.sort.each do |var|
|
36
|
+
say " %-20s %s" % [ var + ":", mod.environment[var] ]
|
37
|
+
end
|
38
|
+
else
|
39
|
+
say "Environment: Not configured"
|
40
|
+
end
|
41
|
+
|
42
|
+
say "VCS: #{mod.vcs_configuration ? mod.vcs_configuration.name : 'not configured' }"
|
43
|
+
if mod.vcs_configuration
|
44
|
+
case mod.vcs_configuration.name
|
45
|
+
when 'svn'
|
46
|
+
when 'git'
|
47
|
+
say " Remote: %s -> %s" % [ "origin", mod.vcs_configuration.repository.url ]
|
48
|
+
mod.vcs_configuration.remote.each do |key, val|
|
49
|
+
say " Remote: %s -> %s" % [ key, val.url ]
|
50
|
+
end
|
51
|
+
when 'git-svn'
|
52
|
+
mod.vcs_configuration.externals.each do |key, val|
|
53
|
+
say " External: #{key} -> #{val}"
|
54
|
+
end
|
55
|
+
else
|
56
|
+
logger.warn "Unknown vcs #{mod.vcs_configuration.name}"
|
57
|
+
end
|
58
|
+
say " Track branch: #{mod.vcs_configuration.track_remote}/#{mod.vcs_configuration.track_branch}"
|
59
|
+
end # if mod.vcs_configuration
|
60
|
+
|
61
|
+
bs = mod.build_system
|
62
|
+
say "Build System: #{bs.name}"
|
63
|
+
say " Out Of Source Build #{bs.out_of_source}"
|
64
|
+
bs.options.sort.each do |var|
|
65
|
+
say " %-25s %s" % [ var + ":", bs[var] ]
|
66
|
+
end
|
67
|
+
|
68
|
+
return 0
|
69
|
+
end
|
70
|
+
|
71
|
+
end # class Info
|
72
|
+
|
73
|
+
end; end; end # module BuildTool::Commands::Modules
|
74
|
+
|
75
|
+
|
@@ -0,0 +1,49 @@
|
|
1
|
+
require 'build-tool/commands'
|
2
|
+
|
3
|
+
module BuildTool; module Commands; module Modules
|
4
|
+
|
5
|
+
#
|
6
|
+
# BuildCommand
|
7
|
+
#
|
8
|
+
class List < Standard
|
9
|
+
|
10
|
+
name "list"
|
11
|
+
description "list modules"
|
12
|
+
cmdalias "lsmods"
|
13
|
+
|
14
|
+
def initialize_options
|
15
|
+
@all = false
|
16
|
+
|
17
|
+
options.on( "--all", "Include template modules" ) {
|
18
|
+
@all = true
|
19
|
+
}
|
20
|
+
|
21
|
+
super
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
def do_execute( args )
|
26
|
+
# *TODO* listing local and remote recipes
|
27
|
+
if args.length == 0
|
28
|
+
configuration.modules.each do |mod|
|
29
|
+
if @all or not mod.is_template?
|
30
|
+
say "%-30s : %s" % [ mod.name, mod.description ]
|
31
|
+
end
|
32
|
+
end
|
33
|
+
else
|
34
|
+
args.each do |arg|
|
35
|
+
mods = complete_modules( arg, @all )
|
36
|
+
next if !mods
|
37
|
+
mods.each do |mod|
|
38
|
+
say "%-30s : %s" % [ mod.name, mod.description ]
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
return 0
|
44
|
+
end
|
45
|
+
|
46
|
+
end # class
|
47
|
+
|
48
|
+
end; end; end # module BuildTool::Commands::Modules
|
49
|
+
|
@@ -0,0 +1,40 @@
|
|
1
|
+
require 'build-tool/commands'
|
2
|
+
|
3
|
+
module BuildTool; module Commands; module Modules
|
4
|
+
|
5
|
+
#
|
6
|
+
# BuildCommand
|
7
|
+
#
|
8
|
+
class Shell < Standard
|
9
|
+
|
10
|
+
include MJ::Tools::SubProcess
|
11
|
+
|
12
|
+
name "shell"
|
13
|
+
description "open a shell having the modules environment."
|
14
|
+
|
15
|
+
def initialize_options
|
16
|
+
super
|
17
|
+
end
|
18
|
+
|
19
|
+
def do_execute( args )
|
20
|
+
# Check the number of commandline args
|
21
|
+
if args.length != 1
|
22
|
+
return usage( "Wrong number of arguments" )
|
23
|
+
end
|
24
|
+
|
25
|
+
# Translate argument into modules
|
26
|
+
mod = complete_modules( args[0] )
|
27
|
+
if mod.length != 1
|
28
|
+
return usage( "This command only works on one module" )
|
29
|
+
end
|
30
|
+
|
31
|
+
# Get our one and only module
|
32
|
+
mod[0].environment.shell
|
33
|
+
end
|
34
|
+
|
35
|
+
end # class Shell
|
36
|
+
|
37
|
+
end; end; end # module BuildTool::Commands::Modules
|
38
|
+
|
39
|
+
|
40
|
+
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'build-tool/application'
|
2
|
+
require 'build-tool/commands'
|
3
|
+
|
4
|
+
module BuildTool; module Commands;
|
5
|
+
|
6
|
+
class CtagsError < BuildTool::Error; end
|
7
|
+
#
|
8
|
+
# BuildCommand
|
9
|
+
#
|
10
|
+
class Rebase < ModuleBasedCommand
|
11
|
+
|
12
|
+
include MJ::Tools::SubProcess
|
13
|
+
|
14
|
+
name "rebase"
|
15
|
+
description "rebase local checkout against previously fetched remote changes."
|
16
|
+
|
17
|
+
def applicable?
|
18
|
+
BuildTool::Application.instance.name != "build-tool"
|
19
|
+
end
|
20
|
+
|
21
|
+
def is_module_ready?( mod )
|
22
|
+
isready = true
|
23
|
+
if !mod.checkedout?
|
24
|
+
logger.warn "#{mod.name}: module not checked out -> skipping."
|
25
|
+
end
|
26
|
+
if !mod.vcs.fetching_supported?
|
27
|
+
logger.warn "#{mod.name}: fetching not support by #{mod.vcs.name} -> will have no effect."
|
28
|
+
end
|
29
|
+
return isready
|
30
|
+
end
|
31
|
+
|
32
|
+
|
33
|
+
def do_execute_module( mod )
|
34
|
+
if mod.checkedout?
|
35
|
+
mod.rebase( @log_directory )
|
36
|
+
else
|
37
|
+
logger.info "Not checked out. Skipping"
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
end # class Build
|
42
|
+
|
43
|
+
end; end # module BuildTool::Commands
|
44
|
+
|
45
|
+
|
46
|
+
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'build-tool/commands'
|
2
|
+
|
3
|
+
module BuildTool; module Commands; module Recipes
|
4
|
+
|
5
|
+
#
|
6
|
+
# BuildCommand
|
7
|
+
#
|
8
|
+
class CLI < Commands::SubCommands
|
9
|
+
|
10
|
+
name "recipes"
|
11
|
+
description "build recipe related commands"
|
12
|
+
|
13
|
+
def initialize_options
|
14
|
+
super
|
15
|
+
end
|
16
|
+
|
17
|
+
def applicable?
|
18
|
+
BuildTool::Application.instance.name == "build-tool"
|
19
|
+
end
|
20
|
+
|
21
|
+
def do_execute
|
22
|
+
raise NotImplementedError
|
23
|
+
end
|
24
|
+
|
25
|
+
end # class CLI
|
26
|
+
|
27
|
+
def self.create( *args )
|
28
|
+
cmd = CLI.new( *args )
|
29
|
+
end
|
30
|
+
|
31
|
+
end; end; end # module BuildTool::Commands::Recipes
|
32
|
+
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'build-tool/commands'
|
2
|
+
require 'build-tool/recipe'
|
3
|
+
|
4
|
+
module BuildTool; module Commands; module Recipes
|
5
|
+
|
6
|
+
#
|
7
|
+
# BuildCommand
|
8
|
+
#
|
9
|
+
class Info < Standard
|
10
|
+
|
11
|
+
name "info"
|
12
|
+
description "show information about a module."
|
13
|
+
|
14
|
+
def initialize_options
|
15
|
+
super
|
16
|
+
end
|
17
|
+
|
18
|
+
def do_execute( args )
|
19
|
+
if ( args.length != 1 )
|
20
|
+
return usage( args.length == 0 ? "Not enough arguments" : "To many arguments" )
|
21
|
+
end
|
22
|
+
|
23
|
+
rec = Recipe.new( args[0] )
|
24
|
+
say "Description: #{rec.short_description}"
|
25
|
+
say "Website: #{rec.website}" if rec.website
|
26
|
+
say "Repository: #{rec.repository}" if rec.repository
|
27
|
+
say "Browse Repository: #{rec.browse_repository}" if rec.browse_repository
|
28
|
+
if rec.long_description
|
29
|
+
say "Long Description:"
|
30
|
+
for line in rec.long_description
|
31
|
+
say " #{line.chomp}"
|
32
|
+
end
|
33
|
+
say ""
|
34
|
+
end
|
35
|
+
|
36
|
+
return 0
|
37
|
+
end
|
38
|
+
|
39
|
+
end # class
|
40
|
+
|
41
|
+
end; end # module Commands::Recipes
|
42
|
+
|
43
|
+
end; # module BuildTool
|
44
|
+
|
45
|
+
|
46
|
+
|