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

arch-only patch for apt-get build-dep



FYI I committed the following patch to apt cvs to add an --arch-only option for
'apt-get build-dep'

there's a small change to one of the virtual functions in the srcrecord
class. i've bumped the so number as well for this.

randolph
-- 
Debian Developer <tausq@debian.org>
http://www.TauSq.org/


? apt.diff
Index: apt-pkg/init.h
===================================================================
RCS file: /cvs/deity/apt/apt-pkg/init.h,v
retrieving revision 1.8
diff -u -r1.8 init.h
--- apt-pkg/init.h	2001/04/22 05:42:52	1.8
+++ apt-pkg/init.h	2001/11/04 17:08:01
@@ -18,7 +18,7 @@
 
 // See the makefile
 #define APT_PKG_MAJOR 3
-#define APT_PKG_MINOR 2
+#define APT_PKG_MINOR 3
 #define APT_PKG_RELEASE 0
     
 extern const char *pkgVersion;
Index: apt-pkg/makefile
===================================================================
RCS file: /cvs/deity/apt/apt-pkg/makefile,v
retrieving revision 1.34
diff -u -r1.34 makefile
--- apt-pkg/makefile	2001/04/22 05:42:52	1.34
+++ apt-pkg/makefile	2001/11/04 17:08:01
@@ -12,7 +12,7 @@
 # The library name, don't forget to update init.h
 LIBRARY=apt-pkg
 LIBEXT=$(GLIBC_VER)$(LIBSTDCPP_VER)
-MAJOR=3.2
+MAJOR=3.3
 MINOR=0
 SLIBS=$(PTHREADLIB)
 
Index: apt-pkg/srcrecords.h
===================================================================
RCS file: /cvs/deity/apt/apt-pkg/srcrecords.h,v
retrieving revision 1.7
diff -u -r1.7 srcrecords.h
--- apt-pkg/srcrecords.h	2001/05/07 04:24:08	1.7
+++ apt-pkg/srcrecords.h	2001/11/04 17:08:01
@@ -72,7 +72,7 @@
       virtual string Section() const = 0;
       virtual const char **Binaries() = 0;   // Ownership does not transfer
 
-      virtual bool BuildDepends(vector<BuildDepRec> &BuildDeps) = 0;
+      virtual bool BuildDepends(vector<BuildDepRec> &BuildDeps, bool ArchOnly) = 0;
       static const char *BuildDepType(unsigned char Type);
 
       virtual bool Files(vector<pkgSrcRecords::File> &F) = 0;
Index: apt-pkg/deb/debsrcrecords.cc
===================================================================
RCS file: /cvs/deity/apt/apt-pkg/deb/debsrcrecords.cc,v
retrieving revision 1.4
diff -u -r1.4 debsrcrecords.cc
--- apt-pkg/deb/debsrcrecords.cc	2001/02/20 07:03:17	1.4
+++ apt-pkg/deb/debsrcrecords.cc	2001/11/04 17:08:01
@@ -47,7 +47,7 @@
    package/version records representing the build dependency. The returned 
    array need not be freed and will be reused by the next call to this 
    function */
-bool debSrcRecordParser::BuildDepends(vector<pkgSrcRecords::Parser::BuildDepRec> &BuildDeps)
+bool debSrcRecordParser::BuildDepends(vector<pkgSrcRecords::Parser::BuildDepRec> &BuildDeps, bool ArchOnly)
 {
    unsigned int I;
    const char *Start, *Stop;
@@ -61,6 +61,9 @@
 
    for (I = 0; I < 4; I++) 
    {
+      if (ArchOnly && (I == 1 || I == 3))
+         continue;
+
       if (Sect.Find(fields[I], Start, Stop) == false)
          continue;
       
Index: apt-pkg/deb/debsrcrecords.h
===================================================================
RCS file: /cvs/deity/apt/apt-pkg/deb/debsrcrecords.h,v
retrieving revision 1.6
diff -u -r1.6 debsrcrecords.h
--- apt-pkg/deb/debsrcrecords.h	2001/02/20 07:03:17	1.6
+++ apt-pkg/deb/debsrcrecords.h	2001/11/04 17:08:02
@@ -39,7 +39,7 @@
    virtual string Maintainer() const {return Sect.FindS("Maintainer");};
    virtual string Section() const {return Sect.FindS("Section");};
    virtual const char **Binaries();
-   virtual bool BuildDepends(vector<BuildDepRec> &BuildDeps);
+   virtual bool BuildDepends(vector<BuildDepRec> &BuildDeps, bool ArchOnly);
    virtual unsigned long Offset() {return iOffset;};
    virtual string AsStr() 
    {
Index: cmdline/apt-get.cc
===================================================================
RCS file: /cvs/deity/apt/cmdline/apt-get.cc,v
retrieving revision 1.110
diff -u -r1.110 apt-get.cc
--- cmdline/apt-get.cc	2001/10/02 03:16:28	1.110
+++ cmdline/apt-get.cc	2001/11/04 17:08:02
@@ -1860,7 +1860,7 @@
             
       // Process the build-dependencies
       vector<pkgSrcRecords::Parser::BuildDepRec> BuildDeps;
-      if (Last->BuildDepends(BuildDeps) == false)
+      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());
    
       if (BuildDeps.size() == 0)
@@ -2119,6 +2119,7 @@
       {0,"trivial-only","APT::Get::Trivial-Only",0},
       {0,"remove","APT::Get::Remove",0},
       {0,"only-source","APT::Get::Only-Source",0},
+      {0,"arch-only","APT::Get::Arch-Only",0},
       {'c',"config-file",0,CommandLine::ConfigFile},
       {'o',"option",0,CommandLine::ArbItem},
       {0,0,0,0}};
Index: doc/apt-get.8.sgml
===================================================================
RCS file: /cvs/deity/apt/doc/apt-get.8.sgml,v
retrieving revision 1.7
diff -u -r1.7 apt-get.8.sgml
--- doc/apt-get.8.sgml	2001/07/08 04:29:40	1.7
+++ doc/apt-get.8.sgml	2001/11/04 17:08:02
@@ -397,6 +397,12 @@
      <literal/APT::Get::Tar-Only/
      </VarListEntry>
      
+     <VarListEntry><term><option/--arch-only/</>
+     <ListItem><Para>
+     Only process architecture-dependent build-dependencies.
+     Configuration Item: <literal/APT::Get::Arch-Only/ 
+     </VarListEntry>
+     
      &apt-commonoptions;
      
    </VariableList>



Reply to: