kde-projects: Don't pull in modules w/out right branch.

It's easiest to describe by giving the test case:

module-set kde-workspace-utils
    repository kde-projects
    use-modules kde/kdeutils
    branch KDE/4.9
end-module-set

This pulled in all modules available under the kde/kdeutils virtual
path, including print-manager (a program only available from KDE/4.10
on). When kdesrc-build tried to switch the branch of print-manager to
KDE/4.9 it failed after cloning.

Now we don't even try cloning print-manager (or in general, any module
that doesn't have a branch specified for the whole module-set).

To be clear, this is the only level of detail we look at for filtering
at this point: Is a branch option given for the module-set, and if so we
filter out non-matching modules that would be implicitly selected.

BUG:307694
FIXED-IN:1.16
wilder
Michael Pyne 13 years ago
parent 10b7c12ad5
commit 63e21e9e1b
  1. 9
      kdesrc-build

@ -811,6 +811,15 @@ sub expandXMLModules
# projects.kde.org, elide those.
my @xmlResults = grep { $_->{'active'} ne 'false' } (@allXmlResults);
# Bug 307694
my $moduleSetBranch = $moduleSet->getOption('branch', 'module');
if ($moduleSetBranch) {
debug ("Filtering kde-projects modules that don't have a $moduleSetBranch branch");
@xmlResults = grep {
list_has($_->{'branches'}, $moduleSetBranch)
} (@xmlResults);
}
if (!@xmlResults) {
# If this was a "guessed XML module" then we guessed wrong, and it's really
# a misspelling.

Loading…
Cancel
Save