autobuild 1.9.2 → 1.9.3.b1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6091962c49f811cded44e5f054555f732e33ffc9
4
- data.tar.gz: 1bacc77f147d5e195035cb395adc4c11f49112a4
3
+ metadata.gz: 7006a5ebfb5923ee682d7a6cb3917e0a8b86343f
4
+ data.tar.gz: ff78df5799be57cd850c64cb1eeb23f5f386968a
5
5
  SHA512:
6
- metadata.gz: acf99d4e1f49fd393f71c6482b67c35283d68f95b1ae12326abd5ed139aa77c3e48965400e3333401494ae0d45a98dd61032987d2ee306890b3d9523e8e1cfcb
7
- data.tar.gz: 314c0ba8e3e9ffac67f027b8176785f8ce345551f78f114d27c50634668fb230c678908d3a48f14af7e1cdfe8898a713e7e6b6c39b5157f3dfb191e4a3f10431
6
+ metadata.gz: e89ad92f96c77f244a8f8400cb7259d3ce2adce2f29641ebfeb3963b18488a27d23aaaea482ac5a35a564073d0ea6fdccfb846cdad825866a38598a33ef9db55
7
+ data.tar.gz: 70f6411149e3c389446bfb25aba4a5d089afca1ab6a79ffde0702486b730e4caeb53d60519d95e206d3d9e6151235dbc461ae82e14d006b555453a65703d58e7
data/Rakefile CHANGED
@@ -15,7 +15,7 @@ Utilrb::Rake.hoe do
15
15
 
16
16
  self.extra_deps <<
17
17
  ['rake', '>= 0.9.0'] <<
18
- ['utilrb', '>= 1.6.0'] <<
18
+ ['utilrb', '>= 2.0.0', '< 3.0.0'] <<
19
19
  ['highline', '>= 0']
20
20
 
21
21
  self.test_globs = ['test/suite.rb']
@@ -17,6 +17,15 @@ module Autobuild
17
17
  @macos
18
18
  end
19
19
 
20
+ @freebsd = RbConfig::CONFIG["host_os"].include?('freebsd')
21
+ def self.freebsd?
22
+ @freebsd
23
+ end
24
+
25
+ def self.bsd?
26
+ @freebsd || @macos #can be extended to some other OSes liek NetBSD
27
+ end
28
+
20
29
  SYSTEM_ENV = Hash.new
21
30
  ORIGINAL_ENV = Hash.new
22
31
  ENV.each do |k, v|
@@ -46,7 +55,20 @@ module Autobuild
46
55
  if windows? then "%s"
47
56
  else ". \"%s\""
48
57
  end
49
-
58
+
59
+ LIBRARY_PATH =
60
+ if macos? then 'DYLD_LIBRARY_PATH'
61
+ elsif windows? then 'PATH'
62
+ else 'LD_LIBRARY_PATH'
63
+ end
64
+
65
+ LIBRARY_SUFFIX =
66
+ if macos? then 'dylib'
67
+ elsif windows? then 'dll'
68
+ else 'so'
69
+ end
70
+
71
+
50
72
  class << self
51
73
  # List of the environment that should be set before calling a subcommand
52
74
  #
@@ -451,11 +473,11 @@ module Autobuild
451
473
  end
452
474
  end
453
475
 
454
- if !includes || includes.include?('LD_LIBRARY_PATH')
476
+ if !includes || includes.include?(LIBRARY_PATH)
455
477
  ld_library_search = ['lib', 'lib/ARCH', 'libARCHSIZE']
456
478
  each_env_search_path(newprefix, ld_library_search) do |path|
457
- if !Dir.glob(File.join(path, "lib*.so")).empty?
458
- env_add_path('LD_LIBRARY_PATH', path)
479
+ if !Dir.glob(File.join(path, "lib*.#{LIBRARY_SUFFIX}")).empty?
480
+ env_add_path(LIBRARY_PATH, path)
459
481
  end
460
482
  end
461
483
  end
@@ -186,6 +186,8 @@ module Autobuild
186
186
  begin
187
187
  if(WINDOWS)
188
188
  get_url_on_windows(@url, "#{cachefile}.partial")
189
+ elsif Autobuild.bsd?
190
+ Subprocess.run(package, :import, Autobuild.tool('curl'), '-Lso',"#{cachefile}.partial", @url)
189
191
  else
190
192
  additional_options = []
191
193
  if timeout = self.timeout
@@ -28,13 +28,24 @@ module Autobuild
28
28
  # It can be overriden on a per-package basis with CMake.generator=
29
29
  attr_accessor :generator
30
30
 
31
+ attr_reader :prefix_path
31
32
  attr_reader :module_path
32
33
  end
34
+ @prefix_path = []
33
35
  @module_path = []
34
36
  @full_reconfigures = true
35
37
 
36
38
  # a key => value association of defines for CMake
37
39
  attr_reader :defines
40
+ # The list of all -D options that should be passed on to CMake
41
+ def all_defines
42
+ additional_defines = Hash[
43
+ "CMAKE_INSTALL_PREFIX" => prefix,
44
+ "CMAKE_MODULE_PATH" => module_path.join(";"),
45
+ "CMAKE_PREFIX_PATH" => prefix_path.join(";")]
46
+ self.class.defines.merge(additional_defines).merge(defines)
47
+ end
48
+
38
49
  # If true, always run cmake before make during the build
39
50
  attr_accessor :always_reconfigure
40
51
  # If true, we always remove the CMake cache before reconfiguring.
@@ -279,6 +290,25 @@ module Autobuild
279
290
  end
280
291
  end
281
292
 
293
+ def module_path
294
+ CMake.module_path
295
+ end
296
+
297
+ def prefix_path
298
+ seen = Set.new
299
+ result = Array.new
300
+
301
+ raw = (dependencies.map { |pkg_name| Autobuild::Package[pkg_name].prefix } +
302
+ CMake.prefix_path)
303
+ raw.each do |path|
304
+ if !seen.include?(path)
305
+ seen << path
306
+ result << path
307
+ end
308
+ end
309
+ result
310
+ end
311
+
282
312
  def prepare
283
313
  # A failed initial CMake configuration leaves a CMakeCache.txt file,
284
314
  # but no Makefile.
@@ -291,9 +321,7 @@ module Autobuild
291
321
  doc_utility.source_ref_dir = builddir
292
322
 
293
323
  if File.exist?(cmake_cache)
294
- all_defines = self.class.defines.merge(defines)
295
- all_defines['CMAKE_INSTALL_PREFIX'] = prefix
296
- all_defines['CMAKE_MODULE_PATH'] = "#{CMake.module_path.join(";")}"
324
+ all_defines = self.all_defines
297
325
  cache = File.read(cmake_cache)
298
326
  did_change = all_defines.any? do |name, value|
299
327
  cache_line = cache.each_line.find do |line|
@@ -334,14 +362,14 @@ module Autobuild
334
362
  raise ConfigException.new(self, 'configure'), "#{srcdir} contains no CMakeLists.txt file"
335
363
  end
336
364
 
337
- command = [ "cmake", "-DCMAKE_INSTALL_PREFIX=#{prefix}", "-DCMAKE_MODULE_PATH=#{CMake.module_path.join(";")}" ]
365
+ command = [ "cmake" ]
338
366
 
339
367
  if Autobuild.windows?
340
368
  command << '-G'
341
369
  command << "MSYS Makefiles"
342
370
  end
343
-
344
- self.class.defines.merge(defines).each do |name, value|
371
+
372
+ all_defines.each do |name, value|
345
373
  command << "-D#{name}=#{value}"
346
374
  end
347
375
  if generator
@@ -1,5 +1,5 @@
1
1
  module Autobuild
2
- VERSION = "1.9.2" unless defined? Autobuild::VERSION
2
+ VERSION = "1.9.3.b1" unless defined? Autobuild::VERSION
3
3
  end
4
4
 
5
5
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: autobuild
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.2
4
+ version: 1.9.3.b1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sylvain Joyeux
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-28 00:00:00.000000000 Z
11
+ date: 2015-10-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -30,14 +30,20 @@ dependencies:
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 1.6.0
33
+ version: 2.0.0
34
+ - - "<"
35
+ - !ruby/object:Gem::Version
36
+ version: 3.0.0
34
37
  type: :runtime
35
38
  prerelease: false
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
38
41
  - - ">="
39
42
  - !ruby/object:Gem::Version
40
- version: 1.6.0
43
+ version: 2.0.0
44
+ - - "<"
45
+ - !ruby/object:Gem::Version
46
+ version: 3.0.0
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: highline
43
49
  requirement: !ruby/object:Gem::Requirement
@@ -72,14 +78,14 @@ dependencies:
72
78
  requirements:
73
79
  - - "~>"
74
80
  - !ruby/object:Gem::Version
75
- version: '3.13'
81
+ version: '3.14'
76
82
  type: :development
77
83
  prerelease: false
78
84
  version_requirements: !ruby/object:Gem::Requirement
79
85
  requirements:
80
86
  - - "~>"
81
87
  - !ruby/object:Gem::Version
82
- version: '3.13'
88
+ version: '3.14'
83
89
  description: Collection of classes to handle build systems (CMake, autotools, ...)
84
90
  and import mechanisms (tarballs, CVS, SVN, git, ...). It also offers a Rake integration
85
91
  to import and build such software packages. It is the backbone of the autoproj (http://rock-robotics.org/autoproj)
@@ -93,7 +99,6 @@ extra_rdoc_files:
93
99
  - Manifest.txt
94
100
  - README.txt
95
101
  files:
96
- - ".gemtest"
97
102
  - Changes.txt
98
103
  - Manifest.txt
99
104
  - README.txt
@@ -166,12 +171,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
166
171
  version: 1.9.2
167
172
  required_rubygems_version: !ruby/object:Gem::Requirement
168
173
  requirements:
169
- - - ">="
174
+ - - ">"
170
175
  - !ruby/object:Gem::Version
171
- version: '0'
176
+ version: 1.3.1
172
177
  requirements: []
173
178
  rubyforge_project:
174
- rubygems_version: 2.2.2
179
+ rubygems_version: 2.2.3
175
180
  signing_key:
176
181
  specification_version: 4
177
182
  summary: Library to handle build systems and import mechanisms
data/.gemtest DELETED
File without changes