]> git.saurik.com Git - apt.git/blobdiff - apt-inst/contrib/arfile.h
guard ABI changes for LFS in apt-inst
[apt.git] / apt-inst / contrib / arfile.h
index 96e18bc60aba7f2c32f52eec5ff54fb79fe4adf5..f53356847f80156c055c9628602135e9ac5d27aa 100644 (file)
 
 
 #include <string>
+#include <apt-pkg/macros.h>
+#ifndef APT_8_CLEANER_HEADERS
 #include <apt-pkg/fileutl.h>
+#endif
+
+class FileFd;
 
 class ARArchive
 {
@@ -39,6 +44,7 @@ class ARArchive
 
    // Locate a member by name
    const Member *FindMember(const char *Name) const;
+   inline Member *Members() { return List; }
    
    ARArchive(FileFd &File);
    ~ARArchive();
@@ -48,15 +54,19 @@ class ARArchive
 struct ARArchive::Member
 {
    // Fields from the header
-   string Name;
+   std::string Name;
    unsigned long MTime;
    unsigned long UID;
    unsigned long GID;
    unsigned long Mode;
-   unsigned long Size;
+   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) {};