瀏覽代碼

guard ABI changes for LFS in apt-inst

Git-Dch: Ignore
David Kalnischkies 11 年之前
父節點
當前提交
60b64ffc34
共有 6 個文件被更改,包括 49 次插入4 次删除
  1. 5 0
      apt-inst/contrib/arfile.h
  2. 5 0
      apt-inst/contrib/extracttar.cc
  3. 10 1
      apt-inst/contrib/extracttar.h
  4. 8 0
      apt-inst/deb/debfile.cc
  5. 10 2
      apt-inst/deb/debfile.h
  6. 11 1
      apt-inst/dirstream.h

+ 5 - 0
apt-inst/contrib/arfile.h

@@ -17,6 +17,7 @@
 
 
 #include <string>
+#include <apt-pkg/macros.h>
 #ifndef APT_8_CLEANER_HEADERS
 #include <apt-pkg/fileutl.h>
 #endif
@@ -61,7 +62,11 @@ struct ARArchive::Member
    unsigned long long Size;
    
    // Location of the data.
+#if APT_PKG_ABI >= 413
    unsigned long long Start;
+#else
+   unsigned long Start;
+#endif
    Member *Next;
    
    Member() : Start(0), Next(0) {};

+ 5 - 0
apt-inst/contrib/extracttar.cc

@@ -60,8 +60,13 @@ struct ExtractTar::TarHeader
 // ExtractTar::ExtractTar - Constructor					/*{{{*/
 // ---------------------------------------------------------------------
 /* */
+#if APT_PKG_ABI >= 413
 ExtractTar::ExtractTar(FileFd &Fd,unsigned long long Max,string DecompressionProgram)
 	: File(Fd), MaxInSize(Max), DecompressProg(DecompressionProgram)
+#else
+ExtractTar::ExtractTar(FileFd &Fd,unsigned long Max,string DecompressionProgram)
+	: File(Fd), MaxInSize(Max), DecompressProg(DecompressionProgram)
+#endif
 {
    GZPid = -1;
    Eof = false;

+ 10 - 1
apt-inst/contrib/extracttar.h

@@ -15,6 +15,7 @@
 #define PKGLIB_EXTRACTTAR_H
 
 #include <apt-pkg/fileutl.h>
+#include <apt-pkg/macros.h>
 
 #include <string>
 
@@ -39,7 +40,11 @@ class ExtractTar
                   GNU_LongLink = 'K',GNU_LongName = 'L'};
 
    FileFd &File;
+#if APT_PKG_ABI >= 413
    unsigned long long MaxInSize;
+#else
+   unsigned long MaxInSize;
+#endif
    int GZPid;
    FileFd InFd;
    bool Eof;
@@ -52,8 +57,12 @@ class ExtractTar
    public:
 
    bool Go(pkgDirStream &Stream);
-   
+
+#if APT_PKG_ABI >= 413
    ExtractTar(FileFd &Fd,unsigned long long Max,std::string DecompressionProgram);
+#else
+   ExtractTar(FileFd &Fd,unsigned long Max,std::string DecompressionProgram);
+#endif
    virtual ~ExtractTar();
 };
 

+ 8 - 0
apt-inst/deb/debfile.cc

@@ -203,7 +203,11 @@ bool debDebFile::MemControlExtract::DoItem(Item &Itm,int &Fd)
 /* Just memcopy the block from the tar extractor and put it in the right
    place in the pre-allocated memory block. */
 bool debDebFile::MemControlExtract::Process(Item &/*Itm*/,const unsigned char *Data,
+#if APT_PKG_ABI >= 413
 			     unsigned long long Size,unsigned long long Pos)
+#else
+			     unsigned long Size,unsigned long Pos)
+#endif
 {
    memcpy(Control + Pos, Data,Size);
    return true;
@@ -232,7 +236,11 @@ bool debDebFile::MemControlExtract::Read(debDebFile &Deb)
 // ---------------------------------------------------------------------
 /* The given memory block is loaded into the parser and parsed as a control
    record. */
+#if APT_PKG_ABI >= 413
 bool debDebFile::MemControlExtract::TakeControl(const void *Data,unsigned long long Size)
+#else
+bool debDebFile::MemControlExtract::TakeControl(const void *Data,unsigned long Size)
+#endif
 {
    delete [] Control;
    Control = new char[Size+2];

+ 10 - 2
apt-inst/deb/debfile.h

@@ -27,6 +27,7 @@
 #include <apt-pkg/arfile.h>
 #include <apt-pkg/dirstream.h>
 #include <apt-pkg/tagfile.h>
+#include <apt-pkg/macros.h>
 
 #include <string>
 
@@ -81,13 +82,20 @@ class debDebFile::MemControlExtract : public pkgDirStream
    // Members from DirStream
    virtual bool DoItem(Item &Itm,int &Fd);
    virtual bool Process(Item &Itm,const unsigned char *Data,
+#if APT_PKG_ABI >= 413
 			unsigned long long Size,unsigned long long Pos);
-   
+#else
+			unsigned long Size,unsigned long Pos);
+#endif
 
    // Helpers
    bool Read(debDebFile &Deb);
+#if APT_PKG_ABI >= 413
    bool TakeControl(const void *Data,unsigned long long Size);
-      
+#else
+   bool TakeControl(const void *Data,unsigned long Size);
+#endif
+
    MemControlExtract() : IsControl(false), Control(0), Length(0), Member("control") {};
    MemControlExtract(std::string Member) : IsControl(false), Control(0), Length(0), Member(Member) {};
    ~MemControlExtract() {delete [] Control;};   

+ 11 - 1
apt-inst/dirstream.h

@@ -25,6 +25,7 @@
 #ifndef PKGLIB_DIRSTREAM_H
 #define PKGLIB_DIRSTREAM_H
 
+#include <apt-pkg/macros.h>
 
 class pkgDirStream
 { 
@@ -37,10 +38,15 @@ class pkgDirStream
 	           Directory, FIFO} Type;
       char *Name;
       char *LinkTarget;
+#if APT_PKG_ABI >= 413
       unsigned long long Size;
+#endif
       unsigned long Mode;
       unsigned long UID;
       unsigned long GID;
+#if APT_PKG_ABI < 413
+      unsigned long Size;
+#endif
       unsigned long MTime;
       unsigned long Major;
       unsigned long Minor;
@@ -49,9 +55,13 @@ class pkgDirStream
    virtual bool DoItem(Item &Itm,int &Fd);
    virtual bool Fail(Item &Itm,int Fd);
    virtual bool FinishedFile(Item &Itm,int Fd);
+#if APT_PKG_ABI >= 413
    virtual bool Process(Item &/*Itm*/,const unsigned char * /*Data*/,
 			unsigned long long /*Size*/,unsigned long long /*Pos*/) {return true;};
-      
+#else
+   virtual bool Process(Item &/*Itm*/,const unsigned char * /*Data*/,
+			unsigned long /*Size*/,unsigned long /*Pos*/) {return true;};
+#endif
    virtual ~pkgDirStream() {};   
 };