rake-builder 0.0.11 → 0.0.12
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/README.rdoc +3 -0
- data/lib/rake/builder.rb +13 -7
- metadata +4 -4
data/README.rdoc
CHANGED
@@ -48,6 +48,8 @@ include paths.
|
|
48
48
|
Rake::Builder collects all such information in one file:
|
49
49
|
'.rake-builder'
|
50
50
|
|
51
|
+
For namespaced tasks, e.g. 'test:build', the file is '.rake-builer.test'
|
52
|
+
|
51
53
|
This file should be created in the same
|
52
54
|
directory as the Rakefile.
|
53
55
|
|
@@ -131,3 +133,4 @@ So, if there are two source files with the same name, they will overwrite each o
|
|
131
133
|
* rakepp - another customisation of Rake for C++ projects
|
132
134
|
* Scons
|
133
135
|
* waf[http://code.google.com/p/waf/]
|
136
|
+
* http://felix-lang.org/blog/2010/aug/30/fbuild-0-2/
|
data/lib/rake/builder.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'rubygems' if RUBY_VERSION < '1.9'
|
2
2
|
require 'logger'
|
3
|
+
require 'yaml'
|
3
4
|
require 'rake'
|
4
5
|
require 'rake/tasklib'
|
5
6
|
require 'rake/path'
|
@@ -22,7 +23,7 @@ module Rake
|
|
22
23
|
module VERSION #:nodoc:
|
23
24
|
MAJOR = 0
|
24
25
|
MINOR = 0
|
25
|
-
TINY =
|
26
|
+
TINY = 12
|
26
27
|
|
27
28
|
STRING = [ MAJOR, MINOR, TINY ].join('.')
|
28
29
|
end
|
@@ -269,7 +270,9 @@ module Rake
|
|
269
270
|
desc "Build '#{ target_basename }'"
|
270
271
|
file @target => [ scoped_task( :compile ), *@target_prerequisites ] do |t|
|
271
272
|
shell "rm -f #{ t.name }"
|
272
|
-
|
273
|
+
build_commands.each do | command |
|
274
|
+
shell command
|
275
|
+
end
|
273
276
|
raise BuildFailureError if ! File.exist?( t.name )
|
274
277
|
end
|
275
278
|
|
@@ -282,7 +285,9 @@ module Rake
|
|
282
285
|
define_compile_task( src )
|
283
286
|
end
|
284
287
|
|
285
|
-
|
288
|
+
directory @objects_path
|
289
|
+
|
290
|
+
file @makedepend_file => [ @objects_path, *project_files ] do
|
286
291
|
@logger.add( Logger::DEBUG, "Analysing dependencies" )
|
287
292
|
command = "makedepend -f- -- #{ include_path } -- #{ file_list( source_files ) } 2>/dev/null > #{ @makedepend_file }"
|
288
293
|
shell command
|
@@ -367,14 +372,15 @@ module Rake
|
|
367
372
|
end
|
368
373
|
end
|
369
374
|
|
370
|
-
def
|
375
|
+
def build_commands
|
371
376
|
case @target_type
|
372
377
|
when :executable
|
373
|
-
"#{ @linker } #{ link_flags } -o #{ @target } #{ file_list( object_files ) }"
|
378
|
+
[ "#{ @linker } #{ link_flags } -o #{ @target } #{ file_list( object_files ) }" ]
|
374
379
|
when :static_library
|
375
|
-
"ar -cq #{ @target } #{ file_list( object_files ) }"
|
380
|
+
[ "ar -cq #{ @target } #{ file_list( object_files ) }",
|
381
|
+
"ranlib #{ @target }" ]
|
376
382
|
when :shared_library
|
377
|
-
"#{ @linker } -shared -o #{ @target } #{ file_list( object_files ) } #{ link_flags }"
|
383
|
+
[ "#{ @linker } -shared -o #{ @target } #{ file_list( object_files ) } #{ link_flags }" ]
|
378
384
|
end
|
379
385
|
end
|
380
386
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rake-builder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 7
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 12
|
10
|
+
version: 0.0.12
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Joe Yates
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-
|
18
|
+
date: 2010-12-30 00:00:00 +01:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|