cxx 0.1.12 → 0.1.13

Sign up to get free protection for your applications and to get access to all the features.
data/lib/cxx.rb CHANGED
@@ -32,12 +32,6 @@ module Cxx
32
32
  @projects = projects.to_a
33
33
  end
34
34
 
35
- # TODO: this should be cleaned up somehow...
36
- if Cxxproject::Utils::OS.linux?
37
- toolchain[:LINKER][:LIB_PREFIX_FLAGS] = "-Wl,--whole-archive"
38
- toolchain[:LINKER][:LIB_POSTFIX_FLAGS] = "-Wl,--no-whole-archive"
39
- end
40
-
41
35
  Rake::application.deriveIncludes = true
42
36
 
43
37
  initialize_logging(build_dir)
@@ -77,9 +77,9 @@ module Cxx
77
77
  # * :output_dir
78
78
  def source_lib(name, hash)
79
79
  raise "not a hash" unless hash.is_a?(Hash)
80
- check_hash(hash,[:sources, :includes, :dependencies, :toolchain, :file_dependencies, :output_dir])
80
+ check_hash(hash, [:sources, :includes, :dependencies, :toolchain, :file_dependencies, :output_dir, :whole_archive])
81
81
  raise ":sources need to be defined" unless hash.has_key?(:sources)
82
- bblock = Cxxproject::SourceLibrary.new(name)
82
+ bblock = Cxxproject::SourceLibrary.new(name, hash[:whole_archive])
83
83
  bblock.set_sources(hash[:sources])
84
84
  bblock.set_includes(get_as_array(hash, :includes)) if hash.has_key?(:includes)
85
85
  bblock.set_tcs(hash[:toolchain]) if hash.has_key?(:toolchain)
@@ -92,6 +92,14 @@ module Cxx
92
92
  all_blocks << bblock
93
93
  end
94
94
 
95
+ def bin_lib(name, hash={})
96
+ raise "not a hash" unless hash.is_a?(Hash)
97
+ check_hash(hash, [:includes, :lib_path])
98
+ bblock = Cxxproject::BinaryLibrary.new(name)
99
+ bblock.set_includes(get_as_array(hash, :includes)) if hash.has_key?(:includes)
100
+ bblock.add_lib_element(Cxxproject::HasLibraries::SEARCH_PATH, hash[:lib_path], true) if hash.has_key?(:lib_path)
101
+ end
102
+
95
103
  # specify some binary libs
96
104
  # returns all binary libs as array
97
105
  def bin_libs(*names)
@@ -1,4 +1,4 @@
1
1
  module Cxx
2
- VERSION = "0.1.12"
2
+ VERSION = '0.1.13'
3
3
  end
4
4
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cxx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.12
4
+ version: 0.1.13
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-06 00:00:00.000000000 Z
12
+ date: 2012-09-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: cxxproject