rscons 0.0.13 → 0.0.14

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.
@@ -28,6 +28,12 @@ module Rscons
28
28
  'CXXSUFFIX' => '.cc',
29
29
  'CXXDEPGEN' => ['-MMD', '-MF', '$_DEPFILE'],
30
30
  'CXXCOM' =>['$CXX', '-c', '-o', '$_TARGET', '$CXXDEPGEN', '-I$[CPPPATH]', '$CPPFLAGS', '$CXXFLAGS', '$_SOURCES'],
31
+
32
+ 'DC' => 'gdc',
33
+ 'DFLAGS' => [],
34
+ 'DSUFFIX' => '.d',
35
+ 'D_IMPORT_PATH' => [],
36
+ 'DCCOM' => ['$DC', '-c', '-o', '$_TARGET', '-I$[D_IMPORT_PATH]', '$DFLAGS', '$_SOURCES'],
31
37
  }
32
38
  end
33
39
 
@@ -35,7 +41,8 @@ module Rscons
35
41
  target.has_suffix?(env['OBJSUFFIX']) and (
36
42
  source.has_suffix?(env['ASSUFFIX']) or
37
43
  source.has_suffix?(env['CSUFFIX']) or
38
- source.has_suffix?(env['CXXSUFFIX']))
44
+ source.has_suffix?(env['CXXSUFFIX']) or
45
+ source.has_suffix?(env['DSUFFIX']))
39
46
  end
40
47
 
41
48
  def run(target, sources, cache, env, vars = {})
@@ -50,6 +57,8 @@ module Rscons
50
57
  'CC'
51
58
  elsif sources.first.has_suffix?(env['CXXSUFFIX'])
52
59
  'CXX'
60
+ elsif sources.first.has_suffix?(env['DSUFFIX'])
61
+ 'DC'
53
62
  else
54
63
  raise "Error: unknown input file type: #{sources.first.inspect}"
55
64
  end
@@ -18,14 +18,19 @@ module Rscons
18
18
  # build sources to linkable objects
19
19
  objects = env.build_sources(sources, [env['OBJSUFFIX'], env['LIBSUFFIX']].flatten, cache, vars)
20
20
  if objects
21
- use_cxx = sources.map do |s|
22
- s.has_suffix?(env['CXXSUFFIX'])
23
- end.any?
24
- ld_alt = use_cxx ? env['CXX'] : env['CC']
21
+ ld = if env["LD"]
22
+ env["LD"]
23
+ elsif sources.find {|s| s.has_suffix?(env["DSUFFIX"])}
24
+ env["DC"]
25
+ elsif sources.find {|s| s.has_suffix?(env["CXXSUFFIX"])}
26
+ env["CXX"]
27
+ else
28
+ env["CC"]
29
+ end
25
30
  vars = vars.merge({
26
31
  '_TARGET' => target,
27
32
  '_SOURCES' => objects,
28
- 'LD' => env['LD'] || ld_alt,
33
+ 'LD' => ld,
29
34
  })
30
35
  command = env.build_command(env['LDCOM'], vars)
31
36
  standard_build("LD #{target}", target, command, objects, env, cache)
@@ -1,4 +1,4 @@
1
1
  module Rscons
2
2
  # gem version
3
- VERSION = "0.0.13"
3
+ VERSION = "0.0.14"
4
4
  end
metadata CHANGED
@@ -1,18 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rscons
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.13
4
+ version: 0.0.14
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Josh Holtrop
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2013-10-15 00:00:00.000000000 Z
12
+ date: 2013-10-29 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: rspec-core
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - ! '>='
18
20
  - !ruby/object:Gem::Version
@@ -20,6 +22,7 @@ dependencies:
20
22
  type: :development
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
27
  - - ! '>='
25
28
  - !ruby/object:Gem::Version
@@ -27,6 +30,7 @@ dependencies:
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: rspec-mocks
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
35
  - - ! '>='
32
36
  - !ruby/object:Gem::Version
@@ -34,6 +38,7 @@ dependencies:
34
38
  type: :development
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
43
  - - ! '>='
39
44
  - !ruby/object:Gem::Version
@@ -41,6 +46,7 @@ dependencies:
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: rspec-expectations
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
51
  - - ! '>='
46
52
  - !ruby/object:Gem::Version
@@ -48,6 +54,7 @@ dependencies:
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
59
  - - ! '>='
53
60
  - !ruby/object:Gem::Version
@@ -55,6 +62,7 @@ dependencies:
55
62
  - !ruby/object:Gem::Dependency
56
63
  name: rspec
57
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
58
66
  requirements:
59
67
  - - ! '>='
60
68
  - !ruby/object:Gem::Version
@@ -62,6 +70,7 @@ dependencies:
62
70
  type: :development
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
65
74
  requirements:
66
75
  - - ! '>='
67
76
  - !ruby/object:Gem::Version
@@ -69,6 +78,7 @@ dependencies:
69
78
  - !ruby/object:Gem::Dependency
70
79
  name: rake
71
80
  requirement: !ruby/object:Gem::Requirement
81
+ none: false
72
82
  requirements:
73
83
  - - ! '>='
74
84
  - !ruby/object:Gem::Version
@@ -76,6 +86,7 @@ dependencies:
76
86
  type: :development
77
87
  prerelease: false
78
88
  version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
79
90
  requirements:
80
91
  - - ! '>='
81
92
  - !ruby/object:Gem::Version
@@ -83,6 +94,7 @@ dependencies:
83
94
  - !ruby/object:Gem::Dependency
84
95
  name: simplecov
85
96
  requirement: !ruby/object:Gem::Requirement
97
+ none: false
86
98
  requirements:
87
99
  - - ! '>='
88
100
  - !ruby/object:Gem::Version
@@ -90,6 +102,7 @@ dependencies:
90
102
  type: :development
91
103
  prerelease: false
92
104
  version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
93
106
  requirements:
94
107
  - - ! '>='
95
108
  - !ruby/object:Gem::Version
@@ -97,6 +110,7 @@ dependencies:
97
110
  - !ruby/object:Gem::Dependency
98
111
  name: json
99
112
  requirement: !ruby/object:Gem::Requirement
113
+ none: false
100
114
  requirements:
101
115
  - - ! '>='
102
116
  - !ruby/object:Gem::Version
@@ -104,6 +118,7 @@ dependencies:
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
107
122
  requirements:
108
123
  - - ! '>='
109
124
  - !ruby/object:Gem::Version
@@ -111,6 +126,7 @@ dependencies:
111
126
  - !ruby/object:Gem::Dependency
112
127
  name: rdoc
113
128
  requirement: !ruby/object:Gem::Requirement
129
+ none: false
114
130
  requirements:
115
131
  - - ! '>='
116
132
  - !ruby/object:Gem::Version
@@ -118,6 +134,7 @@ dependencies:
118
134
  type: :development
119
135
  prerelease: false
120
136
  version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
121
138
  requirements:
122
139
  - - ! '>='
123
140
  - !ruby/object:Gem::Version
@@ -125,6 +142,7 @@ dependencies:
125
142
  - !ruby/object:Gem::Dependency
126
143
  name: yard
127
144
  requirement: !ruby/object:Gem::Requirement
145
+ none: false
128
146
  requirements:
129
147
  - - ! '>='
130
148
  - !ruby/object:Gem::Version
@@ -132,6 +150,7 @@ dependencies:
132
150
  type: :development
133
151
  prerelease: false
134
152
  version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
135
154
  requirements:
136
155
  - - ! '>='
137
156
  - !ruby/object:Gem::Version
@@ -192,26 +211,33 @@ files:
192
211
  homepage: https://github.com/holtrop/rscons
193
212
  licenses:
194
213
  - MIT
195
- metadata: {}
196
214
  post_install_message:
197
215
  rdoc_options: []
198
216
  require_paths:
199
217
  - lib
200
218
  required_ruby_version: !ruby/object:Gem::Requirement
219
+ none: false
201
220
  requirements:
202
221
  - - ! '>='
203
222
  - !ruby/object:Gem::Version
204
223
  version: '0'
224
+ segments:
225
+ - 0
226
+ hash: 982055185
205
227
  required_rubygems_version: !ruby/object:Gem::Requirement
228
+ none: false
206
229
  requirements:
207
230
  - - ! '>='
208
231
  - !ruby/object:Gem::Version
209
232
  version: '0'
233
+ segments:
234
+ - 0
235
+ hash: 982055185
210
236
  requirements: []
211
237
  rubyforge_project:
212
- rubygems_version: 2.0.3
238
+ rubygems_version: 1.8.23
213
239
  signing_key:
214
- specification_version: 4
240
+ specification_version: 3
215
241
  summary: Software construction library inspired by SCons and implemented in Ruby
216
242
  test_files:
217
243
  - spec/build_tests_spec.rb
checksums.yaml DELETED
@@ -1,15 +0,0 @@
1
- ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- NjE2OGU4MDZjYTk0MDhkYWU2NzgxZGJjYjgzZmIxYTI0NTk4YzU2Zg==
5
- data.tar.gz: !binary |-
6
- OTkwYjJhODI0NjgzZTc2NDg3MGNmMDlhNmE2MjgxOWNmNWY4YjE3ZQ==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- NTQzMjdjYzkxODUwNjIzNTg0NDI2ZmIxM2QzZTllNWJhNjRiOWRmMDc0OTUz
10
- ZDJjMmI0MDMxMGE3NWRmZTFmZjA3NmE0YWNkNWYzNmVkY2VmZTIyNTEwOTZl
11
- YTBkNGZlZjRhYjZlNjgxNDIyZTJlNWJkZjhkMjgwY2E2YTA4Mzc=
12
- data.tar.gz: !binary |-
13
- MjM1ZTY0YmZlNDcwMGRiNTU3ZDQyZWVjMGMwYmM1MGM2YjlmODk0MGRmMjNm
14
- NjVmOWI5MjUxMTI0ZDA0ZjZhMWU1OWRhOWNjZDMxZjYwMzAyNDQ3ZTY3NDA2
15
- YzIxYTAwMjExNzMwYjgxMmYxYmEyMTUwZDdhOWNjNTEyNmY3Y2E=