[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#720597: "apt-get --purge build-dep" broken in 0.9.11



Control: severity -1 important
Control: tag -1 patch

On Fri, Aug 23, 2013 at 07:03:01PM +0200, Andreas Metzler wrote:
> -----------
> (SID)root@argenau:/var/cache/apt/archives#
> DEBIAN_FRONTEND=noninteractive eatmydata apt-get  --purge build-dep gnutls28
> E: Command line option --purge is not understood
> -----------
> 
> This worked in versions up to and including 0.9.10

This breaks cross-building with sbuild.  Please fix it ASAP.  Here's a
patch complete with integration test:

diff --git a/apt-private/private-cmndline.cc b/apt-private/private-cmndline.cc
index 8ba6629..b6f257b 100644
--- a/apt-private/private-cmndline.cc
+++ b/apt-private/private-cmndline.cc
@@ -149,6 +149,7 @@ bool addArgumentsAPTGet(std::vector<CommandLine::Args> &Args, char const * const
    else if (CmdMatches("build-dep"))
    {
       addArg('a', "host-architecture", "APT::Get::Host-Architecture", CommandLine::HasArg);
+      addArg(0, "purge", "APT::Get::Purge", 0);
       addArg(0, "solver", "APT::Solver", CommandLine::HasArg);
    }
    else if (CmdMatches("clean", "autoclean", "check", "download", "changelog") ||
diff --git a/test/integration/test-bug-720597-build-dep-purge b/test/integration/test-bug-720597-build-dep-purge
new file mode 100755
index 0000000..1e24ed5
--- /dev/null
+++ b/test/integration/test-bug-720597-build-dep-purge
@@ -0,0 +1,36 @@
+#!/bin/sh
+set -e
+
+TESTDIR=$(readlink -f $(dirname $0))
+. $TESTDIR/framework
+setupenvironment
+configarchitecture 'amd64'
+
+insertinstalledpackage 'build-essential' 'all' '11.5' 'Multi-Arch: foreign'
+insertinstalledpackage 'pkga' 'all' '1'
+buildsimplenativepackage 'pkgb' 'amd64' '1' 'stable' 'Conflicts: pkga'
+buildsimplenativepackage 'pkgc' 'amd64' '1' 'stable' 'Build-Depends: pkgb'
+
+setupaptarchive
+
+testequal 'Reading package lists...
+Building dependency tree...
+The following packages will be REMOVED:
+  pkga
+The following NEW packages will be installed:
+  pkgb
+0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
+Remv pkga [1]
+Inst pkgb (1 stable [amd64])
+Conf pkgb (1 stable [amd64])' aptget build-dep pkgc -s
+
+testequal 'Reading package lists...
+Building dependency tree...
+The following packages will be REMOVED:
+  pkga*
+The following NEW packages will be installed:
+  pkgb
+0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
+Purg pkga [1]
+Inst pkgb (1 stable [amd64])
+Conf pkgb (1 stable [amd64])' aptget build-dep pkgc -s --purge

Thanks,

-- 
Colin Watson                                       [cjwatson@ubuntu.com]


Reply to: