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 +4 -4
- data/Rakefile +1 -1
- data/lib/autobuild/environment.rb +26 -4
- data/lib/autobuild/import/archive.rb +2 -0
- data/lib/autobuild/packages/cmake.rb +34 -6
- data/lib/autobuild/version.rb +1 -1
- metadata +15 -10
- data/.gemtest +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7006a5ebfb5923ee682d7a6cb3917e0a8b86343f
|
4
|
+
data.tar.gz: ff78df5799be57cd850c64cb1eeb23f5f386968a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e89ad92f96c77f244a8f8400cb7259d3ce2adce2f29641ebfeb3963b18488a27d23aaaea482ac5a35a564073d0ea6fdccfb846cdad825866a38598a33ef9db55
|
7
|
+
data.tar.gz: 70f6411149e3c389446bfb25aba4a5d089afca1ab6a79ffde0702486b730e4caeb53d60519d95e206d3d9e6151235dbc461ae82e14d006b555453a65703d58e7
|
data/Rakefile
CHANGED
@@ -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?(
|
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
|
458
|
-
env_add_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.
|
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"
|
365
|
+
command = [ "cmake" ]
|
338
366
|
|
339
367
|
if Autobuild.windows?
|
340
368
|
command << '-G'
|
341
369
|
command << "MSYS Makefiles"
|
342
370
|
end
|
343
|
-
|
344
|
-
|
371
|
+
|
372
|
+
all_defines.each do |name, value|
|
345
373
|
command << "-D#{name}=#{value}"
|
346
374
|
end
|
347
375
|
if generator
|
data/lib/autobuild/version.rb
CHANGED
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.
|
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-
|
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:
|
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:
|
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.
|
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.
|
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:
|
176
|
+
version: 1.3.1
|
172
177
|
requirements: []
|
173
178
|
rubyforge_project:
|
174
|
-
rubygems_version: 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
|