From d3fe320b8361b5714c7d36b793196f56dbdfab21 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 20 Jan 2021 15:53:51 +1100 Subject: CMake: update checking utility to ignore nanovdb files --- build_files/cmake/cmake_consistency_check.py | 13 +++++++++---- build_files/cmake/cmake_consistency_check_config.py | 14 ++++++++++++-- 2 files changed, 21 insertions(+), 6 deletions(-) (limited to 'build_files') diff --git a/build_files/cmake/cmake_consistency_check.py b/build_files/cmake/cmake_consistency_check.py index cdf4058d394..2a2186cb50d 100755 --- a/build_files/cmake/cmake_consistency_check.py +++ b/build_files/cmake/cmake_consistency_check.py @@ -43,6 +43,12 @@ global_h = set() global_c = set() global_refs = {} +# Flatten `IGNORE_SOURCE_MISSING` to avoid nested looping. +IGNORE_SOURCE_MISSING = [ + (k, ig) for k, ig_list in IGNORE_SOURCE_MISSING + for ig in ig_list +] + # Ignore cmake file, path pairs. global_ignore_source_missing = {} for k, v in IGNORE_SOURCE_MISSING: @@ -178,6 +184,8 @@ def cmake_get_src(f): if not l: pass + elif l in local_ignore_source_missing: + local_ignore_source_missing.remove(l) elif l.startswith("$"): if context_name == "SRC": # assume if it ends with context_name we know about it @@ -227,10 +235,7 @@ def cmake_get_src(f): # replace_line(f, i - 1, new_path_rel) else: - if l in local_ignore_source_missing: - local_ignore_source_missing.remove(l) - else: - raise Exception("non existent include %s:%d -> %s" % (f, i, new_file)) + raise Exception("non existent include %s:%d -> %s" % (f, i, new_file)) # print(new_file) diff --git a/build_files/cmake/cmake_consistency_check_config.py b/build_files/cmake/cmake_consistency_check_config.py index c3a1036af42..8e626f8d056 100644 --- a/build_files/cmake/cmake_consistency_check_config.py +++ b/build_files/cmake/cmake_consistency_check_config.py @@ -34,8 +34,18 @@ IGNORE_SOURCE = ( # Ignore cmake file, path pairs. IGNORE_SOURCE_MISSING = ( - # Use for cycles stand-alone. - ("intern/cycles/util/CMakeLists.txt", "../../third_party/numaapi/include"), + ( # Use for cycles stand-alone. + "intern/cycles/util/CMakeLists.txt", ( + "../../third_party/numaapi/include", + )), + ( # Use for `WITH_NANOVDB`. + "intern/cycles/kernel/CMakeLists.txt", ( + "nanovdb/util/CSampleFromVoxels.h", + "nanovdb/util/SampleFromVoxels.h", + "nanovdb/NanoVDB.h", + "nanovdb/CNanoVDB.h", + ), + ), ) IGNORE_CMAKE = ( -- cgit v1.2.3