[CMake][TableGen] Simplify code by using list(TRANSFORM)
authorRaul Tambre <raul.tambre@cleveron.com>
Sat, 5 Sep 2020 15:21:05 +0000 (18:21 +0300)
committerRaul Tambre <raul.tambre@cleveron.com>
Mon, 7 Sep 2020 07:53:20 +0000 (10:53 +0300)
LLVM requires CMake 3.13.4 so now we can simplify the code.

Reviewed By: phosek

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

llvm/cmake/modules/TableGen.cmake

index 73c1e96..d58ee1d 100644 (file)
@@ -80,14 +80,6 @@ function(tablegen project ofn)
     set(tblgen_change_flag "--write-if-changed")
   endif()
 
-  # With CMake 3.12 this can be reduced to:
-  # get_directory_property(tblgen_includes "INCLUDE_DIRECTORIES")
-  # list(TRANSFORM tblgen_includes PREPEND -I)
-  set(tblgen_includes)
-  get_directory_property(includes "INCLUDE_DIRECTORIES")
-  foreach(include ${includes})
-    list(APPEND tblgen_includes -I ${include})
-  endforeach()
   # We need both _TABLEGEN_TARGET and _TABLEGEN_EXE in the  DEPENDS list
   # (both the target and the file) to have .inc files rebuilt on
   # a tablegen change, as cmake does not propagate file-level dependencies
@@ -97,6 +89,9 @@ function(tablegen project ofn)
   # dependency twice in the result file when
   # ("${${project}_TABLEGEN_TARGET}" STREQUAL "${${project}_TABLEGEN_EXE}")
   # but lets us having smaller and cleaner code here.
+  get_directory_property(tblgen_includes INCLUDE_DIRECTORIES)
+  list(TRANSFORM tblgen_includes PREPEND -I)
+
   add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${ofn}
     COMMAND ${${project}_TABLEGEN_EXE} ${ARGN} -I ${CMAKE_CURRENT_SOURCE_DIR}
     ${tblgen_includes}