rake-builder 0.0.8 → 0.0.9

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 CHANGED
@@ -1,10 +1,9 @@
1
1
  = rake-builder - Rake for C/C++/Objective-C/Objective-C++ Projects
2
2
 
3
- rake-builder provides a simple interface for building C, C++,
4
- Objective-C and Objective-C++ projects.
5
- It uses rake, which was created as a make replacement,
6
- and specializes it for the specific purpose of compiling
7
- single projects.
3
+ rake-builder builds C, C++, Objective-C and Objective-C++
4
+ projects.
5
+ Project files are dicovered accoring to indicated paths
6
+ and or flie globs.
8
7
 
9
8
  Projects are managed and built via a 'Rakefile'.
10
9
 
@@ -56,7 +55,7 @@ You can list tasks as follows:
56
55
 
57
56
  = Online
58
57
 
59
- * 'Source code'[http://github.com/joeyates/rake-builder]
58
+ * {Source code}[http://github.com/joeyates/rake-builder]
60
59
  * Documentation[http://rdoc.info/projects/joeyates/rake-builder]
61
60
  * Gem[http://rubygems.org/gems/rake-builder]
62
61
 
@@ -100,6 +99,6 @@ So, if there are two source files with the same name, they will overwrite each o
100
99
 
101
100
  = TODO
102
101
 
103
- * Objective-C/Objective-C++ builds
102
+ * Objective-C++ projects
104
103
  * pre-compiled headers
105
104
  * parallel builds
@@ -5,5 +5,6 @@ require 'rake/builder'
5
5
  Rake::Builder.new do |builder|
6
6
  builder.target = 'hello_world_objective_c'
7
7
  builder.programming_language = 'objective-c'
8
- builder.library_dependencies = ''
8
+ builder.library_dependencies = [ 'objc' ]
9
+ builder.linker_options = '-framework CoreFoundation -framework Foundation'
9
10
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  int main(void)
4
4
  {
5
- // NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
6
5
  NSString *hello = @"Hello World!";
6
+ NSLog( @"%@", hello );
7
7
  }
data/examples/README.rdoc CHANGED
@@ -31,3 +31,7 @@ In this case, there are two build projects,
31
31
  one for the main executable and one for tests.
32
32
 
33
33
  The tests are in the 'test' namespace.
34
+
35
+ == 6. Hello World! in Objective-C
36
+
37
+ Minimal project using NSLog.
data/lib/rake/builder.rb CHANGED
@@ -33,7 +33,7 @@ module Rake
33
33
  module VERSION #:nodoc:
34
34
  MAJOR = 0
35
35
  MINOR = 0
36
- TINY = 8
36
+ TINY = 9
37
37
 
38
38
  STRING = [ MAJOR, MINOR, TINY ].join('.')
39
39
  end
@@ -134,6 +134,9 @@ module Rake
134
134
  # Additional library directories for linking
135
135
  attr_accessor :library_paths
136
136
 
137
+ # extra options to pass to the linker
138
+ attr_accessor :linker_options
139
+
137
140
  # Libraries to be linked
138
141
  attr_accessor :library_dependencies
139
142
 
@@ -206,6 +209,7 @@ module Rake
206
209
  @install_path ||= default_install_path( @target_type )
207
210
 
208
211
  @compilation_options ||= ''
212
+ @linker_options ||= ''
209
213
  @include_paths ||= @header_search_paths.dup
210
214
  @include_paths = Rake::Builder.expand_paths_with_root( @include_paths, @rakefile_path )
211
215
  @generated_files = Rake::Builder.expand_paths_with_root( @generated_files, @rakefile_path )
@@ -378,7 +382,7 @@ module Rake
378
382
  end
379
383
 
380
384
  def link_flags
381
- [ library_paths_list, library_dependencies_list ].join( " " )
385
+ [ @linker_options, library_paths_list, library_dependencies_list ].join( " " )
382
386
  end
383
387
 
384
388
  # Paths
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: 15
4
+ hash: 13
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 8
10
- version: 0.0.8
9
+ - 9
10
+ version: 0.0.9
11
11
  platform: ruby
12
12
  authors:
13
13
  - Joe Yates