From 7d6f9f8ffb7ba9caf7cc25dc102c59616150f36e Mon Sep 17 00:00:00 2001 From: Arch Librarian Date: Mon, 20 Sep 2004 16:58:43 +0000 Subject: apt-pkg/init.cc Author: tausq Date: 2001-12-05 07:22:39 GMT apt-pkg/init.cc APT::Build-Essential default value cmdline/apt-get.cc Also install APT::Build-Essential packages when apt-get build-dep is invoked debian/changelog Updated changelog doc/examples/configure-index doc/apt.conf.5.sgml Document APT::Build-Essential --- apt-pkg/init.cc | 3 ++- cmdline/apt-get.cc | 18 +++++++++++++++++- debian/changelog | 13 +++++++++++++ doc/apt.conf.5.sgml | 5 +++++ doc/examples/configure-index | 4 +++- 5 files changed, 40 insertions(+), 3 deletions(-) diff --git a/apt-pkg/init.cc b/apt-pkg/init.cc index 930c45a87..3c702af9b 100644 --- a/apt-pkg/init.cc +++ b/apt-pkg/init.cc @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: init.cc,v 1.16 2001/03/13 06:51:46 jgg Exp $ +// $Id: init.cc,v 1.17 2001/12/05 07:22:39 tausq Exp $ /* ###################################################################### Init - Initialize the package library @@ -39,6 +39,7 @@ bool pkgInitConfig(Configuration &Cnf) Cnf.Set("APT::Architecture",COMMON_CPU); else Cnf.Set("APT::Architecture",COMMON_OS "-" COMMON_CPU); + Cnf.Set("APT::Build-Essential::", "build-essential"); Cnf.Set("Dir","/"); // State diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index 76945b805..a3dc92816 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: apt-get.cc,v 1.111 2001/11/04 17:09:18 tausq Exp $ +// $Id: apt-get.cc,v 1.112 2001/12/05 07:22:40 tausq Exp $ /* ###################################################################### apt-get - Cover for dpkg @@ -1863,6 +1863,22 @@ bool DoBuildDep(CommandLine &CmdL) if (Last->BuildDepends(BuildDeps, _config->FindB("APT::Get::Arch-Only",false)) == false) return _error->Error(_("Unable to get build-dependency information for %s"),Src.c_str()); + // Also ensure that build-essential packages are present + Configuration::Item const *Opts = _config->Tree("APT::Build-Essential"); + if (Opts) + Opts = Opts->Child; + for (; Opts; Opts = Opts->Next) + { + if (Opts->Value.empty() == true) + continue; + + pkgSrcRecords::Parser::BuildDepRec rec; + rec.Package = Opts->Value; + rec.Type = pkgSrcRecords::Parser::BuildDependIndep; + rec.Op = 0; + BuildDeps.insert(BuildDeps.begin(), rec); + } + if (BuildDeps.size() == 0) { ioprintf(c1out,_("%s has no build depends.\n"),Src.c_str()); diff --git a/debian/changelog b/debian/changelog index 9ba020978..4bb343562 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,16 @@ +apt (0.5.5) unstable; urgency=low + + * Fix handling of [!arch] for build-dependencies. Closes: #88798 + * Fix handling of build-deps on unknown packages. Closes: #88664 + * "apt-get --arch-only build-dep" to install only architecture- + dependent build dependencies. Bump minor shared lib number to reflect + small change in BuildDepend API. + * APT::Build-Essential configuration option (defaults to "build-essential") + so that "apt-get build-dep" will ensure build essential packages are + installed prior to installing other build-dependencies + + -- Randolph Chung Tue, 4 Dec 2001 23:26:42 -0800 + apt (0.5.4) unstable; urgency=low * M68k config.guess patch. Closes: #88913 diff --git a/doc/apt.conf.5.sgml b/doc/apt.conf.5.sgml index 8ed0485b2..9ff286aeb 100644 --- a/doc/apt.conf.5.sgml +++ b/doc/apt.conf.5.sgml @@ -126,6 +126,11 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";}; information. This sets the size of that cache. + Build-Essential + + Defines which package(s) are considered essential build dependencies. + + Get The Get subsection controls the &apt-get; tool, please see its diff --git a/doc/examples/configure-index b/doc/examples/configure-index index 78171c9ba..66bdb87ac 100644 --- a/doc/examples/configure-index +++ b/doc/examples/configure-index @@ -1,4 +1,4 @@ -// $Id: configure-index,v 1.3 2001/02/20 07:03:17 jgg Exp $ +// $Id: configure-index,v 1.4 2001/12/05 07:22:40 tausq Exp $ /* This file is an index of all APT configuration directives. It should NOT actually be used as a real config file, though it is a completely valid file. Most of the options have sane default values, unless @@ -21,10 +21,12 @@ APT { Architecture "i386"; + Build-Essential "build-essential"; // Options for apt-get Get { + Arch-Only "false"; Download-Only "false"; Simulate "false"; Assume-Yes "false"; -- cgit v1.2.3