wren romano 062f29c8d0 [mlir][sparse] Moving Enums.h into Dialect/SparseTensor/IR
Move the SparseTensorEnums library out of the ExecutionEngine directory and into Dialect/SparseTensor/IR.

Depends On D136002

Reviewed By: aartbik

Differential Revision: https://reviews.llvm.org/D136005
2022-10-18 15:15:18 -07:00

29 lines
1.1 KiB
CMake

# Unlike mlir_float16_utils, mlir_c_runner_utils, etc, we do *not* make
# this a shared library: because doing so causes issues when building
# on Windows. In particular, various functions take/return `std::vector`
# but that class is not designed with dllimport/dllexport pragma,
# therefore it cannot be safely/correctly used across DLL boundaries.
# Consequently, we avoid using the "mlir_xxx_utils" naming scheme, since
# that is reserved/intended for shared libraries only.
add_mlir_library(MLIRSparseTensorRuntime
File.cpp
NNZ.cpp
Storage.cpp
EXCLUDE_FROM_LIBMLIR
LINK_LIBS PUBLIC
MLIRSparseTensorEnums
mlir_float16_utils
)
set_property(TARGET MLIRSparseTensorRuntime PROPERTY CXX_STANDARD 17)
# To make sure we adhere to the style guide:
# <https://llvm.org/docs/CodingStandards.html#provide-a-virtual-method-anchor-for-classes-in-headers>
check_cxx_compiler_flag(-Wweak-vtables
COMPILER_SUPPORTS_WARNING_WEAK_VTABLES)
if(COMPILER_SUPPORTS_WARNING_WEAK_VTABLES)
target_compile_options(MLIRSparseTensorRuntime PUBLIC
"-Wweak-vtables")
endif()