build-tool 0.0.2 → 0.0.3
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/Manifest.txt +6 -1
- data/Rakefile +5 -3
- data/lib/kde-build.rb +1 -1
- data/lib/kde-build/application.rb +12 -0
- data/lib/kde-build/build_system/autoconf.rb +1 -1
- data/lib/kde-build/build_system/cmake.rb +1 -1
- data/lib/kde-build/build_system/qtcopy.rb +1 -1
- data/lib/kde-build/command.rb +5 -3
- data/lib/kde-build/command/build.rb +37 -57
- data/lib/kde-build/command/compile.rb +39 -0
- data/lib/kde-build/command/configure.rb +48 -0
- data/lib/kde-build/command/ctags.rb +41 -0
- data/lib/kde-build/command/fetch.rb +18 -13
- data/lib/kde-build/command/install.rb +39 -0
- data/lib/kde-build/command/module_based.rb +44 -0
- data/lib/kde-build/command/rebase.rb +50 -0
- data/lib/kde-build/tools/ctags.rb +25 -0
- data/lib/kde-build/vcs/svn.rb +5 -5
- data/test.yaml.tmpl +40 -17
- metadata +23 -30
- data.tar.gz.sig +0 -0
- data/README.rdoc +0 -55
- metadata.gz.sig +0 -1
data/Manifest.txt
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
History.txt
|
2
2
|
Manifest.txt
|
3
3
|
PostInstall.txt
|
4
|
-
README.rdoc
|
5
4
|
Rakefile
|
6
5
|
TODO
|
7
6
|
bin/kde-build.rb
|
@@ -16,9 +15,15 @@ lib/kde-build/build_system/cmake.rb
|
|
16
15
|
lib/kde-build/build_system/qtcopy.rb
|
17
16
|
lib/kde-build/command.rb
|
18
17
|
lib/kde-build/command/build.rb
|
18
|
+
lib/kde-build/command/compile.rb
|
19
|
+
lib/kde-build/command/configure.rb
|
20
|
+
lib/kde-build/command/ctags.rb
|
19
21
|
lib/kde-build/command/fetch.rb
|
20
22
|
lib/kde-build/command/help.rb
|
21
23
|
lib/kde-build/command/info.rb
|
24
|
+
lib/kde-build/command/install.rb
|
25
|
+
lib/kde-build/command/module_based.rb
|
26
|
+
lib/kde-build/command/rebase.rb
|
22
27
|
lib/kde-build/command/version.rb
|
23
28
|
lib/kde-build/configuration.rb
|
24
29
|
lib/kde-build/exception.rb
|
data/Rakefile
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
require 'rubygems' unless ENV['NO_RUBYGEMS']
|
2
|
-
%w[rake rake/clean fileutils newgem rubigen].each { |f| require f }
|
2
|
+
%w[rake rake/clean fileutils newgem rubigen hoe].each { |f| require f }
|
3
3
|
require File.dirname(__FILE__) + '/lib/kde-build'
|
4
4
|
|
5
5
|
# Generate all the Rake tasks
|
6
6
|
# Run 'rake -T' to see list of generated tasks (from gem root directory)
|
7
|
-
|
7
|
+
Hoe.spec 'build-tool' do |p|
|
8
8
|
p.developer( 'Michael Jansen', 'kde@michael-jansen.biz' )
|
9
|
+
p.name = "build-tool"
|
9
10
|
p.changes = p.paragraphs_of("History.txt", 0..1).join("\n\n")
|
10
11
|
p.post_install_message = 'PostInstall.txt'
|
11
12
|
p.rubyforge_name = p.name
|
@@ -14,7 +15,8 @@ $hoe = Hoe.new('build-tool', KdeBuild::VERSION) do |p|
|
|
14
15
|
['log4r','>= 1.0.5'],
|
15
16
|
]
|
16
17
|
p.extra_dev_deps = [
|
17
|
-
['newgem', ">= #{::Newgem::VERSION}"]
|
18
|
+
['newgem', ">= #{::Newgem::VERSION}"],
|
19
|
+
['hoe', ">= 2.3.0"]
|
18
20
|
]
|
19
21
|
|
20
22
|
p.clean_globs |= %w[**/.DS_Store tmp *.log]
|
data/lib/kde-build.rb
CHANGED
@@ -2,8 +2,14 @@
|
|
2
2
|
#
|
3
3
|
require 'kde-build/vcs/git-svn'
|
4
4
|
require 'kde-build/command/build'
|
5
|
+
require 'kde-build/command/compile'
|
6
|
+
require 'kde-build/command/configure'
|
7
|
+
require 'kde-build/command/ctags'
|
8
|
+
require 'kde-build/command/fetch'
|
5
9
|
require 'kde-build/command/help'
|
10
|
+
require 'kde-build/command/install'
|
6
11
|
require 'kde-build/command/info'
|
12
|
+
require 'kde-build/command/rebase'
|
7
13
|
require 'kde-build/command/version'
|
8
14
|
|
9
15
|
require 'kde-build/configuration'
|
@@ -89,7 +95,13 @@ module BuildTool
|
|
89
95
|
}
|
90
96
|
|
91
97
|
@command.add_command( BuildCommand.new )
|
98
|
+
@command.add_command( CompileCommand.new )
|
99
|
+
@command.add_command( ConfigureCommand.new )
|
100
|
+
@command.add_command( CTagsCommand.new )
|
101
|
+
@command.add_command( FetchCommand.new )
|
92
102
|
@command.add_command( InfoCommand.new )
|
103
|
+
@command.add_command( InstallCommand.new )
|
104
|
+
@command.add_command( RebaseCommand.new )
|
93
105
|
|
94
106
|
@command.add_command( HelpCommand.new )
|
95
107
|
@command.add_command( VersionCommand.new )
|
data/lib/kde-build/command.rb
CHANGED
@@ -13,16 +13,18 @@ module BuildTool
|
|
13
13
|
puts
|
14
14
|
if description
|
15
15
|
puts description
|
16
|
+
puts
|
16
17
|
else
|
17
18
|
puts short_desc
|
19
|
+
puts
|
18
20
|
end
|
19
21
|
if has_commands?
|
20
|
-
puts
|
21
22
|
list_commands
|
23
|
+
puts
|
22
24
|
end
|
23
|
-
|
25
|
+
unless (summary = options.summarize).empty?
|
26
|
+
puts summary
|
24
27
|
puts
|
25
|
-
puts options.summarize
|
26
28
|
end
|
27
29
|
end
|
28
30
|
|
@@ -1,18 +1,23 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
#
|
3
3
|
|
4
|
-
require 'kde-build/command'
|
5
|
-
require 'kde-build/command/help'
|
4
|
+
require 'kde-build/command/module_based'
|
6
5
|
|
7
6
|
module BuildTool
|
8
7
|
|
9
8
|
|
10
|
-
class BuildCommand <
|
9
|
+
class BuildCommand < ModuleBasedCommand
|
11
10
|
|
12
11
|
def initialize
|
13
12
|
super( 'build', false )
|
14
|
-
self.short_desc = "
|
15
|
-
self.description = "
|
13
|
+
self.short_desc = "Do a complete build (fetch, rebase, compile, install)."
|
14
|
+
self.description = <<-"EOS"
|
15
|
+
Do a complete build.
|
16
|
+
* Fetch changes from the remote repository,
|
17
|
+
* Rebase the local repository,
|
18
|
+
* Compile,
|
19
|
+
* Install
|
20
|
+
EOS
|
16
21
|
@update = true
|
17
22
|
@configure = false
|
18
23
|
@clean = false
|
@@ -44,7 +49,7 @@ module BuildTool
|
|
44
49
|
end
|
45
50
|
end
|
46
51
|
|
47
|
-
def
|
52
|
+
def is_module_ready( mod )
|
48
53
|
skip = false
|
49
54
|
if @update
|
50
55
|
mod.activate_ssh_key
|
@@ -57,68 +62,43 @@ module BuildTool
|
|
57
62
|
!skip
|
58
63
|
end
|
59
64
|
|
60
|
-
def
|
61
|
-
if args.length == 0
|
62
|
-
show_help
|
63
|
-
return
|
64
|
-
end
|
65
|
+
def execute_for_module( mod )
|
65
66
|
|
66
|
-
|
67
|
+
$log.info( "###############################################################" )
|
68
|
+
$log.info( "### Building module #{mod.name}" )
|
69
|
+
$log.info( "###############################################################" )
|
67
70
|
|
68
|
-
|
69
|
-
|
70
|
-
real_modules.push( mod )
|
71
|
-
end
|
71
|
+
if @from_scratch
|
72
|
+
mod.remove_build_directory
|
72
73
|
end
|
73
74
|
|
74
|
-
|
75
|
-
begin
|
76
|
-
$log.info( "###############################################################" )
|
77
|
-
$log.info( "### Building module #{mod.name}" )
|
78
|
-
$log.info( "###############################################################" )
|
79
|
-
|
80
|
-
if @from_scratch
|
81
|
-
mod.remove_build_directory
|
82
|
-
end
|
83
|
-
|
84
|
-
if @update
|
85
|
-
|
86
|
-
if mod.checkedout?
|
87
|
-
mod.fetch
|
88
|
-
mod.rebase
|
89
|
-
else
|
90
|
-
mod.init
|
91
|
-
end
|
92
|
-
|
93
|
-
end
|
94
|
-
|
95
|
-
if @reconfigure
|
96
|
-
mod.reconfigure( @clean.nil? ? true : @clean )
|
97
|
-
|
98
|
-
elsif @configure
|
99
|
-
if mod.configured?
|
100
|
-
mod.reconfigure
|
101
|
-
else
|
102
|
-
mod.configure
|
103
|
-
end
|
75
|
+
if @update
|
104
76
|
|
105
|
-
|
106
|
-
|
107
|
-
|
77
|
+
if mod.checkedout?
|
78
|
+
mod.fetch
|
79
|
+
mod.rebase
|
80
|
+
else
|
81
|
+
mod.init
|
82
|
+
end
|
108
83
|
|
109
|
-
|
84
|
+
end
|
110
85
|
|
111
|
-
|
112
|
-
|
113
|
-
return
|
86
|
+
if @reconfigure
|
87
|
+
mod.reconfigure( @clean.nil? ? true : @clean )
|
114
88
|
|
115
|
-
|
116
|
-
|
117
|
-
|
89
|
+
elsif @configure
|
90
|
+
if mod.configured?
|
91
|
+
mod.reconfigure
|
92
|
+
else
|
93
|
+
mod.configure
|
118
94
|
end
|
119
|
-
$log.info("")
|
120
95
|
|
96
|
+
elsif !mod.configured?
|
97
|
+
mod.configure
|
121
98
|
end
|
99
|
+
|
100
|
+
mod.build( @install, @clean )
|
101
|
+
|
122
102
|
end
|
123
103
|
|
124
104
|
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'kde-build/command/module_based'
|
2
|
+
|
3
|
+
module BuildTool
|
4
|
+
|
5
|
+
class CompileCommand < ModuleBasedCommand
|
6
|
+
|
7
|
+
def initialize
|
8
|
+
super( 'compile', false )
|
9
|
+
self.short_desc = "Compile the modules."
|
10
|
+
self.description = <<-"EOS"
|
11
|
+
Compile the given modules.
|
12
|
+
EOS
|
13
|
+
#@update = true
|
14
|
+
# self.options = CmdParse::OptionParserWrapper.new do |opt|
|
15
|
+
# opt.separator "Options:"
|
16
|
+
# opt.on( "--no-update", "Do not update from the repository" ) { |t|
|
17
|
+
# @update = false
|
18
|
+
# }
|
19
|
+
# end
|
20
|
+
end
|
21
|
+
|
22
|
+
def is_module_ready( mod )
|
23
|
+
true
|
24
|
+
end
|
25
|
+
|
26
|
+
def execute_for_module( mod )
|
27
|
+
|
28
|
+
$log.info( "###############################################################" )
|
29
|
+
$log.info( "### Compiling module #{mod.name}" )
|
30
|
+
$log.info( "###############################################################" )
|
31
|
+
|
32
|
+
mod.build( false )
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
|
37
|
+
|
38
|
+
end
|
39
|
+
|
@@ -0,0 +1,48 @@
|
|
1
|
+
require 'kde-build/command/module_based'
|
2
|
+
|
3
|
+
module BuildTool
|
4
|
+
|
5
|
+
class ConfigureCommand < ModuleBasedCommand
|
6
|
+
|
7
|
+
def initialize
|
8
|
+
super( 'configure', false )
|
9
|
+
self.short_desc = "Configure the modules."
|
10
|
+
self.description = <<-"EOS"
|
11
|
+
Install the given modules.
|
12
|
+
EOS
|
13
|
+
#@update = true
|
14
|
+
# self.options = CmdParse::OptionParserWrapper.new do |opt|
|
15
|
+
# opt.separator "Options:"
|
16
|
+
# opt.on( "--no-update", "Do not update from the repository" ) { |t|
|
17
|
+
# @update = false
|
18
|
+
# }
|
19
|
+
# end
|
20
|
+
end
|
21
|
+
|
22
|
+
def is_module_ready( mod )
|
23
|
+
skip = false
|
24
|
+
if !mod.checkedout?
|
25
|
+
$log.error("Module #{mod.name} is not checkedout and will be skipped!")
|
26
|
+
skip = true
|
27
|
+
end
|
28
|
+
!skip
|
29
|
+
end
|
30
|
+
|
31
|
+
def execute_for_module( mod )
|
32
|
+
|
33
|
+
$log.info( "###############################################################" )
|
34
|
+
$log.info( "### Configure the module #{mod.name}" )
|
35
|
+
$log.info( "###############################################################" )
|
36
|
+
|
37
|
+
if mod.configured?
|
38
|
+
mod.reconfigure
|
39
|
+
else
|
40
|
+
mod.configure
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
45
|
+
|
46
|
+
|
47
|
+
end
|
48
|
+
|
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'kde-build/command/module_based'
|
2
|
+
require 'kde-build/tools/ctags.rb'
|
3
|
+
|
4
|
+
module BuildTool
|
5
|
+
|
6
|
+
class CTagsCommand < ModuleBasedCommand
|
7
|
+
|
8
|
+
def initialize
|
9
|
+
super( 'ctags', false )
|
10
|
+
self.short_desc = "Run ctags for the given modules."
|
11
|
+
self.description = <<-"EOS"
|
12
|
+
Runs the ctags command in the source directories of the given modules. The
|
13
|
+
place to put the resulting tags file is taken from the config file.
|
14
|
+
EOS
|
15
|
+
#@update = true
|
16
|
+
# self.options = CmdParse::OptionParserWrapper.new do |opt|
|
17
|
+
# opt.separator "Options:"
|
18
|
+
# opt.on( "--no-update", "Do not update from the repository" ) { |t|
|
19
|
+
# @update = false
|
20
|
+
# }
|
21
|
+
# end
|
22
|
+
end
|
23
|
+
|
24
|
+
def is_module_ready( mod )
|
25
|
+
true
|
26
|
+
end
|
27
|
+
|
28
|
+
def execute_for_module( mod )
|
29
|
+
|
30
|
+
$log.info( "###############################################################" )
|
31
|
+
$log.info( "### Creating tags file for module #{mod.name}" )
|
32
|
+
$log.info( "###############################################################" )
|
33
|
+
|
34
|
+
CTags::run( mod.source_directory, "#{mod.name}.tags" )
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
|
40
|
+
end
|
41
|
+
|
@@ -1,25 +1,30 @@
|
|
1
|
-
|
2
|
-
#
|
3
|
-
require 'kde-build/command'
|
1
|
+
require 'kde-build/command/module_based'
|
4
2
|
|
5
3
|
module BuildTool
|
6
4
|
|
7
|
-
class FetchCommand <
|
5
|
+
class FetchCommand < ModuleBasedCommand
|
8
6
|
|
9
7
|
def initialize
|
10
8
|
super( 'fetch', false )
|
11
|
-
self.short_desc = "Fetch"
|
12
|
-
self.description = "
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
end
|
9
|
+
self.short_desc = "Fetch changes from the remote repository."
|
10
|
+
self.description = <<-"EOS"
|
11
|
+
Fetch changes from the remote repository without rebasing if the used vcs
|
12
|
+
supports it. If the vcs doesn't the module is skipped.
|
13
|
+
EOS
|
14
|
+
end
|
18
15
|
|
16
|
+
def is_module_ready( mod )
|
17
|
+
mod.activate_ssh_key
|
18
|
+
true
|
19
19
|
end
|
20
20
|
|
21
|
-
def
|
22
|
-
|
21
|
+
def execute_for_module( mod )
|
22
|
+
|
23
|
+
$log.info( "###############################################################" )
|
24
|
+
$log.info( "### Fetching module #{mod.name}" )
|
25
|
+
$log.info( "###############################################################" )
|
26
|
+
|
27
|
+
mod.fetch
|
23
28
|
end
|
24
29
|
|
25
30
|
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'kde-build/command/module_based'
|
2
|
+
|
3
|
+
module BuildTool
|
4
|
+
|
5
|
+
class InstallCommand < ModuleBasedCommand
|
6
|
+
|
7
|
+
def initialize
|
8
|
+
super( 'install', false )
|
9
|
+
self.short_desc = "Install the modules."
|
10
|
+
self.description = <<-"EOS"
|
11
|
+
Install the given modules.
|
12
|
+
EOS
|
13
|
+
#@update = true
|
14
|
+
# self.options = CmdParse::OptionParserWrapper.new do |opt|
|
15
|
+
# opt.separator "Options:"
|
16
|
+
# opt.on( "--no-update", "Do not update from the repository" ) { |t|
|
17
|
+
# @update = false
|
18
|
+
# }
|
19
|
+
# end
|
20
|
+
end
|
21
|
+
|
22
|
+
def is_module_ready( mod )
|
23
|
+
true
|
24
|
+
end
|
25
|
+
|
26
|
+
def execute_for_module( mod )
|
27
|
+
|
28
|
+
$log.info( "###############################################################" )
|
29
|
+
$log.info( "### Installing module #{mod.name}" )
|
30
|
+
$log.info( "###############################################################" )
|
31
|
+
|
32
|
+
mod.build( true )
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
|
37
|
+
|
38
|
+
end
|
39
|
+
|
@@ -0,0 +1,44 @@
|
|
1
|
+
require 'kde-build/command'
|
2
|
+
|
3
|
+
module BuildTool
|
4
|
+
|
5
|
+
class ModuleBasedCommand < Command
|
6
|
+
|
7
|
+
def execute( args )
|
8
|
+
|
9
|
+
# If no argument is given show the help and quit.
|
10
|
+
if args.length == 0
|
11
|
+
show_help
|
12
|
+
return
|
13
|
+
end
|
14
|
+
|
15
|
+
# Map the command line to real modules
|
16
|
+
real_modules = []
|
17
|
+
ModuleRegistry.get_modules( args ) do |mod|
|
18
|
+
# Check if the module is fit for the command
|
19
|
+
if is_module_ready( mod )
|
20
|
+
real_modules.push( mod )
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
# Execute the command for each module
|
25
|
+
real_modules.each do |mod|
|
26
|
+
begin
|
27
|
+
|
28
|
+
execute_for_module( mod )
|
29
|
+
|
30
|
+
rescue Interrupt => e
|
31
|
+
$log.info("SIGBREAK recieved.")
|
32
|
+
return
|
33
|
+
|
34
|
+
rescue Exception => e
|
35
|
+
$log.info("error: #{e.class}: #{e.message}")
|
36
|
+
puts e.backtrace if $verbose
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
require 'kde-build/command/module_based'
|
2
|
+
|
3
|
+
module BuildTool
|
4
|
+
|
5
|
+
class RebaseCommand < ModuleBasedCommand
|
6
|
+
|
7
|
+
def initialize
|
8
|
+
super( 'rebase', false )
|
9
|
+
self.short_desc = "Rebase the local repository."
|
10
|
+
self.description = <<-"EOS"
|
11
|
+
Rebases the local repository against the changes made in the remote
|
12
|
+
repository. The changes will be first fetched and then the rebase is done. If
|
13
|
+
the vcs doesn't support that separation fetch and rebase are done in one step.
|
14
|
+
|
15
|
+
If --no-update is present only a rebase is done. Remember that svn doesn't
|
16
|
+
support that separation and will still fetch changes.
|
17
|
+
EOS
|
18
|
+
@update = true
|
19
|
+
self.options = CmdParse::OptionParserWrapper.new do |opt|
|
20
|
+
opt.separator "Options:"
|
21
|
+
opt.on( "--no-update", "Do not update from the repository" ) { |t|
|
22
|
+
@update = false
|
23
|
+
}
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
def is_module_ready( mod )
|
28
|
+
mod.activate_ssh_key
|
29
|
+
true
|
30
|
+
end
|
31
|
+
|
32
|
+
def execute_for_module( mod )
|
33
|
+
|
34
|
+
$log.info( "###############################################################" )
|
35
|
+
$log.info( "### Rebasing module #{mod.name}" )
|
36
|
+
$log.info( "###############################################################" )
|
37
|
+
|
38
|
+
if mod.checkedout?
|
39
|
+
mod.fetch if @update
|
40
|
+
mod.rebase
|
41
|
+
else
|
42
|
+
mod.init
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
end
|
47
|
+
|
48
|
+
|
49
|
+
end
|
50
|
+
|
@@ -14,6 +14,7 @@ module BuildTool
|
|
14
14
|
|
15
15
|
option( "executable", "Full path for to the executable" )
|
16
16
|
option( "options", "" )
|
17
|
+
option( "output", "" )
|
17
18
|
|
18
19
|
def initialize
|
19
20
|
@executable = "ctags"
|
@@ -21,6 +22,30 @@ module BuildTool
|
|
21
22
|
|
22
23
|
end
|
23
24
|
|
25
|
+
|
26
|
+
class CTags
|
27
|
+
|
28
|
+
include MJ::Tools::SubProcess
|
29
|
+
|
30
|
+
def self.run( dir, file )
|
31
|
+
file = file.tr( "/", "-" )
|
32
|
+
conf = CTagsConfiguration::instance
|
33
|
+
if !conf.output
|
34
|
+
$log.error("No ctags configuration section found!")
|
35
|
+
return
|
36
|
+
else
|
37
|
+
FileUtils.mkdir_p( Pathname.new( conf.output ).expand_path )
|
38
|
+
end
|
39
|
+
ctags "#{conf.options ? conf.options : ""} -f #{Pathname.new( conf.output ).join( file )} -R #{dir}"
|
40
|
+
end
|
41
|
+
|
42
|
+
def self.ctags( cmd )
|
43
|
+
conf = CTagsConfiguration::instance
|
44
|
+
execute( "#{conf.executable ? conf.executable : "ctags"} #{cmd}" )
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
48
|
+
|
24
49
|
YAML.add_domain_type(
|
25
50
|
"michael-jansen.biz,2009", "CTagsConfiguration" ) {
|
26
51
|
|type, val|
|
data/lib/kde-build/vcs/svn.rb
CHANGED
@@ -69,8 +69,8 @@ module BuildTool; module VCS
|
|
69
69
|
#
|
70
70
|
# Initializes the local clone if it does not exist.
|
71
71
|
def fetch()
|
72
|
-
if !checkedout?
|
73
|
-
|
72
|
+
if !checkedout?
|
73
|
+
init
|
74
74
|
end
|
75
75
|
return true
|
76
76
|
end
|
@@ -83,11 +83,11 @@ module BuildTool; module VCS
|
|
83
83
|
raise SvnError, "Failed to create repository at '#{path}': Path exists"
|
84
84
|
end
|
85
85
|
|
86
|
-
# Create the
|
87
|
-
FileUtils.mkdir_p( path ) if !$noop
|
86
|
+
# Create the directories parent dir.
|
87
|
+
FileUtils.mkdir_p( File.dirname( path ) ) if !$noop
|
88
88
|
|
89
89
|
# Init the repository
|
90
|
-
if !svn "checkout --depth=infinity #{repository}"
|
90
|
+
if !svn "checkout --depth=infinity #{repository}", File.dirname(path)
|
91
91
|
raise SvnError, "Error during 'svn checkout #{repository}'`: #{$?}"
|
92
92
|
end
|
93
93
|
end
|
data/test.yaml.tmpl
CHANGED
@@ -116,7 +116,8 @@
|
|
116
116
|
############################
|
117
117
|
- :tags: !michael-jansen.biz,2009/CTagsConfiguration
|
118
118
|
# executable: "/usr/bin/ctags"
|
119
|
-
options: "--exclude=$HOME/.grepexclude --exclude=*.html"
|
119
|
+
# options: "--exclude=$HOME/.grepexclude --exclude=*.html"
|
120
|
+
output: <%= WORK_DIRECTORY %>/ctags
|
120
121
|
|
121
122
|
|
122
123
|
############################
|
@@ -137,8 +138,8 @@
|
|
137
138
|
- default: kdelibs kdepimlibs kdebase/ kdepim
|
138
139
|
- plasma: playground/nepomuk-kde kdeplasma-addons playground/plasma-applets/
|
139
140
|
- devel: kdesdk kdev/
|
140
|
-
- graphics: extra/lensfun kdegraphics extragear/graphics/
|
141
|
-
- multimedia: kdemultimedia qtscriptgenerator amarok
|
141
|
+
- graphics: extra/lensfun poppler kdegraphics extragear/graphics/
|
142
|
+
- multimedia: kdemultimedia qtscriptgenerator extragear/amarok
|
142
143
|
- other: kdeedu kdenetwork kdegames koffice
|
143
144
|
- qt: qtmaster qca qimageblitz
|
144
145
|
- all: :default :plasma :graphics :multimedia kdenetwork extragear/amarok
|
@@ -153,7 +154,7 @@
|
|
153
154
|
#
|
154
155
|
<% if false # ERB will remove it %>
|
155
156
|
- !michael-jansen.biz,2009/ModuleConfiguration
|
156
|
-
# The module name.
|
157
|
+
# The module name.
|
157
158
|
- name: kdesupport/automoc
|
158
159
|
# Some example constants
|
159
160
|
- *env
|
@@ -220,6 +221,7 @@
|
|
220
221
|
- env:
|
221
222
|
- PATH: <%= "#{QTDIR}:#{KDEDIRS}".split(":").collect { |d| d+"/bin" }.join(":")%>:/usr/X11R6/bin:/usr/bin:/bin
|
222
223
|
- KDEDIRS: <%= KDEDIRS %>
|
224
|
+
- PKG_CONFIG_PATH: <%= "#{QTDIR}/lib/pkgconfig:#{QTDIR}/lib64/pkgconfig:#{KDEDIR}/lib#{LIB_SUFFIX}/pkgconfig:#{EXTRADIR}/lib#{LIB_SUFFIX}/pkgconfig" %>
|
223
225
|
|
224
226
|
- &qt
|
225
227
|
- *env
|
@@ -256,7 +258,6 @@
|
|
256
258
|
|
257
259
|
- !michael-jansen.biz,2009/ModuleConfiguration
|
258
260
|
- *env
|
259
|
-
- *sshkey
|
260
261
|
- repository: git://anongit.freedesktop.org
|
261
262
|
- name: kdesupport/networkmanager
|
262
263
|
- remote-path: NetworkManager/NetworkManager.git
|
@@ -269,6 +270,19 @@
|
|
269
270
|
- inplace: true
|
270
271
|
- autogen-options: -test
|
271
272
|
|
273
|
+
- !michael-jansen.biz,2009/ModuleConfiguration
|
274
|
+
- *env
|
275
|
+
- repository: git://anongit.freedesktop.org
|
276
|
+
- name: poppler
|
277
|
+
- remote-path: poppler/poppler.git
|
278
|
+
- local-path: kdesupport/poppler
|
279
|
+
- vcs: git
|
280
|
+
- prefix: <%= EXTRADIR %>
|
281
|
+
- build-system:
|
282
|
+
- name: autoconf
|
283
|
+
- options: "<%= AUTOCONF_OPTIONS %>"
|
284
|
+
- inplace: true
|
285
|
+
- autogen-options: -test
|
272
286
|
|
273
287
|
############################
|
274
288
|
# Qt #
|
@@ -279,14 +293,14 @@
|
|
279
293
|
- local-path: qtmaster
|
280
294
|
- remote-path: qt/qt.git
|
281
295
|
- repository: <%= GITORIOUS %>
|
282
|
-
- vcs:
|
296
|
+
- vcs:
|
283
297
|
- name: git
|
284
298
|
# Checkout qt's 4.5 branch. master points to the work in progress
|
285
299
|
# version 4.6
|
286
300
|
- remote-branch: 4.5
|
287
301
|
- build-system:
|
288
302
|
- name: qtcopy
|
289
|
-
# -qt-gif ............ Compile the plugin for GIF reading support.
|
303
|
+
# -qt-gif ............ Compile the plugin for GIF reading support.
|
290
304
|
# -no-exceptions ..... Disable exceptions on compilers that support it.
|
291
305
|
# -fast .............. Configure Qt quickly by generating Makefiles only for
|
292
306
|
# library and subdirectory targets. All other Makefiles
|
@@ -330,7 +344,7 @@
|
|
330
344
|
- vcs:
|
331
345
|
- name: git-svn
|
332
346
|
<% if mod == "kdenetwork" %>
|
333
|
-
- externals:
|
347
|
+
- externals:
|
334
348
|
- kget/transfer-plugins/bittorrent/libbtcore: <%= KDESVNSERVER %>/kde/branches/stable/extragear-kde4/network/ktorrent/libbtcore
|
335
349
|
<% elsif mod == "kdebase/workspace" %>
|
336
350
|
- externals:
|
@@ -358,7 +372,7 @@
|
|
358
372
|
############################
|
359
373
|
# KDEVELOP #
|
360
374
|
############################
|
361
|
-
<% for mod in [
|
375
|
+
<% for mod in [ 'kdevplatform', 'kdevelop' ] %>
|
362
376
|
# kdevelop heavily relies on svn_externals. Use svn
|
363
377
|
- !michael-jansen.biz,2009/ModuleConfiguration
|
364
378
|
- *env
|
@@ -378,15 +392,25 @@
|
|
378
392
|
#########################################
|
379
393
|
# EXTREAGEAR / KDEVELOP PLUGINS #
|
380
394
|
#########################################
|
381
|
-
<% for mod in [ 'kdevelop-pg-qt', 'kdevelop-pg'
|
395
|
+
<% for mod in [ 'kdevelop-pg-qt', 'kdevelop-pg' ] %>
|
382
396
|
- !michael-jansen.biz,2009/ModuleConfiguration
|
383
397
|
- name: kdev/<%= mod %>
|
384
398
|
- *kde
|
385
|
-
- remote-path:
|
399
|
+
- remote-path: playground/devtools/<%= mod %>
|
386
400
|
- local-path: kdev/<%= mod %>
|
387
401
|
- vcs: git-svn
|
388
402
|
<% end %>
|
389
403
|
|
404
|
+
<% for mod in [ 'duchainviewer', 'cppunit', 'metrics', 'python', 'ruby', 'newgdb', 'sloc', 'teamwork' ] %>
|
405
|
+
- !michael-jansen.biz,2009/ModuleConfiguration
|
406
|
+
- name: kdev/<%= mod %>
|
407
|
+
- *kde
|
408
|
+
- remote-path: playground/devtools/kdevelop4-extra-plugins/<%= mod %>
|
409
|
+
- local-path: kdev/<%= mod %>
|
410
|
+
- vcs: git-svn
|
411
|
+
<% end %>
|
412
|
+
|
413
|
+
|
390
414
|
############################
|
391
415
|
# KOFFICE #
|
392
416
|
############################
|
@@ -396,7 +420,7 @@
|
|
396
420
|
- remote-path: koffice
|
397
421
|
- vcs:
|
398
422
|
- name: git-svn
|
399
|
-
- externals:
|
423
|
+
- externals:
|
400
424
|
- kdgantt: <%= KDESVNSERVER %>/kde/trunk/KDE/kdepim/kdgantt
|
401
425
|
|
402
426
|
############################
|
@@ -404,7 +428,7 @@
|
|
404
428
|
############################
|
405
429
|
<% for mod in [ 'digikam', 'kipi-plugins', 'skanlite', 'kphotoalbum' ] %>
|
406
430
|
- !michael-jansen.biz,2009/ModuleConfiguration
|
407
|
-
- name: extragear/<%= mod %>
|
431
|
+
- name: extragear/graphics/<%= mod %>
|
408
432
|
- *kde
|
409
433
|
- remote-path: extragear/graphics/<%= mod %>
|
410
434
|
- local-path: extragear/graphics/<%= mod %>
|
@@ -581,7 +605,6 @@
|
|
581
605
|
- name: autoconf
|
582
606
|
# Lensfun build system (only autoconf compatibel requires an inplace
|
583
607
|
# build
|
584
|
-
- options: "<%= AUTOCONF_OPTIONS %>"
|
585
608
|
- inplace: true
|
586
609
|
|
587
610
|
|
@@ -595,8 +618,8 @@
|
|
595
618
|
# build_system= qmake
|
596
619
|
# repository=git://labs.trolltech.com/qtscriptgenerator
|
597
620
|
# prefix= %(kde4svn)s
|
598
|
-
#
|
599
|
-
#
|
621
|
+
#
|
622
|
+
#
|
600
623
|
# ; ===========================================================================
|
601
624
|
# [module:l10n]
|
602
625
|
# ; Keep svn here because the others would try to checkout l10n completely
|
@@ -606,4 +629,4 @@
|
|
606
629
|
# build_system= kde-l10n
|
607
630
|
# svn-root= %(kde-svn-server)s/trunk/l10n-kde4
|
608
631
|
# prefix= %(kde4svn)s
|
609
|
-
#
|
632
|
+
#
|
metadata
CHANGED
@@ -1,36 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: build-tool
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Jansen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
|
-
cert_chain:
|
11
|
-
- |
|
12
|
-
-----BEGIN CERTIFICATE-----
|
13
|
-
MIIDOjCCAiKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBDMQwwCgYDVQQDDANrZGUx
|
14
|
-
HjAcBgoJkiaJk/IsZAEZFg5taWNoYWVsLWphbnNlbjETMBEGCgmSJomT8ixkARkW
|
15
|
-
A2JpejAeFw0wOTA2MDkyMDI1MThaFw0xMDA2MDkyMDI1MThaMEMxDDAKBgNVBAMM
|
16
|
-
A2tkZTEeMBwGCgmSJomT8ixkARkWDm1pY2hhZWwtamFuc2VuMRMwEQYKCZImiZPy
|
17
|
-
LGQBGRYDYml6MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAurxaZL3l
|
18
|
-
DVi5wG2HKTLVjl9Wl9gJT5L8edAxHrNMQtT3WQlyo3QNhOgLfVP9zMg49Y8dBRAP
|
19
|
-
w9ez71UJfjI17+KEEI6rdMF+poljfpszboRNqkuhn8b+kPy9vyVz93lIhyCUi4dx
|
20
|
-
Nyc2BSGjoYqQkVNZymz4TTb2xoMjUWkCjBsr8sxjB74zFaYqzjNMhWZUZB4CH1J1
|
21
|
-
S2+rdybmeC3/Yt3ck9kPgUQNRL5pnH9eJrFYzocbFHjp28CJf0zNmn8aUS1R32hD
|
22
|
-
5optxe9j6Jh0sXW2Qqw3swfVwaJIrDI4KNcWlJTAO++FHsV8Jh9Y1HMUgcSVpWVj
|
23
|
-
2SdR6e6L30jpNwIDAQABozkwNzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNV
|
24
|
-
HQ4EFgQU5L+10wMUoKc2MaHICpfSJ+HCffgwDQYJKoZIhvcNAQEFBQADggEBABWy
|
25
|
-
Uio+50gcBdYsmWRVcS2W3BLGes7KwD9CAcVZGa7adH8EY+ZrPkbhB2Csk/UZnuo5
|
26
|
-
2THemT8qy42gxgI1RRv9+PFDCXA+p2URzlhXhsO4JHdNeaGEwsOETx29xRO1QTnl
|
27
|
-
bOjSlG4mdCB9WMAD2w58JAefhObPKQMl2L8sc0S3pEIcFmbLAVT4W6AbUiiK9C4T
|
28
|
-
AjmSlxUk0RdTT1xL0QQ88HoNxLK8hJHAT8pNq36taixh0ORmmqocRvIL0YrHUPa3
|
29
|
-
bdM0RIoUSO1SXrHpXDdvfp9w4BsMZiAf87eeq974P8VuyKbHgxN9El1nwtFGEfwm
|
30
|
-
M3zOaQdtTmiQPBqNIsE=
|
31
|
-
-----END CERTIFICATE-----
|
10
|
+
cert_chain: []
|
32
11
|
|
33
|
-
date: 2009-
|
12
|
+
date: 2009-07-07 00:00:00 +02:00
|
34
13
|
default_executable:
|
35
14
|
dependencies:
|
36
15
|
- !ruby/object:Gem::Dependency
|
@@ -61,7 +40,7 @@ dependencies:
|
|
61
40
|
requirements:
|
62
41
|
- - ">="
|
63
42
|
- !ruby/object:Gem::Version
|
64
|
-
version: 1.
|
43
|
+
version: 1.5.0
|
65
44
|
version:
|
66
45
|
- !ruby/object:Gem::Dependency
|
67
46
|
name: hoe
|
@@ -71,7 +50,17 @@ dependencies:
|
|
71
50
|
requirements:
|
72
51
|
- - ">="
|
73
52
|
- !ruby/object:Gem::Version
|
74
|
-
version:
|
53
|
+
version: 2.3.0
|
54
|
+
version:
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: hoe
|
57
|
+
type: :development
|
58
|
+
version_requirement:
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: 2.3.2
|
75
64
|
version:
|
76
65
|
description: A ruby based alternative to kdesvn-build.
|
77
66
|
email:
|
@@ -84,13 +73,11 @@ extra_rdoc_files:
|
|
84
73
|
- History.txt
|
85
74
|
- Manifest.txt
|
86
75
|
- PostInstall.txt
|
87
|
-
- README.rdoc
|
88
76
|
- website/index.txt
|
89
77
|
files:
|
90
78
|
- History.txt
|
91
79
|
- Manifest.txt
|
92
80
|
- PostInstall.txt
|
93
|
-
- README.rdoc
|
94
81
|
- Rakefile
|
95
82
|
- TODO
|
96
83
|
- bin/kde-build.rb
|
@@ -105,9 +92,15 @@ files:
|
|
105
92
|
- lib/kde-build/build_system/qtcopy.rb
|
106
93
|
- lib/kde-build/command.rb
|
107
94
|
- lib/kde-build/command/build.rb
|
95
|
+
- lib/kde-build/command/compile.rb
|
96
|
+
- lib/kde-build/command/configure.rb
|
97
|
+
- lib/kde-build/command/ctags.rb
|
108
98
|
- lib/kde-build/command/fetch.rb
|
109
99
|
- lib/kde-build/command/help.rb
|
110
100
|
- lib/kde-build/command/info.rb
|
101
|
+
- lib/kde-build/command/install.rb
|
102
|
+
- lib/kde-build/command/module_based.rb
|
103
|
+
- lib/kde-build/command/rebase.rb
|
111
104
|
- lib/kde-build/command/version.rb
|
112
105
|
- lib/kde-build/configuration.rb
|
113
106
|
- lib/kde-build/exception.rb
|
@@ -143,7 +136,7 @@ homepage: http://build-tool.rubyforge.org/git?p=build-tool.git;a=tree
|
|
143
136
|
post_install_message: PostInstall.txt
|
144
137
|
rdoc_options:
|
145
138
|
- --main
|
146
|
-
- README.
|
139
|
+
- README.txt
|
147
140
|
require_paths:
|
148
141
|
- lib
|
149
142
|
required_ruby_version: !ruby/object:Gem::Requirement
|
@@ -167,5 +160,5 @@ specification_version: 2
|
|
167
160
|
summary: A ruby based alternative to kdesvn-build.
|
168
161
|
test_files:
|
169
162
|
- test/test_helper.rb
|
170
|
-
- test/test_kde-build.rb
|
171
163
|
- test/test_vcs_svn.rb
|
164
|
+
- test/test_kde-build.rb
|
data.tar.gz.sig
DELETED
Binary file
|
data/README.rdoc
DELETED
@@ -1,55 +0,0 @@
|
|
1
|
-
= kde-build
|
2
|
-
|
3
|
-
* http://build-tool.rubyforge.org/git?p=build-tool.git;a=tree
|
4
|
-
|
5
|
-
== DESCRIPTION:
|
6
|
-
|
7
|
-
A ruby based alternative to kdesvn-build.
|
8
|
-
|
9
|
-
== FEATURES/PROBLEMS:
|
10
|
-
|
11
|
-
* *WARNING* Very young and immature program
|
12
|
-
|
13
|
-
== SYNOPSIS:
|
14
|
-
|
15
|
-
kde-build build :qt kdesupport/ :default
|
16
|
-
|
17
|
-
This will build
|
18
|
-
1. The package _qt_ as configured in the config file.
|
19
|
-
2. All modules named _kdesupport_/... in the order specified in the config file.
|
20
|
-
3. The package _default_ as configured in the config file.
|
21
|
-
|
22
|
-
If you haven't changed the default configuration you should end up with a
|
23
|
-
usable kde session.
|
24
|
-
|
25
|
-
== REQUIREMENTS:
|
26
|
-
|
27
|
-
Packages
|
28
|
-
- ruby
|
29
|
-
- rubygems
|
30
|
-
|
31
|
-
Gems
|
32
|
-
- cmdparse
|
33
|
-
- log4r
|
34
|
-
|
35
|
-
== INSTALL:
|
36
|
-
|
37
|
-
Currently not supported
|
38
|
-
|
39
|
-
== LICENSE:
|
40
|
-
|
41
|
-
Copyright (C) 2009 Michael Jansen <kde@michael-jansen.biz>
|
42
|
-
|
43
|
-
This library is free software; you can redistribute it and/or
|
44
|
-
modify it under the terms of the GNU General Public
|
45
|
-
License version 2 or later as published by the Free Software Foundation.
|
46
|
-
|
47
|
-
This library is distributed in the hope that it will be useful,
|
48
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
49
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
50
|
-
Library General Public License for more details.
|
51
|
-
|
52
|
-
You should have received a copy of the GNU Library General Public License
|
53
|
-
along with this library; see the file COPYING.LIB. If not, write to
|
54
|
-
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
55
|
-
Boston, MA 02110-1301, USA.
|
metadata.gz.sig
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
4���Wh��2���4�-�}O�=[�s���ۃ��j+�����z��f���jN�1���R?S��P�+�̰(3��oD��۶g-����U'je�/Z��6���&عk�>�&�������^�.�gM�0����DѬ��P��\fa���-�pi��T�������;'_�W�#��Ş�l1Bx+�j?Xz�Xr]F3��I{�R[�5=�T�c�O��Gmr����^����5���l$"Q���F�C@_��a
|