autoproj 1.13.2 → 1.13.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 +3 -3
- data/bin/autoproj_bootstrap +49 -9
- data/lib/autoproj/cmdline.rb +15 -0
- data/lib/autoproj/default.osdeps +15 -4
- data/lib/autoproj/gitorious.rb +1 -1
- data/lib/autoproj/ops/configuration.rb +28 -9
- data/lib/autoproj/osdeps.rb +34 -6
- data/lib/autoproj/version.rb +1 -1
- metadata +6 -24
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 32d36fd8dc2934a49ac40b7a7be7518415e1766c
|
4
|
+
data.tar.gz: 901f39312dbc0af904a6b14fc7f550ef3521d888
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 600aff44ad46893c53be513b3076aa6c6161ee866ca20475f95705cbae99532721568d45f3a8c03bda4becb5a4185af692b8721c602a46d46459a05c94673801
|
7
|
+
data.tar.gz: a321d7d4f205f5a689ad5a507caa45aa9ee2fef18ebab43c92f7f90d337964909a5b87704e3e6f18c4e178bb949916df0b1fb2d391362f8326c65fda82bf3af2
|
data/Rakefile
CHANGED
@@ -18,9 +18,9 @@ Utilrb::Rake.hoe do
|
|
18
18
|
license 'BSD'
|
19
19
|
|
20
20
|
extra_deps <<
|
21
|
-
['autobuild',
|
22
|
-
['utilrb', '~> 2.0
|
23
|
-
['highline', '
|
21
|
+
['autobuild', '~> 1.9.0'] <<
|
22
|
+
['utilrb', '~> 2.0.0'] <<
|
23
|
+
['highline', '>= 1.5.0']
|
24
24
|
end
|
25
25
|
end
|
26
26
|
end
|
data/bin/autoproj_bootstrap
CHANGED
@@ -878,6 +878,15 @@ fi
|
|
878
878
|
"emerge --noreplace '%s'")
|
879
879
|
end
|
880
880
|
end
|
881
|
+
# Package manager interface for systems that use pkg (i.e. FreeBSD) as
|
882
|
+
# their package manager
|
883
|
+
class PkgManager < ShellScriptManager
|
884
|
+
def initialize
|
885
|
+
super(['pkg'], true,
|
886
|
+
"pkg install -y '%s'",
|
887
|
+
"pkg install -y '%s'")
|
888
|
+
end
|
889
|
+
end
|
881
890
|
|
882
891
|
#Package manger for OpenSuse and Suse (untested)
|
883
892
|
class ZypperManager < ShellScriptManager
|
@@ -1491,7 +1500,8 @@ fi
|
|
1491
1500
|
PackageManagers::YumManager,
|
1492
1501
|
PackageManagers::PortManager,
|
1493
1502
|
PackageManagers::ZypperManager,
|
1494
|
-
PackageManagers::PipManager
|
1503
|
+
PackageManagers::PipManager ,
|
1504
|
+
PackageManagers::PkgManager]
|
1495
1505
|
|
1496
1506
|
# Mapping from OS name to package manager name
|
1497
1507
|
#
|
@@ -1511,7 +1521,8 @@ fi
|
|
1511
1521
|
'fedora' => 'yum',
|
1512
1522
|
'macos-port' => 'macports',
|
1513
1523
|
'macos-brew' => 'brew',
|
1514
|
-
'opensuse' => 'zypper'
|
1524
|
+
'opensuse' => 'zypper',
|
1525
|
+
'freebsd' => 'pkg'
|
1515
1526
|
}
|
1516
1527
|
|
1517
1528
|
# The information contained in the OSdeps files, as a hash
|
@@ -1718,6 +1729,9 @@ fi
|
|
1718
1729
|
version =~/.*VERSION\s+=\s+([^\s]+)/
|
1719
1730
|
version = $1
|
1720
1731
|
[['opensuse'], [version.strip]]
|
1732
|
+
elsif Autobuild.freebsd?
|
1733
|
+
version = `uname -r`.strip.split("-")[0]
|
1734
|
+
[['freebsd'],[version]]
|
1721
1735
|
end
|
1722
1736
|
end
|
1723
1737
|
|
@@ -1866,6 +1880,20 @@ fi
|
|
1866
1880
|
|
1867
1881
|
class InvalidRecursiveStatement < Autobuild::Exception; end
|
1868
1882
|
|
1883
|
+
# Return the path to the osdeps name for a given package name while
|
1884
|
+
# accounting for package aliases
|
1885
|
+
#
|
1886
|
+
# returns an array contain the path starting with name and
|
1887
|
+
# ending at the resolved name
|
1888
|
+
def self.resolve_name(name)
|
1889
|
+
path = [ name ]
|
1890
|
+
while OSDependencies.aliases.has_key?(name)
|
1891
|
+
name = OSDependencies.aliases[name]
|
1892
|
+
path << name
|
1893
|
+
end
|
1894
|
+
path
|
1895
|
+
end
|
1896
|
+
|
1869
1897
|
# Return the list of packages that should be installed for +name+
|
1870
1898
|
#
|
1871
1899
|
# The following two simple return values are possible:
|
@@ -1884,9 +1912,8 @@ fi
|
|
1884
1912
|
# name and version. The package list might be empty even if status ==
|
1885
1913
|
# FOUND_PACKAGES, for instance if the ignore keyword is used.
|
1886
1914
|
def resolve_package(name)
|
1887
|
-
|
1888
|
-
|
1889
|
-
end
|
1915
|
+
path = OSDependencies.resolve_name(name)
|
1916
|
+
name = path.last
|
1890
1917
|
|
1891
1918
|
os_names, os_versions = OSDependencies.operating_system
|
1892
1919
|
os_names = os_names.dup
|
@@ -2107,7 +2134,8 @@ fi
|
|
2107
2134
|
dependencies.each do |name|
|
2108
2135
|
result = resolve_package(name)
|
2109
2136
|
if !result
|
2110
|
-
|
2137
|
+
path = OSDependencies.resolve_name(name)
|
2138
|
+
raise MissingOSDep.new, "there is no osdeps definition for #{path.last} (search tree: #{path.join("->")})"
|
2111
2139
|
end
|
2112
2140
|
|
2113
2141
|
if result.empty?
|
@@ -2937,11 +2965,12 @@ build-essential:
|
|
2937
2965
|
opensuse:
|
2938
2966
|
- "@devel_C_C++"
|
2939
2967
|
- gcc-c++
|
2968
|
+
default: clang
|
2940
2969
|
autobuild:
|
2941
|
-
- gem: autobuild
|
2970
|
+
- gem: autobuild~>1.10.0
|
2942
2971
|
- osdep: readline
|
2943
2972
|
autoproj:
|
2944
|
-
- gem: autoproj
|
2973
|
+
- gem: autoproj~>1.13.0
|
2945
2974
|
- osdep: readline
|
2946
2975
|
readline:
|
2947
2976
|
debian,ubuntu: libreadline-dev
|
@@ -2958,9 +2987,10 @@ git:
|
|
2958
2987
|
gentoo: dev-vcs/git
|
2959
2988
|
arch: git
|
2960
2989
|
fedora: git
|
2961
|
-
macos-port: git
|
2990
|
+
macos-port: git
|
2962
2991
|
macos-brew: git
|
2963
2992
|
opensuse: git
|
2993
|
+
freebsd: git
|
2964
2994
|
hg:
|
2965
2995
|
debian,ubuntu: mercurial
|
2966
2996
|
gentoo: dev-vcs/mercurial
|
@@ -2968,6 +2998,7 @@ hg:
|
|
2968
2998
|
fedora: mercurial
|
2969
2999
|
darwin: mercurial
|
2970
3000
|
opensuse: mercurial
|
3001
|
+
freebsd: mercurial
|
2971
3002
|
svn:
|
2972
3003
|
debian,ubuntu: subversion
|
2973
3004
|
gentoo: dev-util/subversion
|
@@ -2975,6 +3006,7 @@ svn:
|
|
2975
3006
|
fedora: subversion
|
2976
3007
|
darwin: subversion
|
2977
3008
|
opensuse: subversion
|
3009
|
+
freebsd: subversion
|
2978
3010
|
cmake:
|
2979
3011
|
debian,ubuntu: cmake
|
2980
3012
|
gentoo: dev-util/cmake
|
@@ -2982,6 +3014,7 @@ cmake:
|
|
2982
3014
|
fedora: cmake
|
2983
3015
|
darwin: cmake
|
2984
3016
|
opensuse: cmake
|
3017
|
+
freebsd: cmake
|
2985
3018
|
autotools:
|
2986
3019
|
debian,ubuntu:
|
2987
3020
|
- automake
|
@@ -3001,6 +3034,9 @@ autotools:
|
|
3001
3034
|
opensuse:
|
3002
3035
|
- automake
|
3003
3036
|
- autoconf
|
3037
|
+
freebsd:
|
3038
|
+
- automake
|
3039
|
+
- autoconf
|
3004
3040
|
archive:
|
3005
3041
|
debian,ubuntu:
|
3006
3042
|
- tar
|
@@ -3022,18 +3058,22 @@ archive:
|
|
3022
3058
|
opensuse:
|
3023
3059
|
- tar
|
3024
3060
|
- unzip
|
3061
|
+
default: ignore
|
3025
3062
|
cvs:
|
3026
3063
|
debian,ubuntu: cvs
|
3027
3064
|
fedora: cvs
|
3028
3065
|
darwin: cvs
|
3029
3066
|
arch: cvs
|
3030
3067
|
opensuse: cvs
|
3068
|
+
freebsd: cvs
|
3031
3069
|
pip:
|
3032
3070
|
debian,ubuntu: python-pip
|
3033
3071
|
arch: python2-pip
|
3034
3072
|
opensuse: python-pip
|
3035
3073
|
fedora: python-pip
|
3074
|
+
freebsd: pip
|
3036
3075
|
sudo:
|
3076
|
+
macos-brew: ignore
|
3037
3077
|
default: sudo
|
3038
3078
|
|
3039
3079
|
EODEFS
|
data/lib/autoproj/cmdline.rb
CHANGED
@@ -537,6 +537,16 @@ module Autoproj
|
|
537
537
|
# Returns the set of packages that are actually selected based on what
|
538
538
|
# the user gave on the command line
|
539
539
|
def self.resolve_user_selection(selected_packages, options = Hash.new)
|
540
|
+
if all_known_package?
|
541
|
+
result = PackageSelection.new
|
542
|
+
names = manifest.all_packages
|
543
|
+
names.delete_if { |pkg_name| manifest.excluded?(pkg_name) || manifest.ignored?(pkg_name) }
|
544
|
+
names.each do |pkg_name|
|
545
|
+
result.select(pkg_name, pkg_name)
|
546
|
+
end
|
547
|
+
return result
|
548
|
+
#return manifest.metapackages#.collect {|m| m[0] }
|
549
|
+
end
|
540
550
|
if selected_packages.empty?
|
541
551
|
return manifest.default_packages
|
542
552
|
end
|
@@ -830,6 +840,7 @@ module Autoproj
|
|
830
840
|
def self.manifest; Autoproj.manifest end
|
831
841
|
def self.only_status?; !!@only_status end
|
832
842
|
def self.only_local?; !!@only_local end
|
843
|
+
def self.all_known_package?; !!@all_known_package end
|
833
844
|
def self.reset?; !!@reset end
|
834
845
|
def self.check?; !!@check end
|
835
846
|
def self.manifest_update?; !!@manifest_update end
|
@@ -886,6 +897,7 @@ module Autoproj
|
|
886
897
|
def self.parse_arguments(args, with_mode = true, &additional_options)
|
887
898
|
@only_status = false
|
888
899
|
@only_local = false
|
900
|
+
@all_known_package = false
|
889
901
|
@show_osdeps = false
|
890
902
|
@status_exit_code = false
|
891
903
|
@revshow_osdeps = false
|
@@ -1053,6 +1065,9 @@ where 'mode' is one of:
|
|
1053
1065
|
opts.on("--local", "in status and update modes, do not access the network") do
|
1054
1066
|
@only_local = true
|
1055
1067
|
end
|
1068
|
+
opts.on("--all-known-packages", "handle all known packages that are defined by package-sets") do
|
1069
|
+
@all_known_package = true
|
1070
|
+
end
|
1056
1071
|
opts.on("--reset", "in update mode, reset the repositories to the state requested by the VCS configuration") do
|
1057
1072
|
@reset = true
|
1058
1073
|
end
|
data/lib/autoproj/default.osdeps
CHANGED
@@ -87,12 +87,13 @@ build-essential:
|
|
87
87
|
fedora: ["gcc-c++", make, glibc-devel]
|
88
88
|
darwin: ignore
|
89
89
|
opensuse: ["@devel_C_C++", "gcc-c++"]
|
90
|
+
default: clang
|
90
91
|
|
91
92
|
autobuild:
|
92
|
-
- gem: autobuild
|
93
|
+
- gem: autobuild~>1.10.0
|
93
94
|
- osdep: readline
|
94
95
|
autoproj:
|
95
|
-
- gem: autoproj
|
96
|
+
- gem: autoproj~>1.13.0
|
96
97
|
- osdep: readline
|
97
98
|
|
98
99
|
readline:
|
@@ -112,9 +113,10 @@ git:
|
|
112
113
|
gentoo: dev-vcs/git
|
113
114
|
arch: git
|
114
115
|
fedora: git
|
115
|
-
macos-port: git
|
116
|
+
macos-port: git
|
116
117
|
macos-brew: git
|
117
118
|
opensuse: git
|
119
|
+
freebsd: git
|
118
120
|
|
119
121
|
hg:
|
120
122
|
debian,ubuntu: mercurial
|
@@ -123,6 +125,7 @@ hg:
|
|
123
125
|
fedora: mercurial
|
124
126
|
darwin: mercurial
|
125
127
|
opensuse: mercurial
|
128
|
+
freebsd: mercurial
|
126
129
|
|
127
130
|
svn:
|
128
131
|
debian,ubuntu: subversion
|
@@ -131,6 +134,7 @@ svn:
|
|
131
134
|
fedora: subversion
|
132
135
|
darwin: subversion
|
133
136
|
opensuse: subversion
|
137
|
+
freebsd: subversion
|
134
138
|
|
135
139
|
cmake:
|
136
140
|
debian,ubuntu: cmake
|
@@ -139,6 +143,7 @@ cmake:
|
|
139
143
|
fedora: cmake
|
140
144
|
darwin: cmake
|
141
145
|
opensuse: cmake
|
146
|
+
freebsd: cmake
|
142
147
|
|
143
148
|
autotools:
|
144
149
|
debian,ubuntu:
|
@@ -159,6 +164,9 @@ autotools:
|
|
159
164
|
opensuse:
|
160
165
|
- automake
|
161
166
|
- autoconf
|
167
|
+
freebsd:
|
168
|
+
- automake
|
169
|
+
- autoconf
|
162
170
|
|
163
171
|
archive:
|
164
172
|
debian,ubuntu:
|
@@ -181,6 +189,7 @@ archive:
|
|
181
189
|
opensuse:
|
182
190
|
- tar
|
183
191
|
- unzip
|
192
|
+
default: ignore
|
184
193
|
|
185
194
|
cvs:
|
186
195
|
debian,ubuntu: cvs
|
@@ -188,15 +197,17 @@ cvs:
|
|
188
197
|
darwin: cvs
|
189
198
|
arch: cvs
|
190
199
|
opensuse: cvs
|
200
|
+
freebsd: cvs
|
191
201
|
|
192
202
|
pip:
|
193
203
|
debian,ubuntu: python-pip
|
194
204
|
arch: python2-pip
|
195
205
|
opensuse: python-pip
|
196
206
|
fedora: python-pip
|
207
|
+
freebsd: pip
|
197
208
|
|
198
209
|
sudo:
|
210
|
+
macos-brew: ignore
|
199
211
|
default: sudo
|
200
212
|
|
201
213
|
# vim: expandtab
|
202
|
-
|
data/lib/autoproj/gitorious.rb
CHANGED
@@ -52,7 +52,7 @@ module Autoproj
|
|
52
52
|
elsif !access_methods.has_key?(value)
|
53
53
|
raise Autoproj::InputError, "#{value} is not a known access method"
|
54
54
|
elsif disabled_methods.include?(value)
|
55
|
-
raise Autoproj::InputError, "#{
|
55
|
+
raise Autoproj::InputError, "#{value} is disabled on #{base_url}"
|
56
56
|
end
|
57
57
|
|
58
58
|
value
|
@@ -209,6 +209,9 @@ module Autoproj
|
|
209
209
|
by_repository_id = Hash.new
|
210
210
|
by_name = Hash.new
|
211
211
|
|
212
|
+
required_remotes_dirs = Array.new
|
213
|
+
required_user_dirs = Array.new
|
214
|
+
|
212
215
|
queue = queue_auto_imports_if_needed(Array.new, root_pkg_set, root_pkg_set)
|
213
216
|
while !queue.empty?
|
214
217
|
vcs, options, imported_from = queue.shift
|
@@ -227,17 +230,28 @@ module Autoproj
|
|
227
230
|
end
|
228
231
|
by_repository_id[repository_id] = [vcs, imported_from]
|
229
232
|
|
233
|
+
# Make sure the package set has been already checked out to
|
234
|
+
# retrieve the actual name of the package set
|
230
235
|
if !vcs.local?
|
231
236
|
update_remote_package_set(vcs, only_local)
|
232
|
-
|
237
|
+
raw_local_dir = PackageSet.raw_local_dir_of(vcs)
|
238
|
+
required_remotes_dirs << raw_local_dir
|
233
239
|
end
|
234
|
-
|
235
240
|
name = PackageSet.name_of(manifest, vcs)
|
241
|
+
|
242
|
+
required_user_dirs = by_name.collect { |k,v| k }
|
243
|
+
Autoproj.debug "Trying to load package_set: #{name} from definition #{repository_id}"
|
244
|
+
Autoproj.debug "Already loaded package_sets are: #{required_user_dirs}"
|
245
|
+
|
236
246
|
if already_loaded = by_name[name]
|
237
247
|
already_loaded_pkg_set, already_loaded_vcs = *already_loaded
|
238
248
|
if already_loaded_vcs != vcs
|
239
249
|
if imported_from
|
240
|
-
Autoproj.warn "
|
250
|
+
Autoproj.warn "redundant auto-import by #{imported_from.name} for package set '#{name}'."
|
251
|
+
Autoproj.warn " A package set with the same name (#{name}) has already been imported from"
|
252
|
+
Autoproj.warn " #{already_loaded_vcs}"
|
253
|
+
Autoproj.warn " Skipping the following one: "
|
254
|
+
Autoproj.warn " #{vcs}"
|
241
255
|
else
|
242
256
|
Autoproj.warn "the manifest refers to a package set from #{vcs}, but a package set with the same name (#{name}) has already been imported from #{already_loaded_vcs}, I am skipping this one"
|
243
257
|
end
|
@@ -248,6 +262,8 @@ module Autoproj
|
|
248
262
|
imported_from.imports << already_loaded_pkg_set
|
249
263
|
end
|
250
264
|
next
|
265
|
+
else
|
266
|
+
create_remote_set_user_dir(vcs)
|
251
267
|
end
|
252
268
|
|
253
269
|
pkg_set = load_package_set(vcs, options, imported_from)
|
@@ -260,18 +276,20 @@ module Autoproj
|
|
260
276
|
queue_auto_imports_if_needed(queue, pkg_set, root_pkg_set)
|
261
277
|
end
|
262
278
|
|
263
|
-
cleanup_remotes_dir(package_sets)
|
264
|
-
cleanup_remotes_user_dir(package_sets)
|
279
|
+
cleanup_remotes_dir(package_sets, required_remotes_dirs)
|
280
|
+
cleanup_remotes_user_dir(package_sets, required_user_dirs)
|
265
281
|
package_sets
|
266
282
|
end
|
267
283
|
|
268
284
|
# Removes from {remotes_dir} the directories that do not match a package
|
269
285
|
# set
|
270
|
-
def cleanup_remotes_dir(package_sets = manifest.package_sets)
|
286
|
+
def cleanup_remotes_dir(package_sets = manifest.package_sets, required_remotes_dirs = Array.new)
|
271
287
|
# Cleanup the .remotes and remotes_symlinks_dir directories
|
272
288
|
Dir.glob(File.join(remotes_dir, '*')).each do |dir|
|
273
289
|
dir = File.expand_path(dir)
|
274
|
-
|
290
|
+
# Once a package set has been checked out during the process,
|
291
|
+
# keep it -- so that it won't be checked out again
|
292
|
+
if File.directory?(dir) && !required_remotes_dirs.include?(dir)
|
275
293
|
FileUtils.rm_rf dir
|
276
294
|
end
|
277
295
|
end
|
@@ -279,10 +297,11 @@ module Autoproj
|
|
279
297
|
|
280
298
|
# Removes from {remotes_user_dir} the directories that do not match a
|
281
299
|
# package set
|
282
|
-
def cleanup_remotes_user_dir(package_sets = manifest.package_sets)
|
300
|
+
def cleanup_remotes_user_dir(package_sets = manifest.package_sets, required_user_dirs = Array.new)
|
283
301
|
Dir.glob(File.join(remotes_user_dir, '*')).each do |file|
|
284
302
|
file = File.expand_path(file)
|
285
|
-
|
303
|
+
user_dir = File.basename(file)
|
304
|
+
if File.symlink?(file) && !required_user_dirs.include?(user_dir)
|
286
305
|
FileUtils.rm_f file
|
287
306
|
end
|
288
307
|
end
|
data/lib/autoproj/osdeps.rb
CHANGED
@@ -355,6 +355,15 @@ fi
|
|
355
355
|
"emerge --noreplace '%s'")
|
356
356
|
end
|
357
357
|
end
|
358
|
+
# Package manager interface for systems that use pkg (i.e. FreeBSD) as
|
359
|
+
# their package manager
|
360
|
+
class PkgManager < ShellScriptManager
|
361
|
+
def initialize
|
362
|
+
super(['pkg'], true,
|
363
|
+
"pkg install -y '%s'",
|
364
|
+
"pkg install -y '%s'")
|
365
|
+
end
|
366
|
+
end
|
358
367
|
|
359
368
|
#Package manger for OpenSuse and Suse (untested)
|
360
369
|
class ZypperManager < ShellScriptManager
|
@@ -968,7 +977,8 @@ fi
|
|
968
977
|
PackageManagers::YumManager,
|
969
978
|
PackageManagers::PortManager,
|
970
979
|
PackageManagers::ZypperManager,
|
971
|
-
PackageManagers::PipManager
|
980
|
+
PackageManagers::PipManager ,
|
981
|
+
PackageManagers::PkgManager]
|
972
982
|
|
973
983
|
# Mapping from OS name to package manager name
|
974
984
|
#
|
@@ -988,7 +998,8 @@ fi
|
|
988
998
|
'fedora' => 'yum',
|
989
999
|
'macos-port' => 'macports',
|
990
1000
|
'macos-brew' => 'brew',
|
991
|
-
'opensuse' => 'zypper'
|
1001
|
+
'opensuse' => 'zypper',
|
1002
|
+
'freebsd' => 'pkg'
|
992
1003
|
}
|
993
1004
|
|
994
1005
|
# The information contained in the OSdeps files, as a hash
|
@@ -1195,6 +1206,9 @@ fi
|
|
1195
1206
|
version =~/.*VERSION\s+=\s+([^\s]+)/
|
1196
1207
|
version = $1
|
1197
1208
|
[['opensuse'], [version.strip]]
|
1209
|
+
elsif Autobuild.freebsd?
|
1210
|
+
version = `uname -r`.strip.split("-")[0]
|
1211
|
+
[['freebsd'],[version]]
|
1198
1212
|
end
|
1199
1213
|
end
|
1200
1214
|
|
@@ -1343,6 +1357,20 @@ fi
|
|
1343
1357
|
|
1344
1358
|
class InvalidRecursiveStatement < Autobuild::Exception; end
|
1345
1359
|
|
1360
|
+
# Return the path to the osdeps name for a given package name while
|
1361
|
+
# accounting for package aliases
|
1362
|
+
#
|
1363
|
+
# returns an array contain the path starting with name and
|
1364
|
+
# ending at the resolved name
|
1365
|
+
def self.resolve_name(name)
|
1366
|
+
path = [ name ]
|
1367
|
+
while OSDependencies.aliases.has_key?(name)
|
1368
|
+
name = OSDependencies.aliases[name]
|
1369
|
+
path << name
|
1370
|
+
end
|
1371
|
+
path
|
1372
|
+
end
|
1373
|
+
|
1346
1374
|
# Return the list of packages that should be installed for +name+
|
1347
1375
|
#
|
1348
1376
|
# The following two simple return values are possible:
|
@@ -1361,9 +1389,8 @@ fi
|
|
1361
1389
|
# name and version. The package list might be empty even if status ==
|
1362
1390
|
# FOUND_PACKAGES, for instance if the ignore keyword is used.
|
1363
1391
|
def resolve_package(name)
|
1364
|
-
|
1365
|
-
|
1366
|
-
end
|
1392
|
+
path = OSDependencies.resolve_name(name)
|
1393
|
+
name = path.last
|
1367
1394
|
|
1368
1395
|
os_names, os_versions = OSDependencies.operating_system
|
1369
1396
|
os_names = os_names.dup
|
@@ -1584,7 +1611,8 @@ fi
|
|
1584
1611
|
dependencies.each do |name|
|
1585
1612
|
result = resolve_package(name)
|
1586
1613
|
if !result
|
1587
|
-
|
1614
|
+
path = OSDependencies.resolve_name(name)
|
1615
|
+
raise MissingOSDep.new, "there is no osdeps definition for #{path.last} (search tree: #{path.join("->")})"
|
1588
1616
|
end
|
1589
1617
|
|
1590
1618
|
if result.empty?
|
data/lib/autoproj/version.rb
CHANGED
metadata
CHANGED
@@ -1,23 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: autoproj
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.13.
|
4
|
+
version: 1.13.3.b1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rock Core Developers
|
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: autobuild
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '1.9'
|
20
|
-
- - ">="
|
21
18
|
- !ruby/object:Gem::Version
|
22
19
|
version: 1.9.0
|
23
20
|
type: :runtime
|
@@ -25,9 +22,6 @@ dependencies:
|
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
26
23
|
requirements:
|
27
24
|
- - "~>"
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '1.9'
|
30
|
-
- - ">="
|
31
25
|
- !ruby/object:Gem::Version
|
32
26
|
version: 1.9.0
|
33
27
|
- !ruby/object:Gem::Dependency
|
@@ -35,9 +29,6 @@ dependencies:
|
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
36
30
|
requirements:
|
37
31
|
- - "~>"
|
38
|
-
- !ruby/object:Gem::Version
|
39
|
-
version: '2.0'
|
40
|
-
- - ">="
|
41
32
|
- !ruby/object:Gem::Version
|
42
33
|
version: 2.0.0
|
43
34
|
type: :runtime
|
@@ -45,31 +36,22 @@ dependencies:
|
|
45
36
|
version_requirements: !ruby/object:Gem::Requirement
|
46
37
|
requirements:
|
47
38
|
- - "~>"
|
48
|
-
- !ruby/object:Gem::Version
|
49
|
-
version: '2.0'
|
50
|
-
- - ">="
|
51
39
|
- !ruby/object:Gem::Version
|
52
40
|
version: 2.0.0
|
53
41
|
- !ruby/object:Gem::Dependency
|
54
42
|
name: highline
|
55
43
|
requirement: !ruby/object:Gem::Requirement
|
56
44
|
requirements:
|
57
|
-
- - "~>"
|
58
|
-
- !ruby/object:Gem::Version
|
59
|
-
version: '1.7'
|
60
45
|
- - ">="
|
61
46
|
- !ruby/object:Gem::Version
|
62
|
-
version: 1.
|
47
|
+
version: 1.5.0
|
63
48
|
type: :runtime
|
64
49
|
prerelease: false
|
65
50
|
version_requirements: !ruby/object:Gem::Requirement
|
66
51
|
requirements:
|
67
|
-
- - "~>"
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
version: '1.7'
|
70
52
|
- - ">="
|
71
53
|
- !ruby/object:Gem::Version
|
72
|
-
version: 1.
|
54
|
+
version: 1.5.0
|
73
55
|
- !ruby/object:Gem::Dependency
|
74
56
|
name: rdoc
|
75
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -253,9 +235,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
253
235
|
version: 1.9.2
|
254
236
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
255
237
|
requirements:
|
256
|
-
- - "
|
238
|
+
- - ">"
|
257
239
|
- !ruby/object:Gem::Version
|
258
|
-
version:
|
240
|
+
version: 1.3.1
|
259
241
|
requirements: []
|
260
242
|
rubyforge_project:
|
261
243
|
rubygems_version: 2.2.2
|