From a5d8dd5bd7549e235ca9dcef385378f8608e4335 Mon Sep 17 00:00:00 2001 From: Martchus Date: Sun, 13 Dec 2015 21:12:44 +0100 Subject: [PATCH] don't list repositories --- alpm/mingwbundle.cpp | 35 ++++++++++++++++------------------- alpm/mingwbundle.h | 4 +--- 2 files changed, 17 insertions(+), 22 deletions(-) diff --git a/alpm/mingwbundle.cpp b/alpm/mingwbundle.cpp index b5026ef..5e8ca86 100644 --- a/alpm/mingwbundle.cpp +++ b/alpm/mingwbundle.cpp @@ -36,9 +36,8 @@ MingwBundle::MingwBundle(Manager &manager, const ApplicationUtilities::StringVec // add mingw-w64 packages for(const auto &pkgName : packages) { if(auto *pkg = manager.packageProviding(Dependency(QString::fromLocal8Bit(ConversionUtilities::startsWith(pkgName, prefix) ? pkgName.data() : (prefix + pkgName).data())))) { - decltype(m_packages)::value_type entry(pkg->repository(), pkg); - if(find(m_packages.cbegin(), m_packages.cend(), entry) == m_packages.cend()) { - m_packages.emplace_back(entry); + if(find(m_packages.cbegin(), m_packages.cend(), pkg) == m_packages.cend()) { + m_packages.emplace_back(pkg); addDependencies(pkg); } } else { @@ -49,9 +48,8 @@ MingwBundle::MingwBundle(Manager &manager, const ApplicationUtilities::StringVec // add additional icon packages for(const auto &pkgName : iconPackages) { if(auto *pkg = manager.packageProviding(Dependency(QString::fromLocal8Bit(pkgName.data())))) { - decltype(m_packages)::value_type entry(pkg->repository(), pkg); - if(find(m_packages.cbegin(), m_packages.cend(), entry) == m_packages.cend()) { - m_packages.emplace_back(entry); + if(find(m_packages.cbegin(), m_packages.cend(), pkg) == m_packages.cend()) { + m_packages.emplace_back(pkg); } } else { missing.push_back(' '); @@ -62,8 +60,8 @@ MingwBundle::MingwBundle(Manager &manager, const ApplicationUtilities::StringVec throw runtime_error("The following packages can not be found:" + missing); } else { cerr << shchar << "Adding the following packages:"; - for(const auto &pkg : m_packages) { - cerr << shchar << ' ' << pkg.second->name().toLocal8Bit().data(); + for(const auto *pkg : m_packages) { + cerr << shchar << ' ' << pkg->name().toLocal8Bit().data(); } cerr << shchar << endl; } @@ -75,9 +73,8 @@ void MingwBundle::addDependencies(const Package *pkg) for(const auto &dep : pkg->dependencies()) { if(dep.name.startsWith(QLatin1String("mingw-w64-"), Qt::CaseInsensitive)) { if(auto *pkg = m_manager.packageProviding(dep)) { - decltype(m_packages)::value_type entry(pkg->repository(), pkg); - if(find(m_packages.cbegin(), m_packages.cend(), entry) == m_packages.cend()) { - m_packages.emplace_back(entry); + if(find(m_packages.cbegin(), m_packages.cend(), pkg) == m_packages.cend()) { + m_packages.emplace_back(pkg); addDependencies(pkg); } } else { @@ -379,21 +376,21 @@ void MingwBundle::createBundle(const string &targetDir, const string &targetName cerr << shchar << "Gathering relevant files ..." << endl; // get package files list pkgFiles; - for(const auto &entry : m_packages) { + for(const auto *pkg : m_packages) { QString pkgFile; - if(!entry.first->packagesDirectory().isEmpty()) { - pkgFile = entry.first->packagesDirectory() % QChar('/') % entry.second->fileName(); + if(!pkg->repository()->packagesDirectory().isEmpty()) { + pkgFile = pkg->repository()->packagesDirectory() % QChar('/') % pkg->fileName(); } if(pkgFile.isEmpty() || !QFile::exists(pkgFile)) { if(!m_manager.pacmanCacheDir().isEmpty()) { - pkgFile = m_manager.pacmanCacheDir() % QChar('/') % entry.second->fileName(); + pkgFile = m_manager.pacmanCacheDir() % QChar('/') % pkg->fileName(); } if(pkgFile.isEmpty() || !QFile::exists(pkgFile)) { - throw runtime_error("The package file " + string(entry.second->fileName().toLocal8Bit().data()) + " can't be found."); + throw runtime_error("The package file " + string(pkg->fileName().toLocal8Bit().data()) + " can't be found."); // TODO: download package from mirror } } - pkgFiles.emplace_back(entry.second->name().startsWith(QLatin1String("mingw-w64-")) ? entry.second->name().mid(10) : entry.second->name(), pkgFile); + pkgFiles.emplace_back(pkg->name().startsWith(QLatin1String("mingw-w64-")) ? pkg->name().mid(10) : pkg->name(), pkgFile); } for(const auto &pkgFileStdStr : m_extraPackages) { QString pkgFile = QString::fromLocal8Bit(pkgFileStdStr.data()); @@ -419,8 +416,8 @@ void MingwBundle::createBundle(const string &targetDir, const string &targetName } // make a list with package info to be included in the target archive QJsonArray pkgArray; - for(const auto &entry : m_packages) { - pkgArray << entry.second->basicInfo(true); + for(const auto *pkg : m_packages) { + pkgArray << pkg->basicInfo(true); } QJsonDocument pkgList; pkgList.setArray(pkgArray); diff --git a/alpm/mingwbundle.h b/alpm/mingwbundle.h index d744e7e..16e2087 100644 --- a/alpm/mingwbundle.h +++ b/alpm/mingwbundle.h @@ -6,8 +6,6 @@ #include -#include - namespace RepoIndex { class Manager; @@ -23,7 +21,7 @@ private: void addDependencies(const Package *pkg); Manager &m_manager; - std::list > m_packages; + std::list m_packages; const ApplicationUtilities::StringVector &m_extraPackages; };