[libc] Skip tests that depend on undefined targets
authorJoseph Huber <jhuber6@vols.utk.edu>
Fri, 2 Dec 2022 19:30:35 +0000 (13:30 -0600)
committerJoseph Huber <jhuber6@vols.utk.edu>
Fri, 2 Dec 2022 22:39:45 +0000 (16:39 -0600)
When we search through the dependencies for a test we somtimes query
`get_target_property` on a target that has not been defined. This is the
case for targets that have minimal entrypoints defined such as the WIP
GPU target. This patch changes all tests whose dependencies are
undefined to be skipped entirely.

Reviewed By: sivachandra, lntue, michaelrj

Differential Revision: https://reviews.llvm.org/D139216

libc/cmake/modules/LLVMLibCTestRules.cmake

index 5eb3d4e..bc2f85e 100644 (file)
@@ -16,6 +16,11 @@ function(get_object_files_for_test result skipped_entrypoints_list)
   set(object_files "")
   set(skipped_list "")
   foreach(dep IN LISTS ARGN)
+    if (NOT TARGET ${dep})
+      # Skip any tests whose dependencies have not been defined.
+      list(APPEND skipped_list ${dep})
+      continue()
+    endif()
     get_target_property(dep_type ${dep} "TARGET_TYPE")
     if(NOT dep_type)
       # Target for which TARGET_TYPE property is not set do not