diff options
-rw-r--r-- | assemble_vintf.cpp | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/assemble_vintf.cpp b/assemble_vintf.cpp index febb2d9..60cea7d 100644 --- a/assemble_vintf.cpp +++ b/assemble_vintf.cpp | |||
@@ -155,23 +155,23 @@ public: | |||
155 | } | 155 | } |
156 | 156 | ||
157 | bool assembleFrameworkCompatibilityMatrixKernels(CompatibilityMatrix* matrix) { | 157 | bool assembleFrameworkCompatibilityMatrixKernels(CompatibilityMatrix* matrix) { |
158 | if (!matrix->framework.mKernels.empty()) { | ||
159 | // Remove hard-coded <kernel version="x.y.z" /> in legacy files. | ||
160 | std::cerr << "WARNING: framework compatibility matrix has hard-coded kernel" | ||
161 | << " requirements for version"; | ||
162 | for (const auto& kernel : matrix->framework.mKernels) { | ||
163 | std::cerr << " " << kernel.minLts(); | ||
164 | } | ||
165 | std::cerr << ". Hard-coded requirements are removed." << std::endl; | ||
166 | matrix->framework.mKernels.clear(); | ||
167 | } | ||
158 | for (const auto& pair : mKernels) { | 168 | for (const auto& pair : mKernels) { |
159 | std::vector<KernelConfig> configs; | 169 | std::vector<KernelConfig> configs; |
160 | if (!parseFilesForKernelConfigs(pair.second, &configs)) { | 170 | if (!parseFilesForKernelConfigs(pair.second, &configs)) { |
161 | return false; | 171 | return false; |
162 | } | 172 | } |
163 | bool added = false; | 173 | matrix->framework.mKernels.push_back( |
164 | for (auto& e : matrix->framework.mKernels) { | 174 | MatrixKernel{KernelVersion{pair.first}, std::move(configs)}); |
165 | if (e.minLts() == pair.first) { | ||
166 | e.mConfigs.insert(e.mConfigs.end(), configs.begin(), configs.end()); | ||
167 | added = true; | ||
168 | break; | ||
169 | } | ||
170 | } | ||
171 | if (!added) { | ||
172 | matrix->framework.mKernels.push_back( | ||
173 | MatrixKernel{KernelVersion{pair.first}, std::move(configs)}); | ||
174 | } | ||
175 | } | 175 | } |
176 | return true; | 176 | return true; |
177 | } | 177 | } |