[Mlir-commits] [mlir] 444720c - [MLIR][cmake] refactor lib/Interfaces/CMakeLists.txt

Stephen Neuendorffer llvmlistbot at llvm.org
Fri May 15 14:41:18 PDT 2020


Author: Stephen Neuendorffer
Date: 2020-05-15T14:37:09-07:00
New Revision: 444720c250d50e13cc99a3dc2cd29606889c94e7

URL: https://github.com/llvm/llvm-project/commit/444720c250d50e13cc99a3dc2cd29606889c94e7
DIFF: https://github.com/llvm/llvm-project/commit/444720c250d50e13cc99a3dc2cd29606889c94e7.diff

LOG: [MLIR][cmake] refactor lib/Interfaces/CMakeLists.txt

Reduce the boilerplate here

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

Added: 
    

Modified: 
    mlir/lib/Interfaces/CMakeLists.txt

Removed: 
    


################################################################################
diff  --git a/mlir/lib/Interfaces/CMakeLists.txt b/mlir/lib/Interfaces/CMakeLists.txt
index 806f79f2e493..d0eea1ccc873 100644
--- a/mlir/lib/Interfaces/CMakeLists.txt
+++ b/mlir/lib/Interfaces/CMakeLists.txt
@@ -8,93 +8,27 @@ set(LLVM_OPTIONAL_SOURCES
   ViewLikeInterface.cpp
   )
 
-add_mlir_library(MLIRCallInterfaces
-  CallInterfaces.cpp
-
-  ADDITIONAL_HEADER_DIRS
-  ${MLIR_MAIN_INCLUDE_DIR}/mlir/Interfaces
-
-  DEPENDS
-  MLIRCallInterfacesIncGen
-
-  LINK_LIBS PUBLIC
-  MLIRIR
-  )
-
-add_mlir_library(MLIRControlFlowInterfaces
-  ControlFlowInterfaces.cpp
-
-  ADDITIONAL_HEADER_DIRS
-  ${MLIR_MAIN_INCLUDE_DIR}/mlir/Interfaces
-
-  DEPENDS
-  MLIRControlFlowInterfacesIncGen
+function(add_mlir_interface_library name)
+  add_mlir_library(MLIR${name}
+    ${name}.cpp
 
-  LINK_LIBS PUBLIC
-  MLIRIR
-  )
+    ADDITIONAL_HEADER_DIRS
+    ${MLIR_MAIN_INCLUDE_DIR}/mlir/Interfaces
 
-add_mlir_library(MLIRDerivedAttributeOpInterface
-  DerivedAttributeOpInterface.cpp
+    DEPENDS
+    MLIR${name}IncGen
 
-  ADDITIONAL_HEADER_DIRS
-  ${MLIR_MAIN_INCLUDE_DIR}/mlir/Interfaces
+    LINK_LIBS PUBLIC
+    MLIRIR
+    )
+endfunction(add_mlir_interface_library)
 
-  DEPENDS
-  MLIRDerivedAttributeOpInterfaceIncGen
 
-  LINK_LIBS PUBLIC
-  MLIRIR
-  )
-
-add_mlir_library(MLIRInferTypeOpInterface
-  InferTypeOpInterface.cpp
-
-  ADDITIONAL_HEADER_DIRS
-  ${MLIR_MAIN_INCLUDE_DIR}/mlir/Interfaces
-
-  DEPENDS
-  MLIRInferTypeOpInterfaceIncGen
-
-  LINK_LIBS PUBLIC
-  MLIRIR
-  )
+add_mlir_interface_library(CallInterfaces)
+add_mlir_interface_library(ControlFlowInterfaces)
+add_mlir_interface_library(DerivedAttributeOpInterface)
+add_mlir_interface_library(InferTypeOpInterface)
+add_mlir_interface_library(LoopLikeInterface)
+add_mlir_interface_library(SideEffectInterfaces)
+add_mlir_interface_library(ViewLikeInterface)
 
-add_mlir_library(MLIRLoopLikeInterface
-  LoopLikeInterface.cpp
-
-  ADDITIONAL_HEADER_DIRS
-  ${MLIR_MAIN_INCLUDE_DIR}/mlir/Interfaces
-
-  DEPENDS
-  MLIRLoopLikeInterfaceIncGen
-
-  LINK_LIBS PUBLIC
-  MLIRIR
-  )
-
-add_mlir_library(MLIRSideEffectInterfaces
-  SideEffectInterfaces.cpp
-
-  ADDITIONAL_HEADER_DIRS
-  ${MLIR_MAIN_INCLUDE_DIR}/mlir/Interfaces
-
-  DEPENDS
-  MLIRSideEffectInterfacesIncGen
-
-  LINK_LIBS PUBLIC
-  MLIRIR
-  )
-
-add_mlir_library(MLIRViewLikeInterface
-  ViewLikeInterface.cpp
-
-  ADDITIONAL_HEADER_DIRS
-  ${MLIR_MAIN_INCLUDE_DIR}/mlir/Interfaces
-
-  DEPENDS
-  MLIRViewLikeInterfaceIncGen
-
-  LINK_LIBS PUBLIC
-  MLIRIR
-  )


        


More information about the Mlir-commits mailing list