* apt-pkg/deb/deblistparser.cc:
[ntk/apt.git] / test / integration / test-bug-632221-cross-dependency-satisfaction
CommitLineData
234675b7
DK
1#!/bin/sh
2set -e
3
4TESTDIR=$(readlink -f $(dirname $0))
5. $TESTDIR/framework
6setupenvironment
7configarchitecture 'amd64' 'armel'
8
737c7a7b 9insertinstalledpackage 'build-essential' 'all' '11.5' 'Multi-Arch: foreign'
234675b7 10
737c7a7b 11insertpackage 'unstable' 'doxygen' 'amd64,armel' '1.0' 'Multi-Arch: foreign'
234675b7
DK
12insertpackage 'unstable' 'libc6' 'amd64,armel' '1.0' 'Multi-Arch: same'
13insertpackage 'unstable' 'libc6-dev' 'amd64,armel' '1.0' 'Depends: libc6
14Multi-Arch: same'
737c7a7b
SL
15insertpackage 'unstable' 'libfwibble1' 'amd64,armel' '1.0' 'Depends: libc6
16Multi-Arch: same'
17insertpackage 'unstable' 'libfwibble-dev' 'amd64,armel' '1.0' 'Depends: libfwibble1'
234675b7
DK
18insertpackage 'unstable' 'cool' 'amd64,armel' '1.0' 'Multi-Arch: allowed'
19insertpackage 'unstable' 'amdboot' 'amd64' '1.0'
20insertpackage 'unstable' 'foreigner' 'amd64,armel' '1.0' 'Multi-Arch: foreign'
65f99834
DK
21insertpackage 'unstable' 'arm-stuff' 'armel' '1.0'
22insertpackage 'unstable' 'linux-stuff' 'amd64,armel' '1.0'
234675b7 23
65f99834 24insertsource 'unstable' 'apt' 'any' '0.8.15' 'Build-Depends: doxygen, libc6-dev, libc6-dev:native, cool:any, amdboot:amd64, foreigner, libfwibble-dev, arm-stuff [any-arm] | linux-stuff [ linux-any]'
234675b7 25
d5dea0be
DK
26insertsource 'unstable' 'forbidden-none' 'any' '1' 'Build-Depends: amdboot:any'
27insertsource 'unstable' 'forbidden-same' 'any' '1' 'Build-Depends: libc6:any'
28insertsource 'unstable' 'forbidden-foreign' 'any' '1' 'Build-Depends: doxygen:any'
29
249a02f5
DK
30insertpackage 'unstable' 'specific' 'amd64' '1.0' 'Depends: libc6:amd64'
31insertpackage 'unstable' 'specific' 'armel' '1.0' 'Depends: libc6:armel'
32
33insertsource 'unstable' 'source-specific-amd64' 'amd64' '1' 'Build-Depends: specific:amd64'
34insertsource 'unstable' 'source-specific-armel' 'armel' '1' 'Build-Depends: specific:armel'
35
234675b7
DK
36setupaptarchive
37
d5dea0be
DK
38testequal "Reading package lists...
39Building dependency tree...
40E: Build-Depends dependency for forbidden-none can't be satisfied because amdboot:any is not allowed on 'Multi-Arch: none' packages" aptget build-dep forbidden-none -s -a armel
41testequal "Reading package lists...
42Building dependency tree...
43E: Build-Depends dependency for forbidden-same can't be satisfied because libc6:any is not allowed on 'Multi-Arch: same' packages" aptget build-dep forbidden-same -s -a armel
44testequal "Reading package lists...
45Building dependency tree...
46E: Build-Depends dependency for forbidden-foreign can't be satisfied because doxygen:any is not allowed on 'Multi-Arch: foreign' packages" aptget build-dep forbidden-foreign -s -a armel
47
249a02f5
DK
48testequal 'Reading package lists...
49Building dependency tree...
50The following NEW packages will be installed:
51 libc6 specific
520 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
53Inst libc6 (1.0 unstable [amd64])
54Inst specific (1.0 unstable [amd64])
55Conf libc6 (1.0 unstable [amd64])
56Conf specific (1.0 unstable [amd64])' aptget build-dep source-specific-amd64 -s
57testequal 'Reading package lists...
58Building dependency tree...
59The following NEW packages will be installed:
60 libc6 specific
610 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
62Inst libc6 (1.0 unstable [amd64])
63Inst specific (1.0 unstable [amd64])
64Conf libc6 (1.0 unstable [amd64])
65Conf specific (1.0 unstable [amd64])' aptget build-dep source-specific-amd64 -s -a armel
66testequal 'Reading package lists...
67Building dependency tree...
68The following NEW packages will be installed:
69 libc6:armel specific:armel
700 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
71Inst libc6:armel (1.0 unstable [armel])
72Inst specific:armel (1.0 unstable [armel])
73Conf libc6:armel (1.0 unstable [armel])
74Conf specific:armel (1.0 unstable [armel])' aptget build-dep source-specific-armel -s
75testequal 'Reading package lists...
76Building dependency tree...
77The following NEW packages will be installed:
78 libc6:armel specific:armel
790 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
80Inst libc6:armel (1.0 unstable [armel])
81Inst specific:armel (1.0 unstable [armel])
82Conf libc6:armel (1.0 unstable [armel])
83Conf specific:armel (1.0 unstable [armel])' aptget build-dep source-specific-armel -s -a armel
84
234675b7
DK
85testequal 'Reading package lists...
86Building dependency tree...
87The following NEW packages will be installed:
737c7a7b 88 amdboot cool doxygen foreigner libc6 libc6-dev libfwibble-dev libfwibble1
65f99834
DK
89 linux-stuff
900 upgraded, 9 newly installed, 0 to remove and 0 not upgraded.
234675b7
DK
91Inst amdboot (1.0 unstable [amd64])
92Inst cool (1.0 unstable [amd64])
93Inst doxygen (1.0 unstable [amd64])
94Inst foreigner (1.0 unstable [amd64])
95Inst libc6 (1.0 unstable [amd64])
96Inst libc6-dev (1.0 unstable [amd64])
737c7a7b
SL
97Inst libfwibble1 (1.0 unstable [amd64])
98Inst libfwibble-dev (1.0 unstable [amd64])
65f99834 99Inst linux-stuff (1.0 unstable [amd64])
234675b7
DK
100Conf amdboot (1.0 unstable [amd64])
101Conf cool (1.0 unstable [amd64])
102Conf doxygen (1.0 unstable [amd64])
103Conf foreigner (1.0 unstable [amd64])
104Conf libc6 (1.0 unstable [amd64])
737c7a7b
SL
105Conf libc6-dev (1.0 unstable [amd64])
106Conf libfwibble1 (1.0 unstable [amd64])
65f99834
DK
107Conf libfwibble-dev (1.0 unstable [amd64])
108Conf linux-stuff (1.0 unstable [amd64])' aptget build-dep apt -s
234675b7
DK
109
110testequal 'Reading package lists...
111Building dependency tree...
112The following NEW packages will be installed:
65f99834
DK
113 amdboot arm-stuff:armel cool doxygen foreigner libc6 libc6:armel libc6-dev
114 libc6-dev:armel libfwibble-dev:armel libfwibble1:armel
1150 upgraded, 11 newly installed, 0 to remove and 0 not upgraded.
234675b7 116Inst amdboot (1.0 unstable [amd64])
65f99834 117Inst arm-stuff:armel (1.0 unstable [armel])
234675b7
DK
118Inst cool (1.0 unstable [amd64])
119Inst doxygen (1.0 unstable [amd64])
120Inst foreigner (1.0 unstable [amd64])
234675b7 121Inst libc6 (1.0 unstable [amd64])
30426f48 122Inst libc6:armel (1.0 unstable [armel])
234675b7 123Inst libc6-dev (1.0 unstable [amd64])
30426f48 124Inst libc6-dev:armel (1.0 unstable [armel])
737c7a7b
SL
125Inst libfwibble1:armel (1.0 unstable [armel])
126Inst libfwibble-dev:armel (1.0 unstable [armel])
234675b7 127Conf amdboot (1.0 unstable [amd64])
65f99834 128Conf arm-stuff:armel (1.0 unstable [armel])
234675b7
DK
129Conf cool (1.0 unstable [amd64])
130Conf doxygen (1.0 unstable [amd64])
131Conf foreigner (1.0 unstable [amd64])
132Conf libc6 (1.0 unstable [amd64])
133Conf libc6:armel (1.0 unstable [armel])
134Conf libc6-dev (1.0 unstable [amd64])
737c7a7b
SL
135Conf libc6-dev:armel (1.0 unstable [armel])
136Conf libfwibble1:armel (1.0 unstable [armel])
137Conf libfwibble-dev:armel (1.0 unstable [armel])' aptget build-dep apt -s -a armel
234675b7
DK
138
139configarchitecture 'armel' 'amd64'
140
141testequal 'Reading package lists...
142Building dependency tree...
143The following NEW packages will be installed:
65f99834
DK
144 amdboot:amd64 arm-stuff cool doxygen foreigner libc6 libc6-dev
145 libfwibble-dev libfwibble1
1460 upgraded, 9 newly installed, 0 to remove and 0 not upgraded.
234675b7 147Inst amdboot:amd64 (1.0 unstable [amd64])
65f99834 148Inst arm-stuff (1.0 unstable [armel])
234675b7
DK
149Inst cool (1.0 unstable [armel])
150Inst doxygen (1.0 unstable [armel])
151Inst foreigner (1.0 unstable [armel])
152Inst libc6 (1.0 unstable [armel])
153Inst libc6-dev (1.0 unstable [armel])
737c7a7b
SL
154Inst libfwibble1 (1.0 unstable [armel])
155Inst libfwibble-dev (1.0 unstable [armel])
234675b7 156Conf amdboot:amd64 (1.0 unstable [amd64])
65f99834 157Conf arm-stuff (1.0 unstable [armel])
234675b7
DK
158Conf cool (1.0 unstable [armel])
159Conf doxygen (1.0 unstable [armel])
160Conf foreigner (1.0 unstable [armel])
161Conf libc6 (1.0 unstable [armel])
737c7a7b
SL
162Conf libc6-dev (1.0 unstable [armel])
163Conf libfwibble1 (1.0 unstable [armel])
164Conf libfwibble-dev (1.0 unstable [armel])' aptget build-dep apt -s
234675b7
DK
165
166testequal 'Reading package lists...
167Building dependency tree...
168The following NEW packages will be installed:
169 amdboot:amd64 cool doxygen foreigner libc6:amd64 libc6 libc6-dev:amd64
65f99834
DK
170 libc6-dev libfwibble-dev:amd64 libfwibble1:amd64 linux-stuff:amd64
1710 upgraded, 11 newly installed, 0 to remove and 0 not upgraded.
234675b7
DK
172Inst amdboot:amd64 (1.0 unstable [amd64])
173Inst cool (1.0 unstable [armel])
174Inst doxygen (1.0 unstable [armel])
175Inst foreigner (1.0 unstable [armel])
234675b7 176Inst libc6:amd64 (1.0 unstable [amd64])
30426f48 177Inst libc6 (1.0 unstable [armel])
234675b7 178Inst libc6-dev:amd64 (1.0 unstable [amd64])
30426f48 179Inst libc6-dev (1.0 unstable [armel])
737c7a7b
SL
180Inst libfwibble1:amd64 (1.0 unstable [amd64])
181Inst libfwibble-dev:amd64 (1.0 unstable [amd64])
65f99834 182Inst linux-stuff:amd64 (1.0 unstable [amd64])
234675b7
DK
183Conf amdboot:amd64 (1.0 unstable [amd64])
184Conf cool (1.0 unstable [armel])
185Conf doxygen (1.0 unstable [armel])
186Conf foreigner (1.0 unstable [armel])
187Conf libc6:amd64 (1.0 unstable [amd64])
188Conf libc6 (1.0 unstable [armel])
189Conf libc6-dev:amd64 (1.0 unstable [amd64])
737c7a7b
SL
190Conf libc6-dev (1.0 unstable [armel])
191Conf libfwibble1:amd64 (1.0 unstable [amd64])
65f99834
DK
192Conf libfwibble-dev:amd64 (1.0 unstable [amd64])
193Conf linux-stuff:amd64 (1.0 unstable [amd64])' aptget build-dep apt -s -a amd64
234675b7
DK
194
195configarchitecture 'amd64' 'armel'
196
197insertinstalledpackage 'cool' 'amd64' '0.5'
198insertinstalledpackage 'foreigner' 'armel' '0.5'
199
200testequal 'Reading package lists...
201Building dependency tree...
202The following NEW packages will be installed:
65f99834
DK
203 amdboot doxygen libc6 libc6-dev libfwibble-dev libfwibble1 linux-stuff
2040 upgraded, 7 newly installed, 0 to remove and 2 not upgraded.
234675b7
DK
205Inst amdboot (1.0 unstable [amd64])
206Inst doxygen (1.0 unstable [amd64])
207Inst libc6 (1.0 unstable [amd64])
208Inst libc6-dev (1.0 unstable [amd64])
737c7a7b
SL
209Inst libfwibble1 (1.0 unstable [amd64])
210Inst libfwibble-dev (1.0 unstable [amd64])
65f99834 211Inst linux-stuff (1.0 unstable [amd64])
234675b7
DK
212Conf amdboot (1.0 unstable [amd64])
213Conf doxygen (1.0 unstable [amd64])
214Conf libc6 (1.0 unstable [amd64])
737c7a7b
SL
215Conf libc6-dev (1.0 unstable [amd64])
216Conf libfwibble1 (1.0 unstable [amd64])
65f99834
DK
217Conf libfwibble-dev (1.0 unstable [amd64])
218Conf linux-stuff (1.0 unstable [amd64])' aptget build-dep apt -s
234675b7
DK
219
220testequal 'Reading package lists...
221Building dependency tree...
222The following NEW packages will be installed:
65f99834 223 amdboot arm-stuff:armel doxygen libc6 libc6:armel libc6-dev libc6-dev:armel
737c7a7b 224 libfwibble-dev:armel libfwibble1:armel
65f99834 2250 upgraded, 9 newly installed, 0 to remove and 2 not upgraded.
234675b7 226Inst amdboot (1.0 unstable [amd64])
65f99834 227Inst arm-stuff:armel (1.0 unstable [armel])
234675b7 228Inst doxygen (1.0 unstable [amd64])
234675b7 229Inst libc6 (1.0 unstable [amd64])
30426f48 230Inst libc6:armel (1.0 unstable [armel])
234675b7 231Inst libc6-dev (1.0 unstable [amd64])
30426f48 232Inst libc6-dev:armel (1.0 unstable [armel])
737c7a7b
SL
233Inst libfwibble1:armel (1.0 unstable [armel])
234Inst libfwibble-dev:armel (1.0 unstable [armel])
234675b7 235Conf amdboot (1.0 unstable [amd64])
65f99834 236Conf arm-stuff:armel (1.0 unstable [armel])
234675b7
DK
237Conf doxygen (1.0 unstable [amd64])
238Conf libc6 (1.0 unstable [amd64])
239Conf libc6:armel (1.0 unstable [armel])
240Conf libc6-dev (1.0 unstable [amd64])
737c7a7b
SL
241Conf libc6-dev:armel (1.0 unstable [armel])
242Conf libfwibble1:armel (1.0 unstable [armel])
243Conf libfwibble-dev:armel (1.0 unstable [armel])' aptget build-dep apt -s -a armel
234675b7
DK
244
245configarchitecture 'armel' 'amd64'
246
247# cool 0.5 is not M-A: allowed, so amd64 is not acceptable
248testequal 'Reading package lists...
249Building dependency tree...
250The following packages will be REMOVED:
251 cool:amd64
252The following NEW packages will be installed:
65f99834
DK
253 amdboot:amd64 arm-stuff cool doxygen libc6 libc6-dev libfwibble-dev
254 libfwibble1
2550 upgraded, 8 newly installed, 1 to remove and 1 not upgraded.
234675b7
DK
256Remv cool:amd64 [0.5]
257Inst amdboot:amd64 (1.0 unstable [amd64])
65f99834 258Inst arm-stuff (1.0 unstable [armel])
234675b7
DK
259Inst cool (1.0 unstable [armel])
260Inst doxygen (1.0 unstable [armel])
261Inst libc6 (1.0 unstable [armel])
262Inst libc6-dev (1.0 unstable [armel])
737c7a7b
SL
263Inst libfwibble1 (1.0 unstable [armel])
264Inst libfwibble-dev (1.0 unstable [armel])
234675b7 265Conf amdboot:amd64 (1.0 unstable [amd64])
65f99834 266Conf arm-stuff (1.0 unstable [armel])
234675b7
DK
267Conf cool (1.0 unstable [armel])
268Conf doxygen (1.0 unstable [armel])
269Conf libc6 (1.0 unstable [armel])
737c7a7b
SL
270Conf libc6-dev (1.0 unstable [armel])
271Conf libfwibble1 (1.0 unstable [armel])
272Conf libfwibble-dev (1.0 unstable [armel])' aptget build-dep apt -s
234675b7
DK
273
274testequal 'Reading package lists...
275Building dependency tree...
276The following NEW packages will be installed:
277 amdboot:amd64 doxygen libc6:amd64 libc6 libc6-dev:amd64 libc6-dev
65f99834
DK
278 libfwibble-dev:amd64 libfwibble1:amd64 linux-stuff:amd64
2790 upgraded, 9 newly installed, 0 to remove and 2 not upgraded.
234675b7
DK
280Inst amdboot:amd64 (1.0 unstable [amd64])
281Inst doxygen (1.0 unstable [armel])
234675b7 282Inst libc6:amd64 (1.0 unstable [amd64])
30426f48 283Inst libc6 (1.0 unstable [armel])
234675b7 284Inst libc6-dev:amd64 (1.0 unstable [amd64])
30426f48 285Inst libc6-dev (1.0 unstable [armel])
737c7a7b
SL
286Inst libfwibble1:amd64 (1.0 unstable [amd64])
287Inst libfwibble-dev:amd64 (1.0 unstable [amd64])
65f99834 288Inst linux-stuff:amd64 (1.0 unstable [amd64])
234675b7
DK
289Conf amdboot:amd64 (1.0 unstable [amd64])
290Conf doxygen (1.0 unstable [armel])
291Conf libc6:amd64 (1.0 unstable [amd64])
292Conf libc6 (1.0 unstable [armel])
293Conf libc6-dev:amd64 (1.0 unstable [amd64])
737c7a7b
SL
294Conf libc6-dev (1.0 unstable [armel])
295Conf libfwibble1:amd64 (1.0 unstable [amd64])
65f99834
DK
296Conf libfwibble-dev:amd64 (1.0 unstable [amd64])
297Conf linux-stuff:amd64 (1.0 unstable [amd64])' aptget build-dep apt -s -a amd64