]> git.saurik.com Git - apt.git/commitdiff
* Enable apt-ftparchive to generate Release files
authorArch Librarian <arch@canonical.com>
Mon, 20 Sep 2004 17:04:30 +0000 (17:04 +0000)
committerArch Librarian <arch@canonical.com>
Mon, 20 Sep 2004 17:04:30 +0000 (17:04 +0000)
Author: mdz
Date: 2003-12-26 20:08:56 GMT
* Enable apt-ftparchive to generate Release files

debian/changelog
ftparchive/apt-ftparchive.cc
ftparchive/writer.cc
ftparchive/writer.h
po/apt-all.pot

index 907af1b9a48da380cd5d935834f32e4982f12bbc..9c85e89e623e23de4dd89c45ff42535ca4380087 100644 (file)
@@ -1,3 +1,9 @@
+apt (0.5.17) unstable; urgency=low
+
+  * Enable apt-ftparchive to generate Release files
+
+ --
+
 apt (0.5.16) unstable; urgency=low
 
   * po/de.po update from Michael Karcher <karcher@physik.fu-berlin.de>
index 426ec56372408565df2940e171b8634e7d59f313..c811343b693685951b50589195f224e26ebe58bc 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: apt-ftparchive.cc,v 1.8 2003/07/18 15:28:58 mdz Exp $
+// $Id: apt-ftparchive.cc,v 1.9 2003/12/26 20:08:56 mdz Exp $
 /* ######################################################################
 
    apt-scanpackages - Efficient work-alike for dpkg-scanpackages
@@ -223,6 +223,7 @@ bool PackageMap::GenPackages(Configuration &Setup,struct CacheDB::Stats &Stats)
    
    return !_error->PendingError();
 }
+
                                                                        /*}}}*/
 // PackageMap::GenSources - Actually generate a Source file            /*{{{*/
 // ---------------------------------------------------------------------
@@ -671,6 +672,21 @@ bool SimpleGenSources(CommandLine &CmdL)
 
    return true;
 }
+                                                                       /*}}}*/
+// SimpleGenRelease - Generate a Release file for a directory tree     /*{{{*/
+// ---------------------------------------------------------------------
+bool SimpleGenRelease(CommandLine &CmdL)
+{
+   ReleaseWriter Release("");
+   if (_error->PendingError() == true)
+      return false;
+
+   if (Release.RecursiveScan(CmdL.FileList[1]) == false)
+      return false;
+
+   return true;
+}
+
                                                                        /*}}}*/
 // Generate - Full generate, using a config file                       /*{{{*/
 // ---------------------------------------------------------------------
@@ -887,6 +903,7 @@ int main(int argc, const char *argv[])
    CommandLine::Dispatch Cmds[] = {{"packages",&SimpleGenPackages},
                                    {"contents",&SimpleGenContents},
                                    {"sources",&SimpleGenSources},
+                                   {"release",&SimpleGenRelease},
                                    {"generate",&Generate},
                                    {"clean",&Clean},
                                   {"help",&ShowHelp},
index 94d88388abe9d6ed0257025d7d88eff3b41dcced..68fd85091270acd3a1038ab9d4011a6a3b2d2994 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: writer.cc,v 1.7 2003/02/10 07:34:41 doogie Exp $
+// $Id: writer.cc,v 1.8 2003/12/26 20:08:56 mdz Exp $
 /* ######################################################################
 
    Writer 
@@ -26,7 +26,9 @@
 
 #include <sys/types.h>
 #include <unistd.h>
+#include <ctime>
 #include <ftw.h>
+#include <fnmatch.h>
 #include <iostream>
     
 #include "cachedb.h"
@@ -58,8 +60,6 @@ FTWScanner::FTWScanner()
 {
    ErrorPrinted = false;
    NoLinkAct = !_config->FindB("APT::FTPArchive::DeLinkAct",true);
-   TmpExt = 0;
-   Ext[0] = 0;
    RealPath = 0;
    long PMax = pathconf(".",_PC_PATH_MAX);
    if (PMax > 0)
@@ -85,16 +85,19 @@ int FTWScanner::Scanner(const char *File,const struct stat *sb,int Flag)
    if (Flag != FTW_F)
       return 0;
 
-   // See if it is a .deb
-   if (strlen(File) < 4)
-      return 0;
-   
-   unsigned CurExt = 0;
-   for (; Owner->Ext[CurExt] != 0; CurExt++)
-      if (strcmp(File+strlen(File)-strlen(Owner->Ext[CurExt]),
-                Owner->Ext[CurExt]) == 0)
-        break;
-   if (Owner->Ext[CurExt] == 0)
+   const char *LastComponent = strrchr(File, '/');
+   if (LastComponent == NULL)
+      LastComponent = File;
+   else
+      LastComponent++;
+
+   vector<string>::iterator I;
+   for(I = Owner->Patterns.begin(); I != Owner->Patterns.end(); ++I)
+   {
+      if (fnmatch((*I).c_str(), LastComponent, 0) == 0)
+         break;
+   }
+   if (I == Owner->Patterns.end())
       return 0;
 
    /* Process it. If the file is a link then resolve it into an absolute
@@ -277,17 +280,6 @@ bool FTWScanner::Delink(string &FileName,const char *OriginalPath,
    return true;
 }
                                                                        /*}}}*/
-// FTWScanner::SetExts - Set extensions to support                     /*{{{*/
-// ---------------------------------------------------------------------
-/* */
-bool FTWScanner::SetExts(string Vals)
-{
-   delete [] TmpExt;
-   TmpExt = new char[Vals.length()+1];
-   strcpy(TmpExt,Vals.c_str());
-   return TokSplitString(' ',TmpExt,(char **)Ext,sizeof(Ext)/sizeof(Ext[0]));
-}
-                                                                       /*}}}*/
 
 // PackagesWriter::PackagesWriter - Constructor                                /*{{{*/
 // ---------------------------------------------------------------------
@@ -296,8 +288,7 @@ PackagesWriter::PackagesWriter(string DB,string Overrides,string ExtOverrides) :
                    Db(DB),Stats(Db.Stats)
 {
    Output = stdout;
-   Ext[0] = ".deb";
-   Ext[1] = 0;
+   AddPattern("*.deb");
    DeLinkLimit = 0;
    
    // Process the command line options
@@ -319,6 +310,28 @@ PackagesWriter::PackagesWriter(string DB,string Overrides,string ExtOverrides) :
 
    _error->DumpErrors();
 }
+                                                                        /*}}}*/
+// FTWScanner::SetExts - Set extensions to support                      /*{{{*/
+// ---------------------------------------------------------------------
+/* */
+bool FTWScanner::SetExts(string Vals)
+{
+   ClearPatterns();
+   string::size_type Start = 0;
+   for(string::size_type space = Vals.find(' ');
+       space != string::npos;
+       space = Vals.find(' ', space))
+   {
+      if (space > 0)
+      {
+         AddPattern(string("*") + string(Start, space-1));
+         Start = space + 1;
+      }
+   }
+
+   return true;
+}
+
                                                                        /*}}}*/
 // PackagesWriter::DoPackage - Process a single package                        /*{{{*/
 // ---------------------------------------------------------------------
@@ -449,8 +462,7 @@ SourcesWriter::SourcesWriter(string BOverrides,string SOverrides,
                             string ExtOverrides)
 {
    Output = stdout;
-   Ext[0] = ".dsc";
-   Ext[1] = 0;
+   AddPattern("*.dsc");
    DeLinkLimit = 0;
    Buffer = 0;
    BufSize = 0;
@@ -686,8 +698,7 @@ ContentsWriter::ContentsWriter(string DB) :
                    Db(DB), Stats(Db.Stats)
 
 {
-   Ext[0] = ".deb";
-   Ext[1] = 0;
+   AddPattern("*.deb");
    Output = stdout;
 }
                                                                        /*}}}*/
@@ -777,4 +788,82 @@ bool ContentsWriter::ReadFromPkgs(string PkgFile,string PkgCompress)
    
    return true;
 }
+
                                                                        /*}}}*/
+
+// ReleaseWriter::ReleaseWriter - Constructor                          /*{{{*/
+// ---------------------------------------------------------------------
+/* */
+ReleaseWriter::ReleaseWriter(string DB)
+{
+   AddPattern("Packages");
+   AddPattern("Packages.gz");
+   Output = stdout;
+   time_t now = time(NULL);
+   char datestr[128];
+   if (strftime(datestr, sizeof(datestr), "%a, %d %b %Y %H:%M:%S UTC",
+                gmtime(&now)) == 0)
+   {
+      datestr[0] = '\0';
+   }
+
+   map<string,string> Fields;
+   Fields["Origin"] = "";
+   Fields["Label"] = "";
+   Fields["Suite"] = "";
+   Fields["Version"] = "";
+   Fields["Codename"] = "";
+   Fields["Date"] = datestr;
+   Fields["Architectures"] = "";
+   Fields["Components"] = "";
+   Fields["Description"] = "";
+
+   for(map<string,string>::const_iterator I = Fields.begin();
+       I != Fields.end();
+       ++I)
+   {
+      string Config = string("APT::FTPArchive::Release::") + (*I).first;
+      string Value = _config->Find(Config, (*I).second.c_str());
+      if (Value == "")
+         continue;
+
+      fprintf(Output, "%s: %s\n", (*I).first.c_str(), Value.c_str());
+   }
+
+   fprintf(Output, "MD5Sum:\n");
+}
+                                                                       /*}}}*/
+// ReleaseWriter::DoPackage - Process a single package                 /*{{{*/
+// ---------------------------------------------------------------------
+bool ReleaseWriter::DoPackage(string FileName)
+{
+   // Strip the DirStrip prefix from the FileName and add the PathPrefix
+   string NewFileName;
+   if (DirStrip.empty() == false &&
+       FileName.length() > DirStrip.length() &&
+       stringcmp(FileName.begin(),FileName.begin() + DirStrip.length(),
+                DirStrip.begin(),DirStrip.end()) == 0)
+      NewFileName = string(FileName.begin() + DirStrip.length(),FileName.end());
+   else 
+      NewFileName = FileName;
+   if (PathPrefix.empty() == false)
+      NewFileName = flCombine(PathPrefix,NewFileName);
+
+   FileFd fd(FileName, FileFd::ReadOnly);
+
+   if (!fd.IsOpen())
+   {
+      return false;
+   }
+
+   MD5Summation MD5;
+   MD5.AddFD(fd.Fd(), fd.Size());
+
+   string MD5Sum = MD5.Result();
+   fprintf(Output, " %s %16d %s\n",
+           MD5Sum.c_str(), fd.Size(), FileName.c_str());
+
+   fd.Close();
+   
+   return true;
+}
index 854d3424bef0ef9c0728ae3c3ee8b69ca8753c28..6f728dd1b563c861e407eed7ca82059c02c25efc 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: writer.h,v 1.4 2001/06/26 02:50:27 jgg Exp $
+// $Id: writer.h,v 1.5 2003/12/26 20:08:56 mdz Exp $
 /* ######################################################################
 
    Writer 
 using std::string;
 using std::cout;
 using std::endl;
+using std::vector;
     
 class FTWScanner
 {
    protected:
-
-   char *TmpExt;
-   const char *Ext[10];
+   vector<string> Patterns;
    const char *OriginalPath;
    char *RealPath;
    bool ErrorPrinted;
@@ -66,10 +65,12 @@ class FTWScanner
    virtual bool DoPackage(string FileName) = 0;
    bool RecursiveScan(string Dir);
    bool LoadFileList(string BaseDir,string File);
+   bool ClearPatterns() { Patterns.clear(); };
+   bool AddPattern(string Pattern) { Patterns.push_back(Pattern); };
    bool SetExts(string Vals);
       
    FTWScanner();
-   virtual ~FTWScanner() {delete [] RealPath; delete [] TmpExt;};
+   virtual ~FTWScanner() {delete [] RealPath;};
 };
 
 class PackagesWriter : public FTWScanner
@@ -148,5 +149,16 @@ class SourcesWriter : public FTWScanner
    virtual ~SourcesWriter() {free(Buffer);};
 };
 
+class ReleaseWriter : public FTWScanner
+{
+public:
+   ReleaseWriter(string DB);
+   virtual bool DoPackage(string FileName);
+protected:
+   // General options
+   string PathPrefix;
+   string DirStrip;
+   FILE *Output;
+};
 
 #endif
index 3dd7073efe6c4b42cdb40cd7d82e05c87645764b..221306fcb8b570da25b3eb9ad58ce3bc2f002af1 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2003-12-20 15:27-0800\n"
+"POT-Creation-Date: 2003-12-26 12:05-0800\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -147,8 +147,8 @@ msgid "       %4i %s\n"
 msgstr ""
 
 #: cmdline/apt-cache.cc:1581 cmdline/apt-cdrom.cc:731 cmdline/apt-config.cc:70
-#: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:544
-#: cmdline/apt-get.cc:2271 cmdline/apt-sortpkgs.cc:144
+#: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:545
+#: cmdline/apt-get.cc:2256 cmdline/apt-sortpkgs.cc:144
 #, c-format
 msgid "%s %s for %s %s compiled on %s %s\n"
 msgstr ""
@@ -240,31 +240,31 @@ msgstr ""
 msgid "Cannot get debconf version. Is debconf installed?"
 msgstr ""
 
-#: ftparchive/apt-ftparchive.cc:163 ftparchive/apt-ftparchive.cc:336
+#: ftparchive/apt-ftparchive.cc:163 ftparchive/apt-ftparchive.cc:337
 msgid "Package extension list is too long"
 msgstr ""
 
 #: ftparchive/apt-ftparchive.cc:165 ftparchive/apt-ftparchive.cc:179
-#: ftparchive/apt-ftparchive.cc:202 ftparchive/apt-ftparchive.cc:251
-#: ftparchive/apt-ftparchive.cc:265 ftparchive/apt-ftparchive.cc:287
+#: ftparchive/apt-ftparchive.cc:202 ftparchive/apt-ftparchive.cc:252
+#: ftparchive/apt-ftparchive.cc:266 ftparchive/apt-ftparchive.cc:288
 #, c-format
 msgid "Error Processing directory %s"
 msgstr ""
 
-#: ftparchive/apt-ftparchive.cc:249
+#: ftparchive/apt-ftparchive.cc:250
 msgid "Source extension list is too long"
 msgstr ""
 
-#: ftparchive/apt-ftparchive.cc:366
+#: ftparchive/apt-ftparchive.cc:367
 msgid "Error writing header to contents file"
 msgstr ""
 
-#: ftparchive/apt-ftparchive.cc:396
+#: ftparchive/apt-ftparchive.cc:397
 #, c-format
 msgid "Error Processing Contents %s"
 msgstr ""
 
-#: ftparchive/apt-ftparchive.cc:550
+#: ftparchive/apt-ftparchive.cc:551
 msgid ""
 "Usage: apt-ftparchive [options] command\n"
 "Commands: packages binarypath [overridefile [pathprefix]]\n"
@@ -305,11 +305,11 @@ msgid ""
 "  -o=?  Set an arbitary configuration option"
 msgstr ""
 
-#: ftparchive/apt-ftparchive.cc:731
+#: ftparchive/apt-ftparchive.cc:747
 msgid "No selections matched"
 msgstr ""
 
-#: ftparchive/apt-ftparchive.cc:804
+#: ftparchive/apt-ftparchive.cc:820
 #, c-format
 msgid "Some files are missing in the package file group `%s'"
 msgstr ""
@@ -347,73 +347,73 @@ msgstr ""
 msgid "W: Unable to stat %s\n"
 msgstr ""
 
-#: ftparchive/writer.cc:122
+#: ftparchive/writer.cc:125
 msgid "E: "
 msgstr ""
 
-#: ftparchive/writer.cc:124
+#: ftparchive/writer.cc:127
 msgid "W: "
 msgstr ""
 
-#: ftparchive/writer.cc:131
+#: ftparchive/writer.cc:134
 msgid "E: Errors apply to file "
 msgstr ""
 
-#: ftparchive/writer.cc:148 ftparchive/writer.cc:178
+#: ftparchive/writer.cc:151 ftparchive/writer.cc:181
 #, c-format
 msgid "Failed to resolve %s"
 msgstr ""
 
-#: ftparchive/writer.cc:160
+#: ftparchive/writer.cc:163
 msgid "Tree walking failed"
 msgstr ""
 
-#: ftparchive/writer.cc:185
+#: ftparchive/writer.cc:188
 #, c-format
 msgid "Failed to open %s"
 msgstr ""
 
-#: ftparchive/writer.cc:242
+#: ftparchive/writer.cc:245
 #, c-format
 msgid " DeLink %s [%s]\n"
 msgstr ""
 
-#: ftparchive/writer.cc:250
+#: ftparchive/writer.cc:253
 #, c-format
 msgid "Failed to readlink %s"
 msgstr ""
 
-#: ftparchive/writer.cc:254
+#: ftparchive/writer.cc:257
 #, c-format
 msgid "Failed to unlink %s"
 msgstr ""
 
-#: ftparchive/writer.cc:261
+#: ftparchive/writer.cc:264
 #, c-format
 msgid "*** Failed to link %s to %s"
 msgstr ""
 
-#: ftparchive/writer.cc:271
+#: ftparchive/writer.cc:274
 #, c-format
 msgid " DeLink limit of %sB hit.\n"
 msgstr ""
 
-#: ftparchive/writer.cc:338 apt-inst/extract.cc:181 apt-inst/extract.cc:193
+#: ftparchive/writer.cc:351 apt-inst/extract.cc:181 apt-inst/extract.cc:193
 #: apt-inst/extract.cc:210 apt-inst/deb/dpkgdb.cc:121
 #, c-format
 msgid "Failed to stat %s"
 msgstr ""
 
-#: ftparchive/writer.cc:358
+#: ftparchive/writer.cc:371
 msgid "Archive had no package field"
 msgstr ""
 
-#: ftparchive/writer.cc:366 ftparchive/writer.cc:576
+#: ftparchive/writer.cc:379 ftparchive/writer.cc:588
 #, c-format
 msgid "  %s has no override entry\n"
 msgstr ""
 
-#: ftparchive/writer.cc:409 ftparchive/writer.cc:658
+#: ftparchive/writer.cc:422 ftparchive/writer.cc:670
 #, c-format
 msgid "  %s maintainer is %s not %s\n"
 msgstr ""
@@ -643,11 +643,11 @@ msgstr ""
 msgid "Packages need to be removed but Remove is disabled."
 msgstr ""
 
-#: cmdline/apt-get.cc:744 cmdline/apt-get.cc:1726 cmdline/apt-get.cc:1759
+#: cmdline/apt-get.cc:744 cmdline/apt-get.cc:1712 cmdline/apt-get.cc:1745
 msgid "Unable to lock the download directory"
 msgstr ""
 
-#: cmdline/apt-get.cc:754 cmdline/apt-get.cc:1807 cmdline/apt-get.cc:2018
+#: cmdline/apt-get.cc:754 cmdline/apt-get.cc:1793 cmdline/apt-get.cc:2004
 #: apt-pkg/cachefile.cc:67
 msgid "The list of sources could not be read."
 msgstr ""
@@ -705,7 +705,7 @@ msgstr ""
 msgid "Do you want to continue? [Y/n] "
 msgstr ""
 
-#: cmdline/apt-get.cc:911 cmdline/apt-get.cc:1282 cmdline/apt-get.cc:1916
+#: cmdline/apt-get.cc:911 cmdline/apt-get.cc:1282 cmdline/apt-get.cc:1902
 #, c-format
 msgid "Failed to fetch %s  %s\n"
 msgstr ""
@@ -714,7 +714,7 @@ msgstr ""
 msgid "Some files failed to download"
 msgstr ""
 
-#: cmdline/apt-get.cc:930 cmdline/apt-get.cc:1925
+#: cmdline/apt-get.cc:930 cmdline/apt-get.cc:1911
 msgid "Download complete and in download only mode"
 msgstr ""
 
@@ -872,133 +872,130 @@ msgstr ""
 msgid "The following extra packages will be installed:"
 msgstr ""
 
-#: cmdline/apt-get.cc:1600
+#: cmdline/apt-get.cc:1586
 msgid "Suggested packages:"
 msgstr ""
 
-#: cmdline/apt-get.cc:1601
+#: cmdline/apt-get.cc:1587
 msgid "Recommended packages:"
 msgstr ""
 
-#: cmdline/apt-get.cc:1621
+#: cmdline/apt-get.cc:1607
 msgid "Calculating Upgrade... "
 msgstr ""
 
-#: cmdline/apt-get.cc:1624 methods/ftp.cc:702 methods/connect.cc:99
+#: cmdline/apt-get.cc:1610 methods/ftp.cc:702 methods/connect.cc:99
 msgid "Failed"
 msgstr ""
 
-#: cmdline/apt-get.cc:1629
+#: cmdline/apt-get.cc:1615
 msgid "Done"
 msgstr ""
 
-#: cmdline/apt-get.cc:1802
+#: cmdline/apt-get.cc:1788
 msgid "Must specify at least one package to fetch source for"
 msgstr ""
 
-#: cmdline/apt-get.cc:1829 cmdline/apt-get.cc:2036
+#: cmdline/apt-get.cc:1815 cmdline/apt-get.cc:2022
 #, c-format
 msgid "Unable to find a source package for %s"
 msgstr ""
 
-#: cmdline/apt-get.cc:1876
+#: cmdline/apt-get.cc:1862
 #, c-format
 msgid "You don't have enough free space in %s"
 msgstr ""
 
-#: cmdline/apt-get.cc:1881
+#: cmdline/apt-get.cc:1867
 #, c-format
 msgid "Need to get %sB/%sB of source archives.\n"
 msgstr ""
 
-#: cmdline/apt-get.cc:1884
+#: cmdline/apt-get.cc:1870
 #, c-format
 msgid "Need to get %sB of source archives.\n"
 msgstr ""
 
-#: cmdline/apt-get.cc:1890
+#: cmdline/apt-get.cc:1876
 #, c-format
 msgid "Fetch Source %s\n"
 msgstr ""
 
-#: cmdline/apt-get.cc:1921
+#: cmdline/apt-get.cc:1907
 msgid "Failed to fetch some archives."
 msgstr ""
 
-#: cmdline/apt-get.cc:1949
+#: cmdline/apt-get.cc:1935
 #, c-format
 msgid "Skipping unpack of already unpacked source in %s\n"
 msgstr ""
 
-#: cmdline/apt-get.cc:1961
+#: cmdline/apt-get.cc:1947
 #, c-format
 msgid "Unpack command '%s' failed.\n"
 msgstr ""
 
-#: cmdline/apt-get.cc:1978
+#: cmdline/apt-get.cc:1964
 #, c-format
 msgid "Build command '%s' failed.\n"
 msgstr ""
 
-#: cmdline/apt-get.cc:1997
+#: cmdline/apt-get.cc:1983
 msgid "Child process failed"
 msgstr ""
 
-#: cmdline/apt-get.cc:2013
+#: cmdline/apt-get.cc:1999
 msgid "Must specify at least one package to check builddeps for"
 msgstr ""
 
-#: cmdline/apt-get.cc:2041
+#: cmdline/apt-get.cc:2027
 #, c-format
 msgid "Unable to get build-dependency information for %s"
 msgstr ""
 
-#: cmdline/apt-get.cc:2061
+#: cmdline/apt-get.cc:2047
 #, c-format
 msgid "%s has no build depends.\n"
 msgstr ""
 
-#: cmdline/apt-get.cc:2113
+#: cmdline/apt-get.cc:2099
 #, c-format
 msgid ""
 "%s dependency for %s cannot be satisfied because the package %s cannot be "
 "found"
 msgstr ""
 
-#: cmdline/apt-get.cc:2165
+#: cmdline/apt-get.cc:2151
 #, c-format
 msgid ""
 "%s dependency for %s cannot be satisfied because no available versions of "
 "package %s can satisfy version requirements"
 msgstr ""
 
-#: cmdline/apt-get.cc:2200
+#: cmdline/apt-get.cc:2186
 #, c-format
 msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new"
 msgstr ""
 
-#: cmdline/apt-get.cc:2225
+#: cmdline/apt-get.cc:2211
 #, c-format
 msgid "Failed to satisfy %s dependency for %s: %s"
 msgstr ""
 
-#: cmdline/apt-get.cc:2239
+#: cmdline/apt-get.cc:2225
 #, c-format
-msgid ""
-"Some broken packages were found while trying to process build-dependencies "
-"for %s.\n"
-"You might want to run `apt-get -f install' to correct these."
+msgid "Build-dependencies for %s could not be satisfied."
 msgstr ""
 
-#: cmdline/apt-get.cc:2244
+#: cmdline/apt-get.cc:2229
 msgid "Failed to process build dependencies"
 msgstr ""
 
-#: cmdline/apt-get.cc:2276
+#: cmdline/apt-get.cc:2261
 msgid "Supported Modules:"
 msgstr ""
 
-#: cmdline/apt-get.cc:2317
+#: cmdline/apt-get.cc:2302
 msgid ""
 "Usage: apt-get [options] command\n"
 "       apt-get [options] install|remove pkg1 [pkg2 ...]\n"