summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/apt/apt
diff options
context:
space:
mode:
authorAlexander Kanavin <alexander.kanavin@linux.intel.com>2015-08-05 14:29:58 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-08-11 09:28:51 -0700
commit9d32d93779638b47df7b087b20148a62bc62f64e (patch)
treeaa87508bdca8f14766afaf794b55ebef24460af4 /meta/recipes-devtools/apt/apt
parent654ac86364cdf3b9f616a6019cd8211aef47d7da (diff)
downloadpoky-9d32d93779638b47df7b087b20148a62bc62f64e.tar.gz
apt: update to 1.0.10.1
(From OE-Core rev: 37c8700560b6da569cdf9d7c306a9aa31dcdf06f) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/apt/apt')
-rw-r--r--meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch378
-rw-r--r--meta/recipes-devtools/apt/apt/0001-fix-the-gcc-version-check.patch160
-rw-r--r--meta/recipes-devtools/apt/apt/0001-remove-Wsuggest-attribute-from-CFLAGS.patch43
-rw-r--r--meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch18
-rw-r--r--meta/recipes-devtools/apt/apt/disable-test.patch58
-rw-r--r--meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch12
-rw-r--r--meta/recipes-devtools/apt/apt/makerace.patch23
-rw-r--r--meta/recipes-devtools/apt/apt/no-nls-dpkg.patch26
-rw-r--r--meta/recipes-devtools/apt/apt/noconfigure.patch37
-rw-r--r--meta/recipes-devtools/apt/apt/nodoc.patch18
-rw-r--r--meta/recipes-devtools/apt/apt/truncate-filename.patch35
-rw-r--r--meta/recipes-devtools/apt/apt/use-host.patch15
12 files changed, 823 insertions, 0 deletions
diff --git a/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch b/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch
new file mode 100644
index 0000000000..d33069b73a
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch
@@ -0,0 +1,378 @@
1From 106797f1c66fa578dad21fd9380bf9d576573dfd Mon Sep 17 00:00:00 2001
2From: Roy Li <rongqing.li@windriver.com>
3Date: Fri, 22 May 2015 08:05:15 +0800
4Subject: [PATCH] Revert "always run 'dpkg --configure -a' at the end of our
5 dpkg callings"
6
7Upstream-Status: Inappropriate [embedded specific]
8
9This reverts commit a2a75ff4516f7609f4c55b42270abb8d08943c60, which
10always run 'dpkg --configure -a' at the end of our dpkg callings,
11but it does not work for cross-compile, since the rootfs dir can not
12be passed into dpkg, and lead to the below similar error:
13 -------
14 |mkdir: cannot create directory '/usr/lib/opkg': Permission denied
15 -------
16
17Signed-off-by: Roy Li <rongqing.li@windriver.com>
18---
19 apt-pkg/deb/dpkgpm.cc | 9 +--
20 test/integration/framework | 25 ++++----
21 test/integration/test-apt-progress-fd | 67 +++++++++----------
22 test/integration/test-apt-progress-fd-deb822 | 18 ++----
23 test/integration/test-apt-progress-fd-error | 2 +-
24 ...est-bug-769609-triggers-still-pending-after-run | 75 ----------------------
25 .../test-no-fds-leaked-to-maintainer-scripts | 6 +-
26 7 files changed, 56 insertions(+), 146 deletions(-)
27 delete mode 100755 test/integration/test-bug-769609-triggers-still-pending-after-run
28
29diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc
30index b187efb..f269764 100644
31--- a/apt-pkg/deb/dpkgpm.cc
32+++ b/apt-pkg/deb/dpkgpm.cc
33@@ -1049,12 +1049,6 @@ void pkgDPkgPM::BuildPackagesProgressMap()
34 PackagesTotal++;
35 }
36 }
37- /* one extra: We don't want the progress bar to reach 100%, especially not
38- if we call dpkg --configure --pending and process a bunch of triggers
39- while showing 100%. Also, spindown takes a while, so never reaching 100%
40- is way more correct than reaching 100% while still doing stuff even if
41- doing it this way is slightly bending the rules */
42- ++PackagesTotal;
43 }
44 /*}}}*/
45 #if (APT_PKG_MAJOR >= 4 && APT_PKG_MINOR < 13)
46@@ -1294,8 +1288,9 @@ bool pkgDPkgPM::GoNoABIBreak(APT::Progress::PackageManager *progress)
47
48 // support subpressing of triggers processing for special
49 // cases like d-i that runs the triggers handling manually
50+ bool const SmartConf = (_config->Find("PackageManager::Configure", "all") != "all");
51 bool const TriggersPending = _config->FindB("DPkg::TriggersPending", false);
52- if (_config->FindB("DPkg::ConfigurePending", true) == true)
53+ if (_config->FindB("DPkg::ConfigurePending", SmartConf) == true)
54 List.push_back(Item(Item::ConfigurePending, PkgIterator()));
55
56 // for the progress
57diff --git a/test/integration/framework b/test/integration/framework
58index 70ad381..00672ad 100644
59--- a/test/integration/framework
60+++ b/test/integration/framework
61@@ -1178,13 +1178,10 @@ testnopackage() {
62 fi
63 }
64
65-testdpkgstatus() {
66- local STATE="$1"
67- local NR="$2"
68- shift 2
69- msgtest "Test that $NR package(s) are in state $STATE with" "dpkg -l $*"
70- local PKGS="$(dpkg -l "$@" 2>/dev/null | grep "^${STATE}" | wc -l)"
71- if [ "$PKGS" != $NR ]; then
72+testdpkginstalled() {
73+ msgtest "Test for correctly installed package(s) with" "dpkg -l $*"
74+ local PKGS="$(dpkg -l "$@" 2>/dev/null | grep '^i' | wc -l)"
75+ if [ "$PKGS" != $# ]; then
76 echo >&2 $PKGS
77 dpkg -l "$@" | grep '^[a-z]' >&2
78 msgfail
79@@ -1193,12 +1190,16 @@ testdpkgstatus() {
80 fi
81 }
82
83-testdpkginstalled() {
84- testdpkgstatus 'ii' "$#" "$@"
85-}
86-
87 testdpkgnotinstalled() {
88- testdpkgstatus 'ii' '0' "$@"
89+ msgtest "Test for correctly not-installed package(s) with" "dpkg -l $*"
90+ local PKGS="$(dpkg -l "$@" 2> /dev/null | grep '^i' | wc -l)"
91+ if [ "$PKGS" != 0 ]; then
92+ echo
93+ dpkg -l "$@" | grep '^[a-z]' >&2
94+ msgfail
95+ else
96+ msgpass
97+ fi
98 }
99
100 testmarkedauto() {
101diff --git a/test/integration/test-apt-progress-fd b/test/integration/test-apt-progress-fd
102index 68cc043..d72e7e7 100755
103--- a/test/integration/test-apt-progress-fd
104+++ b/test/integration/test-apt-progress-fd
105@@ -19,14 +19,13 @@ testequal "dlstatus:1:0:Retrieving file 1 of 1
106 dlstatus:1:0:Retrieving file 1 of 1
107 pmstatus:dpkg-exec:0:Running dpkg
108 pmstatus:testing:0:Installing testing (amd64)
109-pmstatus:testing:16.6667:Preparing testing (amd64)
110-pmstatus:testing:33.3333:Unpacking testing (amd64)
111-pmstatus:testing:50:Preparing to configure testing (amd64)
112-pmstatus:dpkg-exec:50:Running dpkg
113-pmstatus:testing:50:Configuring testing (amd64)
114-pmstatus:testing:66.6667:Configuring testing (amd64)
115-pmstatus:testing:83.3333:Installed testing (amd64)
116-pmstatus:dpkg-exec:83.3333:Running dpkg" cat apt-progress.log
117+pmstatus:testing:20:Preparing testing (amd64)
118+pmstatus:testing:40:Unpacking testing (amd64)
119+pmstatus:testing:60:Preparing to configure testing (amd64)
120+pmstatus:dpkg-exec:60:Running dpkg
121+pmstatus:testing:60:Configuring testing (amd64)
122+pmstatus:testing:80:Configuring testing (amd64)
123+pmstatus:testing:100:Installed testing (amd64)" cat apt-progress.log
124
125 # upgrade
126 exec 3> apt-progress.log
127@@ -35,14 +34,13 @@ testequal "dlstatus:1:0:Retrieving file 1 of 1
128 dlstatus:1:0:Retrieving file 1 of 1
129 pmstatus:dpkg-exec:0:Running dpkg
130 pmstatus:testing:0:Installing testing (amd64)
131-pmstatus:testing:16.6667:Preparing testing (amd64)
132-pmstatus:testing:33.3333:Unpacking testing (amd64)
133-pmstatus:testing:50:Preparing to configure testing (amd64)
134-pmstatus:dpkg-exec:50:Running dpkg
135-pmstatus:testing:50:Configuring testing (amd64)
136-pmstatus:testing:66.6667:Configuring testing (amd64)
137-pmstatus:testing:83.3333:Installed testing (amd64)
138-pmstatus:dpkg-exec:83.3333:Running dpkg" cat apt-progress.log
139+pmstatus:testing:20:Preparing testing (amd64)
140+pmstatus:testing:40:Unpacking testing (amd64)
141+pmstatus:testing:60:Preparing to configure testing (amd64)
142+pmstatus:dpkg-exec:60:Running dpkg
143+pmstatus:testing:60:Configuring testing (amd64)
144+pmstatus:testing:80:Configuring testing (amd64)
145+pmstatus:testing:100:Installed testing (amd64)" cat apt-progress.log
146
147 # reinstall
148 exec 3> apt-progress.log
149@@ -51,24 +49,22 @@ testequal "dlstatus:1:0:Retrieving file 1 of 1
150 dlstatus:1:0:Retrieving file 1 of 1
151 pmstatus:dpkg-exec:0:Running dpkg
152 pmstatus:testing:0:Installing testing (amd64)
153-pmstatus:testing:16.6667:Preparing testing (amd64)
154-pmstatus:testing:33.3333:Unpacking testing (amd64)
155-pmstatus:testing:50:Preparing to configure testing (amd64)
156-pmstatus:dpkg-exec:50:Running dpkg
157-pmstatus:testing:50:Configuring testing (amd64)
158-pmstatus:testing:66.6667:Configuring testing (amd64)
159-pmstatus:testing:83.3333:Installed testing (amd64)
160-pmstatus:dpkg-exec:83.3333:Running dpkg" cat apt-progress.log
161+pmstatus:testing:20:Preparing testing (amd64)
162+pmstatus:testing:40:Unpacking testing (amd64)
163+pmstatus:testing:60:Preparing to configure testing (amd64)
164+pmstatus:dpkg-exec:60:Running dpkg
165+pmstatus:testing:60:Configuring testing (amd64)
166+pmstatus:testing:80:Configuring testing (amd64)
167+pmstatus:testing:100:Installed testing (amd64)" cat apt-progress.log
168
169 # and remove
170 exec 3> apt-progress.log
171 testsuccess aptget remove testing -y -o APT::Status-Fd=3
172 testequal "pmstatus:dpkg-exec:0:Running dpkg
173 pmstatus:testing:0:Removing testing (amd64)
174-pmstatus:testing:25:Preparing for removal of testing (amd64)
175-pmstatus:testing:50:Removing testing (amd64)
176-pmstatus:testing:75:Removed testing (amd64)
177-pmstatus:dpkg-exec:75:Running dpkg" cat apt-progress.log
178+pmstatus:testing:33.3333:Preparing for removal of testing (amd64)
179+pmstatus:testing:66.6667:Removing testing (amd64)
180+pmstatus:testing:100:Removed testing (amd64)" cat apt-progress.log
181
182 # install non-native and ensure we get proper progress info
183 exec 3> apt-progress.log
184@@ -79,13 +75,12 @@ testequal "dlstatus:1:0:Retrieving file 1 of 1
185 dlstatus:1:0:Retrieving file 1 of 1
186 pmstatus:dpkg-exec:0:Running dpkg
187 pmstatus:testing2:0:Installing testing2 (i386)
188-pmstatus:testing2:16.6667:Preparing testing2 (i386)
189-pmstatus:testing2:33.3333:Unpacking testing2 (i386)
190-pmstatus:testing2:50:Preparing to configure testing2 (i386)
191-pmstatus:dpkg-exec:50:Running dpkg
192-pmstatus:testing2:50:Configuring testing2 (i386)
193-pmstatus:testing2:66.6667:Configuring testing2 (i386)
194-pmstatus:testing2:83.3333:Installed testing2 (i386)
195-pmstatus:dpkg-exec:83.3333:Running dpkg" cat apt-progress.log
196+pmstatus:testing2:20:Preparing testing2 (i386)
197+pmstatus:testing2:40:Unpacking testing2 (i386)
198+pmstatus:testing2:60:Preparing to configure testing2 (i386)
199+pmstatus:dpkg-exec:60:Running dpkg
200+pmstatus:testing2:60:Configuring testing2 (i386)
201+pmstatus:testing2:80:Configuring testing2 (i386)
202+pmstatus:testing2:100:Installed testing2 (i386)" cat apt-progress.log
203
204 rm -f apt-progress*.log
205diff --git a/test/integration/test-apt-progress-fd-deb822 b/test/integration/test-apt-progress-fd-deb822
206index badc985..9d22794 100755
207--- a/test/integration/test-apt-progress-fd-deb822
208+++ b/test/integration/test-apt-progress-fd-deb822
209@@ -27,41 +27,37 @@ Message: Installing testing (amd64)
210
211 Status: progress
212 Package: testing:amd64
213-Percent: 16.6667
214+Percent: 20
215 Message: Preparing testing (amd64)
216
217 Status: progress
218 Package: testing:amd64
219-Percent: 33.3333
220+Percent: 40
221 Message: Unpacking testing (amd64)
222
223 Status: progress
224 Package: testing:amd64
225-Percent: 50
226+Percent: 60
227 Message: Preparing to configure testing (amd64)
228
229 Status: progress
230-Percent: 50
231+Percent: 60
232 Message: Running dpkg
233
234 Status: progress
235 Package: testing:amd64
236-Percent: 50
237+Percent: 60
238 Message: Configuring testing (amd64)
239
240 Status: progress
241 Package: testing:amd64
242-Percent: 66.6667
243+Percent: 80
244 Message: Configuring testing (amd64)
245
246 Status: progress
247 Package: testing:amd64
248-Percent: 83.3333
249+Percent: 100
250 Message: Installed testing (amd64)
251-
252-Status: progress
253-Percent: 83.3333
254-Message: Running dpkg
255 " cat apt-progress.log
256
257
258diff --git a/test/integration/test-apt-progress-fd-error b/test/integration/test-apt-progress-fd-error
259index 6323007..a47095b 100755
260--- a/test/integration/test-apt-progress-fd-error
261+++ b/test/integration/test-apt-progress-fd-error
262@@ -18,7 +18,7 @@ setupaptarchive
263 exec 3> apt-progress.log
264 testfailure aptget install foo1 foo2 -y -o APT::Status-Fd=3
265 msgtest "Ensure correct error message"
266-if grep -q "aptarchive/pool/foo2_0.8.15_amd64.deb:36.3636:trying to overwrite '/usr/bin/file-conflict', which is also in package foo1 0.8.15" apt-progress.log; then
267+if grep -q "aptarchive/pool/foo2_0.8.15_amd64.deb:40:trying to overwrite '/usr/bin/file-conflict', which is also in package foo1 0.8.15" apt-progress.log; then
268 msgpass
269 else
270 cat apt-progress.log
271diff --git a/test/integration/test-bug-769609-triggers-still-pending-after-run b/test/integration/test-bug-769609-triggers-still-pending-after-run
272deleted file mode 100755
273index 146fa76..0000000
274--- a/test/integration/test-bug-769609-triggers-still-pending-after-run
275+++ /dev/null
276@@ -1,75 +0,0 @@
277-#!/bin/sh
278-set -e
279-
280-TESTDIR=$(readlink -f $(dirname $0))
281-. $TESTDIR/framework
282-
283-setupenvironment
284-configarchitecture 'amd64'
285-
286-msgtest 'Check if installed dpkg supports' 'noawait trigger'
287-if dpkg-checkbuilddeps -d 'dpkg (>= 1.16.1)' /dev/null; then
288- msgpass
289-else
290- msgskip 'dpkg version too old'
291- exit 0
292-fi
293-configdpkgnoopchroot
294-
295-buildtriggerpackages() {
296- local TYPE="$1"
297- setupsimplenativepackage "triggerable-$TYPE" 'all' '1.0' 'unstable' "Depends: trigdepends-$TYPE"
298- BUILDDIR="incoming/triggerable-${TYPE}-1.0"
299- cat >${BUILDDIR}/debian/postinst <<EOF
300-#!/bin/sh
301-if [ "\$1" = 'triggered' ]; then
302- ls -l /proc/self/fd/
303-fi
304-EOF
305- echo "$TYPE /usr/share/doc" > ${BUILDDIR}/debian/triggers
306- buildpackage "$BUILDDIR" 'unstable' 'main' 'native'
307- rm -rf "$BUILDDIR"
308- buildsimplenativepackage "trigdepends-$TYPE" 'all' '1.0' 'unstable'
309-}
310-
311-#buildtriggerpackages 'interest'
312-buildtriggerpackages 'interest-noawait'
313-buildsimplenativepackage "trigstuff" 'all' '1.0' 'unstable'
314-
315-setupaptarchive
316-
317-runtests() {
318- local TYPE="$1"
319- msgmsg 'Working with trigger type' "$TYPE"
320- testsuccess aptget install triggerable-$TYPE -y
321- cp rootdir/tmp/testsuccess.output terminal.output
322- testsuccess grep '^REWRITE ' terminal.output
323- testdpkginstalled triggerable-$TYPE trigdepends-$TYPE
324-
325- testsuccess aptget install trigdepends-$TYPE -y --reinstall
326- cp rootdir/tmp/testsuccess.output terminal.output
327- testsuccess grep '^REWRITE ' terminal.output
328- testsuccess grep ' root root ' terminal.output
329- testdpkginstalled triggerable-$TYPE trigdepends-$TYPE
330-
331- testsuccess aptget install trigstuff -y
332- cp rootdir/tmp/testsuccess.output terminal.output
333- testsuccess grep '^REWRITE ' terminal.output
334- testsuccess grep ' root root ' terminal.output
335- testdpkginstalled triggerable-$TYPE trigdepends-$TYPE trigstuff
336-
337- testsuccess aptget purge trigstuff -y
338- cp rootdir/tmp/testsuccess.output terminal.output
339- testsuccess grep '^REWRITE ' terminal.output
340- testsuccess grep ' root root ' terminal.output
341- testdpkginstalled triggerable-$TYPE trigdepends-$TYPE
342- testdpkgnotinstalled trigstuff
343-
344- testsuccess aptget purge trigdepends-$TYPE -y
345- cp rootdir/tmp/testsuccess.output terminal.output
346- testfailure grep '^REWRITE ' terminal.output
347- testfailure grep ' root root ' terminal.output
348- testdpkgnotinstalled triggerable-$TYPE trigdepends-$TYPE
349-}
350-#runtests 'interest'
351-runtests 'interest-noawait'
352diff --git a/test/integration/test-no-fds-leaked-to-maintainer-scripts b/test/integration/test-no-fds-leaked-to-maintainer-scripts
353index 41c0570..d3960d7 100755
354--- a/test/integration/test-no-fds-leaked-to-maintainer-scripts
355+++ b/test/integration/test-no-fds-leaked-to-maintainer-scripts
356@@ -59,8 +59,7 @@ startup packages configure
357 configure $PKGNAME 1.0 <none>
358 status unpacked $PKGNAME 1.0
359 status half-configured $PKGNAME 1.0
360-status installed $PKGNAME 1.0
361-startup packages configure" cut -f 3- -d' ' rootdir/var/log/dpkg.log
362+status installed $PKGNAME 1.0" cut -f 3- -d' ' rootdir/var/log/dpkg.log
363 }
364 checkinstall
365
366@@ -85,8 +84,7 @@ status config-files $PKGNAME 1.0
367 status config-files $PKGNAME 1.0
368 status config-files $PKGNAME 1.0
369 status config-files $PKGNAME 1.0
370-status not-installed $PKGNAME <none>
371-startup packages configure" cut -f 3- -d' ' rootdir/var/log/dpkg.log
372+status not-installed $PKGNAME <none>" cut -f 3- -d' ' rootdir/var/log/dpkg.log
373 }
374 checkpurge
375
376--
3772.1.4
378
diff --git a/meta/recipes-devtools/apt/apt/0001-fix-the-gcc-version-check.patch b/meta/recipes-devtools/apt/apt/0001-fix-the-gcc-version-check.patch
new file mode 100644
index 0000000000..beea56d2ae
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/0001-fix-the-gcc-version-check.patch
@@ -0,0 +1,160 @@
1From 15c6ef6a827d3681ad06e862d27ab3dfb84cb687 Mon Sep 17 00:00:00 2001
2From: Roy Li <rongqing.li@windriver.com>
3Date: Wed, 27 May 2015 14:30:28 +0800
4Subject: [PATCH] fix the gcc version check
5
6Upstream-Status: pending
7
8"GCC diagnostic push" is gcc 4.6 feature, gcc 4.4.7 on centos did not know it
9
10Signed-off-by: Roy Li <rongqing.li@windriver.com>
11---
12 apt-pkg/cacheset.h | 4 ++--
13 apt-pkg/deb/debsrcrecords.cc | 12 ++++++------
14 apt-pkg/srcrecords.cc | 4 ++--
15 apt-pkg/srcrecords.h | 4 ++--
16 apt-pkg/vendorlist.cc | 4 ++--
17 5 files changed, 14 insertions(+), 14 deletions(-)
18
19diff --git a/apt-pkg/cacheset.h b/apt-pkg/cacheset.h
20index b7229bc..8cc2917 100644
21--- a/apt-pkg/cacheset.h
22+++ b/apt-pkg/cacheset.h
23@@ -119,12 +119,12 @@ public:
24 inline std::string FullName(bool const Pretty) const { return getPkg().FullName(Pretty); }
25 inline std::string FullName() const { return getPkg().FullName(); }
26 APT_DEPRECATED inline const char *Section() const {
27-#if __GNUC__ >= 4
28+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
29 #pragma GCC diagnostic push
30 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
31 #endif
32 return getPkg().Section();
33-#if __GNUC__ >= 4
34+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
35 #pragma GCC diagnostic pop
36 #endif
37 }
38diff --git a/apt-pkg/deb/debsrcrecords.cc b/apt-pkg/deb/debsrcrecords.cc
39index 49a348d..4bc9dcf 100644
40--- a/apt-pkg/deb/debsrcrecords.cc
41+++ b/apt-pkg/deb/debsrcrecords.cc
42@@ -126,13 +126,13 @@ bool debSrcRecordParser::Files(std::vector<pkgSrcRecords::File> &F)
43 for (std::vector<pkgSrcRecords::File2>::const_iterator f2 = F2.begin(); f2 != F2.end(); ++f2)
44 {
45 pkgSrcRecords::File2 f;
46-#if __GNUC__ >= 4
47+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
48 #pragma GCC diagnostic push
49 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
50 #endif
51 f.MD5Hash = f2->MD5Hash;
52 f.Size = f2->Size;
53-#if __GNUC__ >= 4
54+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
55 #pragma GCC diagnostic pop
56 #endif
57 f.Path = f2->Path;
58@@ -190,14 +190,14 @@ bool debSrcRecordParser::Files2(std::vector<pkgSrcRecords::File2> &List)
59 // we have it already, store the new hash and be done
60 if (file != List.end())
61 {
62-#if __GNUC__ >= 4
63+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
64 // set for compatibility only, so warn users not us
65 #pragma GCC diagnostic push
66 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
67 #endif
68 if (checksumField == "Files")
69 file->MD5Hash = hash;
70-#if __GNUC__ >= 4
71+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
72 #pragma GCC diagnostic pop
73 #endif
74 // an error here indicates that we have two different hashes for the same file
75@@ -212,7 +212,7 @@ bool debSrcRecordParser::Files2(std::vector<pkgSrcRecords::File2> &List)
76 F.FileSize = strtoull(size.c_str(), NULL, 10);
77 F.Hashes.push_back(hashString);
78
79-#if __GNUC__ >= 4
80+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
81 // set for compatibility only, so warn users not us
82 #pragma GCC diagnostic push
83 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
84@@ -220,7 +220,7 @@ bool debSrcRecordParser::Files2(std::vector<pkgSrcRecords::File2> &List)
85 F.Size = F.FileSize;
86 if (checksumField == "Files")
87 F.MD5Hash = hash;
88-#if __GNUC__ >= 4
89+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
90 #pragma GCC diagnostic pop
91 #endif
92
93diff --git a/apt-pkg/srcrecords.cc b/apt-pkg/srcrecords.cc
94index 3175ee7..340e796 100644
95--- a/apt-pkg/srcrecords.cc
96+++ b/apt-pkg/srcrecords.cc
97@@ -160,7 +160,7 @@ bool pkgSrcRecords::Parser::Files2(std::vector<pkgSrcRecords::File2> &F2)/*{{{*/
98 for (std::vector<pkgSrcRecords::File>::const_iterator f = F.begin(); f != F.end(); ++f)
99 {
100 pkgSrcRecords::File2 f2;
101-#if __GNUC__ >= 4
102+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
103 #pragma GCC diagnostic push
104 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
105 #endif
106@@ -168,7 +168,7 @@ bool pkgSrcRecords::Parser::Files2(std::vector<pkgSrcRecords::File2> &F2)/*{{{*/
107 f2.Size = f->Size;
108 f2.Hashes.push_back(HashString("MD5Sum", f->MD5Hash));
109 f2.FileSize = f->Size;
110-#if __GNUC__ >= 4
111+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
112 #pragma GCC diagnostic pop
113 #endif
114 f2.Path = f->Path;
115diff --git a/apt-pkg/srcrecords.h b/apt-pkg/srcrecords.h
116index dde22bd..91f8061 100644
117--- a/apt-pkg/srcrecords.h
118+++ b/apt-pkg/srcrecords.h
119@@ -30,7 +30,7 @@ class pkgSrcRecords
120 {
121 public:
122
123-#if __GNUC__ >= 4
124+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
125 // ensure that con- & de-structor don't trigger this warning
126 #pragma GCC diagnostic push
127 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
128@@ -48,7 +48,7 @@ class pkgSrcRecords
129 unsigned long long FileSize;
130 HashStringList Hashes;
131 };
132-#if __GNUC__ >= 4
133+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
134 #pragma GCC diagnostic pop
135 #endif
136
137diff --git a/apt-pkg/vendorlist.cc b/apt-pkg/vendorlist.cc
138index fb33ff1..ba1d3c3 100644
139--- a/apt-pkg/vendorlist.cc
140+++ b/apt-pkg/vendorlist.cc
141@@ -11,7 +11,7 @@
142
143 #include <apti18n.h>
144
145-#if __GNUC__ >= 4
146+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
147 #pragma GCC diagnostic push
148 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
149 #endif
150@@ -163,6 +163,6 @@ const Vendor* pkgVendorList::FindVendor(const std::vector<string> GPGVOutput) /*
151 }
152 /*}}}*/
153
154-#if __GNUC__ >= 4
155+#if __GNUC__ >= 4 + (6 >= __GNUC_MINOR__)
156 #pragma GCC diagnostic pop
157 #endif
158--
1591.9.1
160
diff --git a/meta/recipes-devtools/apt/apt/0001-remove-Wsuggest-attribute-from-CFLAGS.patch b/meta/recipes-devtools/apt/apt/0001-remove-Wsuggest-attribute-from-CFLAGS.patch
new file mode 100644
index 0000000000..7c42ff07b8
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/0001-remove-Wsuggest-attribute-from-CFLAGS.patch
@@ -0,0 +1,43 @@
1From 2bff7ee06a4f96e7d326991d61fb86f8aa651d48 Mon Sep 17 00:00:00 2001
2From: Roy Li <rongqing.li@windriver.com>
3Date: Wed, 27 May 2015 09:48:45 +0800
4Subject: [PATCH] remove Wsuggest-attribute from CXXFLAGS
5
6Upstream-Status: Inappropriate
7
8Wsuggest-attribute is GCC 4.6 feature, centos6 is using GCC
94.4.7 which unknown this flag, so remove it from CXXFLAGS
10
11Signed-off-by: Roy Li <rongqing.li@windriver.com>
12---
13 buildlib/environment.mak.in | 1 -
14 test/libapt/makefile | 1 -
15 2 files changed, 2 deletions(-)
16
17diff --git a/buildlib/environment.mak.in b/buildlib/environment.mak.in
18index b0a8d9d..91ed011 100644
19--- a/buildlib/environment.mak.in
20+++ b/buildlib/environment.mak.in
21@@ -11,7 +11,6 @@ CPPFLAGS+= @CPPFLAGS@ @DEFS@ -D_REENTRANT -D_FORTIFY_SOURCE=2
22 CXX = @CXX@
23 CXXFLAGS+= @CXXFLAGS@ -Wall -Wextra
24 CXXFLAGS+= -Wcast-align -Wlogical-op -Wredundant-decls -Wmissing-declarations -Wunsafe-loop-optimizations
25-CXXFLAGS+= -Wsuggest-attribute=pure -Wsuggest-attribute=const -Wsuggest-attribute=noreturn
26 # a bit too pedantic to be run by default
27 #CXXFLAGS+= -Wpedantic -Wno-long-long -Wno-vla -Wno-variadic-macros
28 NUM_PROCS = @NUM_PROCS@
29diff --git a/test/libapt/makefile b/test/libapt/makefile
30index 7f23ace..e805f13 100644
31--- a/test/libapt/makefile
32+++ b/test/libapt/makefile
33@@ -39,7 +39,6 @@ CXXFLAGS += -pthread
34 # disable some flags for gtest again
35 CXXFLAGS+= -Wno-missing-declarations
36 CXXFLAGS+= -Wno-missing-field-initializers
37-CXXFLAGS+= -Wno-suggest-attribute=pure -Wno-suggest-attribute=const -Wno-suggest-attribute=noreturn
38
39 # All Google Test headers. Usually you shouldn't change this definition.
40 GTEST_HEADERS = /usr/include/gtest/*.h \
41--
421.9.1
43
diff --git a/meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch b/meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch
new file mode 100644
index 0000000000..7c2f64e3e6
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch
@@ -0,0 +1,18 @@
1Disable configure at compilation stage
2
3Upstream-Status: Inappropriate [configuration]
4Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
5
6Index: apt-0.9.7.7/Makefile
7===================================================================
8--- apt-0.9.7.7.orig/Makefile
9+++ apt-0.9.7.7/Makefile
10@@ -33,7 +33,7 @@ veryclean: clean
11 # The startup target builds the necessary configure scripts. It should
12 # be used after a CVS checkout.
13 CONVERTED=environment.mak include/config.h include/apti18n.h build/doc/Doxyfile makefile
14-include buildlib/configure.mak
15+#include buildlib/configure.mak
16 $(BUILDDIR)/include/config.h: buildlib/config.h.in
17 $(BUILDDIR)/include/apti18n.h: buildlib/apti18n.h.in
18 $(BUILDDIR)/environment.mak: buildlib/environment.mak.in
diff --git a/meta/recipes-devtools/apt/apt/disable-test.patch b/meta/recipes-devtools/apt/apt/disable-test.patch
new file mode 100644
index 0000000000..676795dc8a
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/disable-test.patch
@@ -0,0 +1,58 @@
1[PATCH] disable test
2
3Upstream-Status: Inappropriate [configuration]
4
5test needs gtest package, so not build the test dir
6
7Signed-off-by: Roy Li <rongqing.li@windriver.com>
8---
9 Makefile | 7 +++----
10 configure.ac | 6 ------
11 2 files changed, 3 insertions(+), 10 deletions(-)
12
13diff --git a/Makefile b/Makefile
14index 5f5fb27..5070e96 100644
15--- a/Makefile
16+++ b/Makefile
17@@ -9,8 +9,8 @@ endif
18 .PHONY: default
19 default: startup all
20
21-.PHONY: headers library clean veryclean all binary program doc test update-po
22-all headers library clean veryclean binary program doc manpages docbook test update-po startup dirs:
23+.PHONY: headers library clean veryclean all binary program doc update-po
24+all headers library clean veryclean binary program doc manpages docbook update-po startup dirs:
25 $(MAKE) -C vendor $@
26 $(MAKE) -C apt-pkg $@
27 $(MAKE) -C apt-inst $@
28@@ -21,9 +21,8 @@ all headers library clean veryclean binary program doc manpages docbook test upd
29 $(MAKE) -C dselect $@
30 # $(MAKE) -C doc $@
31 $(MAKE) -C po $@
32- $(MAKE) -C test $@
33
34-all headers library clean veryclean binary program doc manpages docbook test update-po: startup dirs
35+all headers library clean veryclean binary program doc manpages docbook update-po: startup dirs
36
37 dirs: startup
38
39diff --git a/configure.ac b/configure.ac
40index 5663aaf..b0f9564 100644
41--- a/configure.ac
42+++ b/configure.ac
43@@ -89,12 +89,6 @@ AC_CHECK_LIB(curl, curl_easy_init,
44 AC_MSG_ERROR([failed: I need CURL due https support]),
45 )
46
47-AC_LANG_PUSH([C++])
48-AC_CHECK_HEADER(gtest/gtest.h,,
49- AC_MSG_ERROR([failed: I need gtest to build tests]),
50-)
51-AC_LANG_POP([C++])
52-
53
54 AC_SUBST(BDBLIB)
55
56--
571.9.1
58
diff --git a/meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch b/meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch
new file mode 100644
index 0000000000..801ae6dddb
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch
@@ -0,0 +1,12 @@
1Upstream-Status: Pending
2
3--- a/apt-pkg/contrib/weakptr.h
4+++ b/apt-pkg/contrib/weakptr.h
5@@ -21,6 +21,7 @@
6 #ifndef WEAK_POINTER_H
7 #define WEAK_POINTER_H
8
9+#include <cstdlib>
10 #include <set>
11 /**
12 * Class for objects providing support for weak pointers.
diff --git a/meta/recipes-devtools/apt/apt/makerace.patch b/meta/recipes-devtools/apt/apt/makerace.patch
new file mode 100644
index 0000000000..46e3161b67
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/makerace.patch
@@ -0,0 +1,23 @@
1I was seeing various issues with parallel make, mainly due to to what was likely
2partially installed headers. If you change into the source directory and
3"NOISY=1 make ../obj/apt-pkg/sourcelist.opic" in apt-pkg, you'll see it
4doesn't have any dependencies on the headers being installed. This patch
5fixes that so things build correctly.
6
7RP 2012/3/19
8
9Upstream-Status: Pending
10
11Index: apt-0.9.9.4/buildlib/library.mak
12===================================================================
13--- apt-0.9.9.4.orig/buildlib/library.mak 2013-07-31 15:45:07.320440575 +0300
14+++ apt-0.9.9.4/buildlib/library.mak 2013-07-31 15:46:49.440440561 +0300
15@@ -61,7 +61,7 @@
16
17 # Compilation rules
18 vpath %.cc $(SUBDIRS)
19-$(OBJ)/%.opic: %.cc $(LIBRARYDEPENDS)
20+$(OBJ)/%.opic: %.cc $(LIBRARYDEPENDS) $($(LOCAL)-HEADERS)
21 echo Compiling $< to $@
22 $(CXX) -c $(INLINEDEPFLAG) $(CPPFLAGS) $(CXXFLAGS) $(PICFLAGS) -o $@ $<
23 $(DoDep)
diff --git a/meta/recipes-devtools/apt/apt/no-nls-dpkg.patch b/meta/recipes-devtools/apt/apt/no-nls-dpkg.patch
new file mode 100644
index 0000000000..a0996d4d44
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/no-nls-dpkg.patch
@@ -0,0 +1,26 @@
1Upstream-Status: Pending
2
3--- a/apt-pkg/deb/dpkgpm.cc
4+++ b/apt-pkg/deb/dpkgpm.cc
5@@ -42,6 +42,12 @@
6 #include <apti18n.h>
7 /*}}}*/
8
9+#ifdef USE_NLS
10+#define _dpkg(x) dgettext("dpkg", x)
11+#else
12+#define _dpkg(x) x
13+#endif
14+
15 using namespace std;
16
17 namespace
18@@ -1279,7 +1285,7 @@ void pkgDPkgPM::WriteApportReport(const
19 }
20
21 // check if its not a follow up error
22- const char *needle = dgettext("dpkg", "dependency problems - leaving unconfigured");
23+ const char *needle = _dpkg("dependency problems - leaving unconfigured");
24 if(strstr(errormsg, needle) != NULL) {
25 std::clog << _("No apport report written because the error message indicates its a followup error from a previous failure.") << std::endl;
26 return;
diff --git a/meta/recipes-devtools/apt/apt/noconfigure.patch b/meta/recipes-devtools/apt/apt/noconfigure.patch
new file mode 100644
index 0000000000..ebc67203b4
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/noconfigure.patch
@@ -0,0 +1,37 @@
1Upstream-Status: Inappropriate [configuration]
2Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
3
4
5diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc
6index 249542c..0a1911f 100644
7--- a/apt-pkg/packagemanager.cc
8+++ b/apt-pkg/packagemanager.cc
9@@ -952,10 +952,12 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg, bool const Immediate, int c
10 return false;
11
12 if (Immediate == true) {
13+#if 0
14 // Perform immedate configuration of the package.
15 if (SmartConfigure(Pkg, Depth + 1) == false)
16 _error->Error(_("Could not perform immediate configuration on '%s'. "
17 "Please see man 5 apt.conf under APT::Immediate-Configure for details. (%d)"),Pkg.FullName().c_str(),2);
18+#endif
19 }
20
21 return true;
22@@ -1038,6 +1040,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall()
23 }
24 }
25
26+#if 0
27 // Final run through the configure phase
28 if (ConfigureAll() == false)
29 return Failed;
30@@ -1052,6 +1055,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall()
31 return Failed;
32 }
33 }
34+#endif
35
36 return Completed;
37 }
diff --git a/meta/recipes-devtools/apt/apt/nodoc.patch b/meta/recipes-devtools/apt/apt/nodoc.patch
new file mode 100644
index 0000000000..449e42df4a
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/nodoc.patch
@@ -0,0 +1,18 @@
1Disable documentation
2
3Upstream-Status: Inappropriate [configuration]
4Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
5
6Index: apt-0.9.7.7/Makefile
7===================================================================
8--- apt-0.9.7.7.orig/Makefile
9+++ apt-0.9.7.7/Makefile
10@@ -17,7 +17,7 @@ all headers library clean veryclean bina
11 $(MAKE) -C cmdline $@
12 $(MAKE) -C ftparchive $@
13 $(MAKE) -C dselect $@
14- $(MAKE) -C doc $@
15+# $(MAKE) -C doc $@
16 $(MAKE) -C po $@
17 $(MAKE) -C test $@
18
diff --git a/meta/recipes-devtools/apt/apt/truncate-filename.patch b/meta/recipes-devtools/apt/apt/truncate-filename.patch
new file mode 100644
index 0000000000..db1c42b66c
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/truncate-filename.patch
@@ -0,0 +1,35 @@
1strutl.cc: the filename can't be longer than 255
2
3The URItoFileName translates the path into the filename, but the
4filename can't be longer than 255 according to
5/usr/include/linux/limits.h.
6
7Truncate it when it is longer than 240 (leave some spaces for
8".Packages" and "._Release" suffix)
9
10Upstream-Status: Pending
11Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
12---
13 apt-pkg/contrib/strutl.cc | 7 ++++++-
14 1 file changed, 6 insertions(+), 1 deletion(-)
15
16diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc
17--- a/apt-pkg/contrib/strutl.cc
18+++ b/apt-pkg/contrib/strutl.cc
19@@ -399,7 +399,12 @@ string URItoFileName(const string &URI)
20 // "\x00-\x20{}|\\\\^\\[\\]<>\"\x7F-\xFF";
21 string NewURI = QuoteString(U,"\\|{}[]<>\"^~_=!@#$%^&*");
22 replace(NewURI.begin(),NewURI.end(),'/','_');
23- return NewURI;
24+
25+ // Truncate from the head when it is longer than 240
26+ if(NewURI.length() > 240)
27+ return NewURI.substr(NewURI.length() - 240, NewURI.length() - 1);
28+ else
29+ return NewURI;
30 }
31 /*}}}*/
32 // Base64Encode - Base64 Encoding routine for short strings /*{{{*/
33--
341.7.10.4
35
diff --git a/meta/recipes-devtools/apt/apt/use-host.patch b/meta/recipes-devtools/apt/apt/use-host.patch
new file mode 100644
index 0000000000..b30fcff0d6
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/use-host.patch
@@ -0,0 +1,15 @@
1Upstream-Status: Pending
2
3Index: apt-0.9.7.7/configure.ac
4===================================================================
5--- apt-0.9.7.7.orig/configure.ac
6+++ apt-0.9.7.7/configure.ac
7@@ -112,7 +112,7 @@ dnl This is often the dpkg architecture
8 dnl First check against the full canonical canoncial-system-type in $target
9 dnl and if that fails, just look for the cpu
10 AC_MSG_CHECKING(debian architecture)
11-archset="`dpkg-architecture -qDEB_HOST_ARCH`"
12+archset="`echo $host_alias|cut -d'-' -f1`"
13 if test "x$archset" = "x"; then
14 AC_MSG_ERROR([failed: use --host= or output from dpkg-architecture])
15 fi