Przeglądaj źródła

* Swedish translation update. Closes: #592366
* merge of the debian-expermental-ma branch
* refresh po/pot files in doc/ and po/
* apt-pkg/algorithms.cc:
- change the debug outputs to display also arch of the
package and version dependencies information
* cmdline/apt-get.cc:
- let APT::Get::Arch-Only in build-dep default to false again
(Closes: #592628) Thanks Mohamed Amine IL Idrissi for report!
* Swedish translation update. Closes: #592366

Michael Vogt 16 lat temu
rodzic
commit
e4fa1bca08
58 zmienionych plików z 33939 dodań i 26112 usunięć
  1. 37 37
      apt-pkg/algorithms.cc
  2. 3 0
      apt-pkg/cacheiterators.h
  3. 24 0
      apt-pkg/pkgcache.cc
  4. 3 1
      cmdline/apt-get.cc
  5. 16 2
      debian/changelog
  6. 776 651
      doc/po/apt-doc.pot
  7. 996 686
      doc/po/de.po
  8. 996 685
      doc/po/es.po
  9. 997 686
      doc/po/fr.po
  10. 793 669
      doc/po/it.po
  11. 915 686
      doc/po/ja.po
  12. 925 684
      doc/po/pl.po
  13. 996 686
      doc/po/pt.po
  14. 797 670
      doc/po/pt_BR.po
  15. 213 265
      po/apt-all.pot
  16. 561 443
      po/ar.po
  17. 578 449
      po/ast.po
  18. 576 448
      po/bg.po
  19. 545 441
      po/bs.po
  20. 582 460
      po/ca.po
  21. 577 448
      po/cs.po
  22. 575 449
      po/cy.po
  23. 584 456
      po/da.po
  24. 604 465
      po/de.po
  25. 582 454
      po/dz.po
  26. 577 450
      po/el.po
  27. 576 448
      po/en_GB.po
  28. 582 453
      po/es.po
  29. 574 446
      po/eu.po
  30. 578 450
      po/fi.po
  31. 597 457
      po/fr.po
  32. 575 447
      po/gl.po
  33. 573 447
      po/hu.po
  34. 784 569
      po/it.po
  35. 579 451
      po/ja.po
  36. 576 448
      po/km.po
  37. 576 448
      po/ko.po
  38. 550 442
      po/ku.po
  39. 561 451
      po/lt.po
  40. 577 449
      po/mr.po
  41. 588 459
      po/nb.po
  42. 576 448
      po/ne.po
  43. 592 455
      po/nl.po
  44. 582 456
      po/nn.po
  45. 579 450
      po/pl.po
  46. 583 454
      po/pt.po
  47. 580 452
      po/pt_BR.po
  48. 578 449
      po/ro.po
  49. 588 458
      po/ru.po
  50. 785 561
      po/sk.po
  51. 572 448
      po/sl.po
  52. 775 532
      po/sv.po
  53. 576 449
      po/th.po
  54. 582 454
      po/tl.po
  55. 582 454
      po/uk.po
  56. 583 455
      po/vi.po
  57. 579 450
      po/zh_CN.po
  58. 573 451
      po/zh_TW.po

+ 37 - 37
apt-pkg/algorithms.cc

@@ -58,7 +58,7 @@ void pkgSimulate::Describe(PkgIterator Pkg,ostream &out,bool Current,bool Candid
 {
 {
    VerIterator Ver(Sim);
    VerIterator Ver(Sim);
  
  
-   out << Pkg.Name();
+   out << Pkg.FullName(true);
 
 
    if (Current == true)
    if (Current == true)
    {
    {
@@ -123,9 +123,9 @@ bool pkgSimulate::Install(PkgIterator iPkg,string /*File*/)
          {
          {
 	    if ((Sim[End] & pkgDepCache::DepGInstall) == 0)
 	    if ((Sim[End] & pkgDepCache::DepGInstall) == 0)
 	    {
 	    {
-	       cout << " [" << I.Name() << " on " << Start.TargetPkg().Name() << ']';
+	       cout << " [" << I.FullName(false) << " on " << Start.TargetPkg().FullName(false) << ']';
 	       if (Start->Type == pkgCache::Dep::Conflicts)
 	       if (Start->Type == pkgCache::Dep::Conflicts)
-		  _error->Error("Fatal, conflicts violated %s",I.Name());
+		  _error->Error("Fatal, conflicts violated %s",I.FullName(false).c_str());
 	    }	    
 	    }	    
 	 }
 	 }
       }      
       }      
@@ -165,7 +165,7 @@ bool pkgSimulate::Configure(PkgIterator iPkg)
 //   Sim.MarkInstall(Pkg,false);
 //   Sim.MarkInstall(Pkg,false);
    if (Sim[Pkg].InstBroken() == true)
    if (Sim[Pkg].InstBroken() == true)
    {
    {
-      cout << "Conf " << Pkg.Name() << " broken" << endl;
+      cout << "Conf " << Pkg.FullName(false) << " broken" << endl;
 
 
       Sim.Update();
       Sim.Update();
       
       
@@ -177,17 +177,17 @@ bool pkgSimulate::Configure(PkgIterator iPkg)
 	    continue;
 	    continue;
 	 
 	 
 	 if (D->Type == pkgCache::Dep::Obsoletes)
 	 if (D->Type == pkgCache::Dep::Obsoletes)
-	    cout << " Obsoletes:" << D.TargetPkg().Name();
+	    cout << " Obsoletes:" << D.TargetPkg().FullName(false);
 	 else if (D->Type == pkgCache::Dep::Conflicts)
 	 else if (D->Type == pkgCache::Dep::Conflicts)
-	    cout << " Conflicts:" << D.TargetPkg().Name();
+	    cout << " Conflicts:" << D.TargetPkg().FullName(false);
 	 else if (D->Type == pkgCache::Dep::DpkgBreaks)
 	 else if (D->Type == pkgCache::Dep::DpkgBreaks)
-	    cout << " Breaks:" << D.TargetPkg().Name();
+	    cout << " Breaks:" << D.TargetPkg().FullName(false);
 	 else
 	 else
-	    cout << " Depends:" << D.TargetPkg().Name();
+	    cout << " Depends:" << D.TargetPkg().FullName(false);
       }	    
       }	    
       cout << endl;
       cout << endl;
 
 
-      _error->Error("Conf Broken %s",Pkg.Name());
+      _error->Error("Conf Broken %s",Pkg.FullName(false));
    }   
    }   
    else
    else
    {
    {
@@ -254,7 +254,7 @@ void pkgSimulate::ShortBreaks()
       if (Sim[I].InstBroken() == true)
       if (Sim[I].InstBroken() == true)
       {
       {
 	 if (Flags[I->ID] == 0)
 	 if (Flags[I->ID] == 0)
-	    cout << I.Name() << ' ';
+	    cout << I.FullName(false) << ' ';
 /*	 else
 /*	 else
 	    cout << I.Name() << "! ";*/
 	    cout << I.Name() << "! ";*/
       }      
       }      
@@ -290,7 +290,7 @@ bool pkgApplyStatus(pkgDepCache &Cache)
 	       Cache.MarkInstall(I, false, 0, false);
 	       Cache.MarkInstall(I, false, 0, false);
 	    else
 	    else
 	       return _error->Error(_("The package %s needs to be reinstalled, "
 	       return _error->Error(_("The package %s needs to be reinstalled, "
-				    "but I can't find an archive for it."),I.Name());
+				    "but I can't find an archive for it."),I.FullName(true));
 	 }
 	 }
 	 
 	 
 	 continue;
 	 continue;
@@ -325,7 +325,7 @@ bool pkgApplyStatus(pkgDepCache &Cache)
 	 default:
 	 default:
 	 if (I->InstState != pkgCache::State::Ok)
 	 if (I->InstState != pkgCache::State::Ok)
 	    return _error->Error("The package %s is not ok and I "
 	    return _error->Error("The package %s is not ok and I "
-				 "don't know how to fix it!",I.Name());
+				 "don't know how to fix it!",I.FullName(false));
       }
       }
    }
    }
    return true;
    return true;
@@ -709,7 +709,7 @@ bool pkgProblemResolver::DoUpgrade(pkgCache::PkgIterator Pkg)
 	 if ((Flags[P->ID] & Protected) == Protected)
 	 if ((Flags[P->ID] & Protected) == Protected)
 	 {
 	 {
 	    if (Debug == true)
 	    if (Debug == true)
-	       clog << "    Reinst Failed because of protected " << P.Name() << endl;
+	       clog << "    Reinst Failed because of protected " << P.FullName(false) << endl;
 	    Fail = true;
 	    Fail = true;
 	 }      
 	 }      
 	 else
 	 else
@@ -720,7 +720,7 @@ bool pkgProblemResolver::DoUpgrade(pkgCache::PkgIterator Pkg)
 	       if (DoUpgrade(P) == false)
 	       if (DoUpgrade(P) == false)
 	       {
 	       {
 		  if (Debug == true)
 		  if (Debug == true)
-		     clog << "    Reinst Failed because of " << P.Name() << endl;
+		     clog << "    Reinst Failed because of " << P.FullName(false) << endl;
 		  Fail = true;
 		  Fail = true;
 	       }
 	       }
 	       else
 	       else
@@ -739,7 +739,7 @@ bool pkgProblemResolver::DoUpgrade(pkgCache::PkgIterator Pkg)
 		   break;
 		   break;
 	       
 	       
 	       if (Debug == true)
 	       if (Debug == true)
-		  clog << "    Reinst Failed early because of " << Start.TargetPkg().Name() << endl;
+		  clog << "    Reinst Failed early because of " << Start.TargetPkg().FullName(false) << endl;
 	       Fail = true;
 	       Fail = true;
 	    }     
 	    }     
 	 }
 	 }
@@ -763,7 +763,7 @@ bool pkgProblemResolver::DoUpgrade(pkgCache::PkgIterator Pkg)
    }	 
    }	 
    
    
    if (Debug == true)
    if (Debug == true)
-      clog << "  Re-Instated " << Pkg.Name() << endl;
+      clog << "  Re-Instated " << Pkg.FullName(false) << endl;
    return true;
    return true;
 }
 }
 									/*}}}*/
 									/*}}}*/
@@ -863,7 +863,7 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 	     (Flags[I->ID] & ReInstateTried) == 0)
 	     (Flags[I->ID] & ReInstateTried) == 0)
 	 {
 	 {
 	    if (Debug == true)
 	    if (Debug == true)
-	       clog << " Try to Re-Instate " << I.Name() << endl;
+	       clog << " Try to Re-Instate " << I.FullName(false) << endl;
 	    unsigned long OldBreaks = Cache.BrokenCount();
 	    unsigned long OldBreaks = Cache.BrokenCount();
 	    pkgCache::Version *OldVer = Cache[I].InstallVer;
 	    pkgCache::Version *OldVer = Cache[I].InstallVer;
 	    Flags[I->ID] &= ReInstateTried;
 	    Flags[I->ID] &= ReInstateTried;
@@ -879,14 +879,14 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 	    }	    
 	    }	    
 	    else
 	    else
 	       if (Debug == true)
 	       if (Debug == true)
-		  clog << "Re-Instated " << I.Name() << " (" << OldBreaks << " vs " << Cache.BrokenCount() << ')' << endl;
+		  clog << "Re-Instated " << I.FullName(false) << " (" << OldBreaks << " vs " << Cache.BrokenCount() << ')' << endl;
 	 }
 	 }
 	    
 	    
 	 if (Cache[I].InstallVer == 0 || Cache[I].InstBroken() == false)
 	 if (Cache[I].InstallVer == 0 || Cache[I].InstBroken() == false)
 	    continue;
 	    continue;
 	 
 	 
 	 if (Debug == true)
 	 if (Debug == true)
-	    clog << "Investigating " << I.Name() << endl;
+	    clog << "Investigating " << I << endl;
 	 
 	 
 	 // Isolate the problem dependency
 	 // Isolate the problem dependency
 	 PackageKill KillList[100];
 	 PackageKill KillList[100];
@@ -911,7 +911,7 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 		     if ((Flags[I->ID] & Protected) != Protected)
 		     if ((Flags[I->ID] & Protected) != Protected)
 		     {
 		     {
 			if (Debug == true)
 			if (Debug == true)
-			   clog << "  Or group remove for " << I.Name() << endl;
+			   clog << "  Or group remove for " << I.FullName(false) << endl;
 			Cache.MarkDelete(I);
 			Cache.MarkDelete(I);
 			Change = true;
 			Change = true;
 		     }		     
 		     }		     
@@ -919,7 +919,7 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 		  if (OldEnd == LEnd && OrOp == OrKeep)
 		  if (OldEnd == LEnd && OrOp == OrKeep)
 		  {
 		  {
 		     if (Debug == true)
 		     if (Debug == true)
-			clog << "  Or group keep for " << I.Name() << endl;
+			clog << "  Or group keep for " << I.FullName(false) << endl;
 		     Cache.MarkKeep(I, false, false);
 		     Cache.MarkKeep(I, false, false);
 		     Change = true;
 		     Change = true;
 		  }
 		  }
@@ -956,7 +956,7 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 	    }
 	    }
 	    
 	    
 	    if (Debug == true)
 	    if (Debug == true)
-	       clog << "Package " << I.Name() << " has broken " << Start.DepType() << " on " << Start.TargetPkg().Name() << endl;
+	       clog << "Broken " << Start << endl;
 
 
 	    /* Look across the version list. If there are no possible
 	    /* Look across the version list. If there are no possible
 	       targets then we keep the package and bail. This is necessary
 	       targets then we keep the package and bail. This is necessary
@@ -987,8 +987,8 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 	       pkgCache::PkgIterator Pkg = Ver.ParentPkg();
 	       pkgCache::PkgIterator Pkg = Ver.ParentPkg();
 
 
 	       if (Debug == true)
 	       if (Debug == true)
-		  clog << "  Considering " << Pkg.Name() << ' ' << (int)Scores[Pkg->ID] <<
-		  " as a solution to " << I.Name() << ' ' << (int)Scores[I->ID] << endl;
+		  clog << "  Considering " << Pkg.FullName(false) << ' ' << (int)Scores[Pkg->ID] <<
+		  " as a solution to " << I.FullName(false) << ' ' << (int)Scores[I->ID] << endl;
 
 
 	       /* Try to fix the package under consideration rather than
 	       /* Try to fix the package under consideration rather than
 	          fiddle with the VList package */
 	          fiddle with the VList package */
@@ -1026,7 +1026,7 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 			Cache.MarkInstall(I, false, 0, false);
 			Cache.MarkInstall(I, false, 0, false);
 		     
 		     
 		     if (Debug == true)
 		     if (Debug == true)
-			clog << "  Holding Back " << I.Name() << " rather than change " << Start.TargetPkg().Name() << endl;
+			clog << "  Holding Back " << I.FullName(false) << " rather than change " << Start.TargetPkg().FullName(false) << endl;
 		  }		  
 		  }		  
 		  else
 		  else
 		  {		     
 		  {		     
@@ -1036,7 +1036,7 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 			if (InOr == false)
 			if (InOr == false)
 			{
 			{
 			   if (Debug == true)
 			   if (Debug == true)
-			      clog << "  Removing " << I.Name() << " rather than change " << Start.TargetPkg().Name() << endl;
+			      clog << "  Removing " << I.FullName(false) << " rather than change " << Start.TargetPkg().FullName(false) << endl;
 			   Cache.MarkDelete(I);
 			   Cache.MarkDelete(I);
 			   if (Counter > 1 && Scores[Pkg->ID] > Scores[I->ID])
 			   if (Counter > 1 && Scores[Pkg->ID] > Scores[I->ID])
 			      Scores[I->ID] = Scores[Pkg->ID];
 			      Scores[I->ID] = Scores[Pkg->ID];
@@ -1068,7 +1068,7 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 		     if (Cache[End] & pkgDepCache::DepGCVer) 
 		     if (Cache[End] & pkgDepCache::DepGCVer) 
 		     {
 		     {
 			if (Debug)
 			if (Debug)
-			   clog << "  Upgrading " << Pkg.Name() << " due to Breaks field in " << I.Name() << endl;
+			   clog << "  Upgrading " << Pkg.FullName(false) << " due to Breaks field in " << I.FullName(false) << endl;
 			Cache.MarkInstall(Pkg, false, 0, false);
 			Cache.MarkInstall(Pkg, false, 0, false);
 			continue;
 			continue;
 		     }
 		     }
@@ -1079,7 +1079,7 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 		     continue;
 		     continue;
 		
 		
 		  if (Debug == true)
 		  if (Debug == true)
-		     clog << "  Added " << Pkg.Name() << " to the remove list" << endl;
+		     clog << "  Added " << Pkg.FullName(false) << " to the remove list" << endl;
 		  
 		  
 		  LEnd->Pkg = Pkg;
 		  LEnd->Pkg = Pkg;
 		  LEnd->Dep = End;
 		  LEnd->Dep = End;
@@ -1111,12 +1111,12 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 		     Cache.MarkInstall(I, false, 0, false);
 		     Cache.MarkInstall(I, false, 0, false);
 		  
 		  
 		  if (Debug == true)
 		  if (Debug == true)
-		     clog << "  Holding Back " << I.Name() << " because I can't find " << Start.TargetPkg().Name() << endl;
+		     clog << "  Holding Back " << I.FullName(false) << " because I can't find " << Start.TargetPkg().FullName(false) << endl;
 	       }	       
 	       }	       
 	       else
 	       else
 	       {
 	       {
 		  if (Debug == true)
 		  if (Debug == true)
-		     clog << "  Removing " << I.Name() << " because I can't find " << Start.TargetPkg().Name() << endl;
+		     clog << "  Removing " << I.FullName(false) << " because I can't find " << Start.TargetPkg().FullName(false) << endl;
 		  if (InOr == false)
 		  if (InOr == false)
 		     Cache.MarkDelete(I);
 		     Cache.MarkDelete(I);
 	       }
 	       }
@@ -1146,14 +1146,14 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 		      J->Dep->Type == pkgCache::Dep::Obsoletes)
 		      J->Dep->Type == pkgCache::Dep::Obsoletes)
 		  {
 		  {
 		     if (Debug == true)
 		     if (Debug == true)
-			clog << "  Fixing " << I.Name() << " via remove of " << J->Pkg.Name() << endl;
+			clog << "  Fixing " << I.FullName(false) << " via remove of " << J->Pkg.FullName(false) << endl;
 		     Cache.MarkDelete(J->Pkg);
 		     Cache.MarkDelete(J->Pkg);
 		  }
 		  }
 	       }
 	       }
 	       else
 	       else
 	       {
 	       {
 		  if (Debug == true)
 		  if (Debug == true)
-		     clog << "  Fixing " << I.Name() << " via keep of " << J->Pkg.Name() << endl;
+		     clog << "  Fixing " << I.FullName(false) << " via keep of " << J->Pkg.FullName(false) << endl;
 		  Cache.MarkKeep(J->Pkg, false, false);
 		  Cache.MarkKeep(J->Pkg, false, false);
 	       }
 	       }
 
 
@@ -1189,7 +1189,7 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
    for (;I.end() != true; I++) {
    for (;I.end() != true; I++) {
       if (Cache[I].NewInstall() && !(Flags[I->ID] & PreInstalled)) {
       if (Cache[I].NewInstall() && !(Flags[I->ID] & PreInstalled)) {
 	 if(_config->FindI("Debug::pkgAutoRemove",false)) {
 	 if(_config->FindI("Debug::pkgAutoRemove",false)) {
-	    std::clog << "Resolve installed new pkg: " << I.Name() 
+	    std::clog << "Resolve installed new pkg: " << I.FullName(false) 
 		      << " (now marking it as auto)" << std::endl;
 		      << " (now marking it as auto)" << std::endl;
 	 }
 	 }
 	 Cache[I].Flags |= pkgCache::Flag::Auto;
 	 Cache[I].Flags |= pkgCache::Flag::Auto;
@@ -1252,7 +1252,7 @@ bool pkgProblemResolver::ResolveByKeep()
       if ((Flags[I->ID] & Protected) == 0)
       if ((Flags[I->ID] & Protected) == 0)
       {
       {
 	 if (Debug == true)
 	 if (Debug == true)
-	    clog << "Keeping package " << I.Name() << endl;
+	    clog << "Keeping package " << I.FullName(false) << endl;
 	 Cache.MarkKeep(I, false, false);
 	 Cache.MarkKeep(I, false, false);
 	 if (Cache[I].InstBroken() == false)
 	 if (Cache[I].InstBroken() == false)
 	 {
 	 {
@@ -1283,7 +1283,7 @@ bool pkgProblemResolver::ResolveByKeep()
 	 while (true)
 	 while (true)
 	 {
 	 {
 	    if (Debug == true)
 	    if (Debug == true)
-	       clog << "Package " << I.Name() << " has broken " << Start.DepType() << " on " << Start.TargetPkg().Name() << endl;
+	       clog << "Package " << I.FullName(false) << " " << Start << endl;
 
 
 	    // Look at all the possible provides on this package
 	    // Look at all the possible provides on this package
 	    SPtrArray<pkgCache::Version *> VList = Start.AllTargets();
 	    SPtrArray<pkgCache::Version *> VList = Start.AllTargets();
@@ -1300,7 +1300,7 @@ bool pkgProblemResolver::ResolveByKeep()
 	       if ((Flags[I->ID] & Protected) == 0)
 	       if ((Flags[I->ID] & Protected) == 0)
 	       {
 	       {
 		  if (Debug == true)
 		  if (Debug == true)
-		     clog << "  Keeping Package " << Pkg.Name() << " due to " << Start.DepType() << endl;
+		     clog << "  Keeping Package " << Pkg.FullName(false) << " due to " << Start.DepType() << endl;
 		  Cache.MarkKeep(Pkg, false, false);
 		  Cache.MarkKeep(Pkg, false, false);
 	       }
 	       }
 	       
 	       
@@ -1325,7 +1325,7 @@ bool pkgProblemResolver::ResolveByKeep()
       
       
       // Restart again.
       // Restart again.
       if (K == LastStop)
       if (K == LastStop)
-	 return _error->Error("Internal Error, pkgProblemResolver::ResolveByKeep is looping on package %s.",I.Name());
+	 return _error->Error("Internal Error, pkgProblemResolver::ResolveByKeep is looping on package %s.",I.FullName(false));
       LastStop = K;
       LastStop = K;
       K = PList - 1;
       K = PList - 1;
    }   
    }   

+ 3 - 0
apt-pkg/cacheiterators.h

@@ -293,6 +293,9 @@ class pkgCache::DepIterator : public Iterator<Dependency, DepIterator> {
 	inline const char *CompType() const {return Owner->CompType(S->CompareOp);};
 	inline const char *CompType() const {return Owner->CompType(S->CompareOp);};
 	inline const char *DepType() const {return Owner->DepType(S->Type);};
 	inline const char *DepType() const {return Owner->DepType(S->Type);};
 
 
+	//Nice printable representation
+	friend std::ostream& operator <<(std::ostream& out, DepIterator D);
+
 	inline DepIterator(pkgCache &Owner, Dependency *Trg, Version* = 0) :
 	inline DepIterator(pkgCache &Owner, Dependency *Trg, Version* = 0) :
 		Iterator<Dependency, DepIterator>(Owner, Trg), Type(DepVer) {
 		Iterator<Dependency, DepIterator>(Owner, Trg), Type(DepVer) {
 		if (S == 0)
 		if (S == 0)

+ 24 - 0
apt-pkg/pkgcache.cc

@@ -664,6 +664,30 @@ void pkgCache::DepIterator::GlobOr(DepIterator &Start,DepIterator &End)
    }
    }
 }
 }
 									/*}}}*/
 									/*}}}*/
+// ostream operator to handle string representation of a dependecy	/*{{{*/
+// ---------------------------------------------------------------------
+/* */
+std::ostream& operator<<(ostream& out, pkgCache::DepIterator D)
+{
+   if (D.end() == true)
+      return out << "invalid dependency";
+
+   pkgCache::PkgIterator P = D.ParentPkg();
+   pkgCache::PkgIterator T = D.TargetPkg();
+
+   out << (P.end() ? "invalid pkg" : P.FullName(false)) << " " << D.DepType()
+	<< " on ";
+   if (T.end() == true)
+      out << "invalid pkg";
+   else
+      out << T;
+
+   if (D->Version != 0)
+      out << " (" << D.CompType() << " " << D.TargetVer() << ")";
+
+   return out;
+}
+									/*}}}*/
 // VerIterator::CompareVer - Fast version compare for same pkgs		/*{{{*/
 // VerIterator::CompareVer - Fast version compare for same pkgs		/*{{{*/
 // ---------------------------------------------------------------------
 // ---------------------------------------------------------------------
 /* This just looks over the version list to see if B is listed before A. In
 /* This just looks over the version list to see if B is listed before A. In

+ 3 - 1
cmdline/apt-get.cc

@@ -28,6 +28,7 @@
 #define _LARGEFILE_SOURCE
 #define _LARGEFILE_SOURCE
 #define _LARGEFILE64_SOURCE
 #define _LARGEFILE64_SOURCE
 
 
+#include <apt-pkg/aptconfiguration.h>
 #include <apt-pkg/error.h>
 #include <apt-pkg/error.h>
 #include <apt-pkg/cmndline.h>
 #include <apt-pkg/cmndline.h>
 #include <apt-pkg/init.h>
 #include <apt-pkg/init.h>
@@ -2493,6 +2494,7 @@ bool DoBuildDep(CommandLine &CmdL)
       return false;
       return false;
 
 
    unsigned J = 0;
    unsigned J = 0;
+   bool const StripMultiArch = APT::Configuration::getArchitectures().size() <= 1;
    for (const char **I = CmdL.FileList + 1; *I != 0; I++, J++)
    for (const char **I = CmdL.FileList + 1; *I != 0; I++, J++)
    {
    {
       string Src;
       string Src;
@@ -2502,7 +2504,7 @@ bool DoBuildDep(CommandLine &CmdL)
             
             
       // Process the build-dependencies
       // Process the build-dependencies
       vector<pkgSrcRecords::Parser::BuildDepRec> BuildDeps;
       vector<pkgSrcRecords::Parser::BuildDepRec> BuildDeps;
-      if (Last->BuildDepends(BuildDeps, _config->FindB("APT::Get::Arch-Only",true)) == false)
+      if (Last->BuildDepends(BuildDeps, _config->FindB("APT::Get::Arch-Only", false), StripMultiArch) == false)
       	return _error->Error(_("Unable to get build-dependency information for %s"),Src.c_str());
       	return _error->Error(_("Unable to get build-dependency information for %s"),Src.c_str());
    
    
       // Also ensure that build-essential packages are present
       // Also ensure that build-essential packages are present

+ 16 - 2
debian/changelog

@@ -1,6 +1,11 @@
-apt (0.7.26~exp13) UNRELEASEDexperimental; urgency=low
+apt (0.8.0~pre1) UNRELASED; urgency=low
+
+  [ Programs translations ]
+  * Swedish translation update. Closes: #592366
 
 
   [ Michael Vogt ]
   [ Michael Vogt ]
+  * merge of the debian-expermental-ma branch
+  * refresh po/pot files in doc/ and po/
   * apt-pkg/pkgcache.cc:
   * apt-pkg/pkgcache.cc:
     - re-evaluate the architectures cache when the cache is (re)opened
     - re-evaluate the architectures cache when the cache is (re)opened
 
 
@@ -20,7 +25,15 @@ apt (0.7.26~exp13) UNRELEASEDexperimental; urgency=low
   * debian/control:
   * debian/control:
     - Add dependency on gnupg to apt, apt-key uses it.
     - Add dependency on gnupg to apt, apt-key uses it.
 
 
- -- Michael Vogt <michael.vogt@ubuntu.com>  Fri, 30 Jul 2010 17:37:14 +0200
+  [ David Kalnischkies ]
+  * apt-pkg/algorithms.cc:
+    - change the debug outputs to display also arch of the
+      package and version dependencies information
+  * cmdline/apt-get.cc:
+    - let APT::Get::Arch-Only in build-dep default to false again
+      (Closes: #592628) Thanks Mohamed Amine IL Idrissi for report!
+
+ -- David Kalnischkies <kalnischkies@gmail.com>  Wed, 11 Aug 2010 19:36:21 +0200
 
 
 apt (0.7.26~exp12) experimental; urgency=low
 apt (0.7.26~exp12) experimental; urgency=low
 
 
@@ -366,6 +379,7 @@ apt (0.7.26~exp5) experimental; urgency=low
   [ Christian Perrier ]
   [ Christian Perrier ]
   * Slovak translation update. Closes: #581159
   * Slovak translation update. Closes: #581159
   * Italian translation update. Closes: #581742
   * Italian translation update. Closes: #581742
+  * Swedish translation update. Closes: #592366
 
 
  -- Michael Vogt <mvo@debian.org>  Tue, 25 May 2010 16:01:42 +0200
  -- Michael Vogt <mvo@debian.org>  Tue, 25 May 2010 16:01:42 +0200
 
 

Plik diff jest za duży
+ 776 - 651
doc/po/apt-doc.pot


Plik diff jest za duży
+ 996 - 686
doc/po/de.po


Plik diff jest za duży
+ 996 - 685
doc/po/es.po


Plik diff jest za duży
+ 997 - 686
doc/po/fr.po


Plik diff jest za duży
+ 793 - 669
doc/po/it.po


Plik diff jest za duży
+ 915 - 686
doc/po/ja.po


Plik diff jest za duży
+ 925 - 684
doc/po/pl.po


Plik diff jest za duży
+ 996 - 686
doc/po/pt.po


Plik diff jest za duży
+ 797 - 670
doc/po/pt_BR.po


Plik diff jest za duży
+ 213 - 265
po/apt-all.pot


Plik diff jest za duży
+ 561 - 443
po/ar.po


Plik diff jest za duży
+ 578 - 449
po/ast.po


Plik diff jest za duży
+ 576 - 448
po/bg.po


Plik diff jest za duży
+ 545 - 441
po/bs.po


Plik diff jest za duży
+ 582 - 460
po/ca.po


Plik diff jest za duży
+ 577 - 448
po/cs.po


Plik diff jest za duży
+ 575 - 449
po/cy.po


Plik diff jest za duży
+ 584 - 456
po/da.po


Plik diff jest za duży
+ 604 - 465
po/de.po


Plik diff jest za duży
+ 582 - 454
po/dz.po


Plik diff jest za duży
+ 577 - 450
po/el.po


Plik diff jest za duży
+ 576 - 448
po/en_GB.po


Plik diff jest za duży
+ 582 - 453
po/es.po


Plik diff jest za duży
+ 574 - 446
po/eu.po


Plik diff jest za duży
+ 578 - 450
po/fi.po


Plik diff jest za duży
+ 597 - 457
po/fr.po


Plik diff jest za duży
+ 575 - 447
po/gl.po


Plik diff jest za duży
+ 573 - 447
po/hu.po


Plik diff jest za duży
+ 784 - 569
po/it.po


Plik diff jest za duży
+ 579 - 451
po/ja.po


Plik diff jest za duży
+ 576 - 448
po/km.po


Plik diff jest za duży
+ 576 - 448
po/ko.po


Plik diff jest za duży
+ 550 - 442
po/ku.po


Plik diff jest za duży
+ 561 - 451
po/lt.po


Plik diff jest za duży
+ 577 - 449
po/mr.po


Plik diff jest za duży
+ 588 - 459
po/nb.po


Plik diff jest za duży
+ 576 - 448
po/ne.po


Plik diff jest za duży
+ 592 - 455
po/nl.po


Plik diff jest za duży
+ 582 - 456
po/nn.po


Plik diff jest za duży
+ 579 - 450
po/pl.po


Plik diff jest za duży
+ 583 - 454
po/pt.po


Plik diff jest za duży
+ 580 - 452
po/pt_BR.po


Plik diff jest za duży
+ 578 - 449
po/ro.po


Plik diff jest za duży
+ 588 - 458
po/ru.po


Plik diff jest za duży
+ 785 - 561
po/sk.po


Plik diff jest za duży
+ 572 - 448
po/sl.po


Plik diff jest za duży
+ 775 - 532
po/sv.po


Plik diff jest za duży
+ 576 - 449
po/th.po


Plik diff jest za duży
+ 582 - 454
po/tl.po


Plik diff jest za duży
+ 582 - 454
po/uk.po


Plik diff jest za duży
+ 583 - 455
po/vi.po


Plik diff jest za duży
+ 579 - 450
po/zh_CN.po


Plik diff jest za duży
+ 573 - 451
po/zh_TW.po