From 5af4d4f0acc1b7e4b77109d18b242bdabea3c0f8 Mon Sep 17 00:00:00 2001 From: "Adam J. Stewart" Date: Sat, 5 May 2018 17:26:47 -0500 Subject: [PATCH] Set default provider for every virtual package (#7784) * Set default provider for every virtual package * Add unit test to ensure that every virtual package has a default provider explicitly set --- etc/spack/defaults/packages.yaml | 3 ++- lib/spack/spack/test/package_sanity.py | 10 ++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/etc/spack/defaults/packages.yaml b/etc/spack/defaults/packages.yaml index 5e030a873fe..e7601585542 100644 --- a/etc/spack/defaults/packages.yaml +++ b/etc/spack/defaults/packages.yaml @@ -17,6 +17,7 @@ packages: all: compiler: [gcc, intel, pgi, clang, xl, nag] providers: + D: [ldc] awk: [gawk] blas: [openblas] daal: [intel-daal] @@ -26,6 +27,7 @@ packages: golang: [gcc] ipp: [intel-ipp] java: [jdk] + jpeg: [libjpeg-turbo, libjpeg] lapack: [openblas] mkl: [intel-mkl] mpe: [mpe2] @@ -37,4 +39,3 @@ packages: scalapack: [netlib-scalapack] szip: [libszip, libaec] tbb: [intel-tbb] - jpeg: [libjpeg-turbo, libjpeg] diff --git a/lib/spack/spack/test/package_sanity.py b/lib/spack/spack/test/package_sanity.py index 65861273cdb..fc27f831c30 100644 --- a/lib/spack/spack/test/package_sanity.py +++ b/lib/spack/spack/test/package_sanity.py @@ -60,3 +60,13 @@ def test_all_versions_are_lowercase(): errors.append(name) assert len(errors) == 0 + + +def test_all_virtual_packages_have_default_providers(): + """All virtual packages must have a default provider explicitly set.""" + defaults = spack.config.get_config('packages', scope='defaults') + default_providers = defaults['all']['providers'] + providers = spack.repo.provider_index.providers + + for provider in providers: + assert provider in default_providers