Simplify how we built the list of source files for vtkm_cont
This commit is contained in:
parent
d1f0b621ab
commit
9c668b61e0
@ -124,33 +124,27 @@ set(device_sources
|
||||
)
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
add_subdirectory(internal)
|
||||
add_subdirectory(arg)
|
||||
|
||||
set(backends )
|
||||
add_subdirectory(serial)
|
||||
list(APPEND sources $<TARGET_OBJECTS:vtkm_cont_serial>)
|
||||
|
||||
add_subdirectory(tbb)
|
||||
if(TARGET vtkm::tbb)
|
||||
list(APPEND sources $<TARGET_OBJECTS:vtkm_cont_tbb>)
|
||||
list(APPEND backends vtkm::tbb)
|
||||
endif()
|
||||
|
||||
add_subdirectory(cuda)
|
||||
if(TARGET vtkm::cuda)
|
||||
list(APPEND sources $<TARGET_OBJECTS:vtkm_cont_cuda>)
|
||||
list(APPEND backends vtkm::cuda)
|
||||
endif()
|
||||
|
||||
vtkm_library( NAME vtkm_cont
|
||||
SOURCES ${sources}
|
||||
TEMPLATE_SOURCES ${template_sources}
|
||||
HEADERS ${headers}
|
||||
WRAP_FOR_CUDA ${device_sources}
|
||||
)
|
||||
add_subdirectory(internal)
|
||||
add_subdirectory(arg)
|
||||
add_subdirectory(serial)
|
||||
add_subdirectory(tbb)
|
||||
add_subdirectory(cuda)
|
||||
|
||||
set(backends )
|
||||
if(TARGET vtkm::tbb)
|
||||
list(APPEND backends vtkm::tbb)
|
||||
endif()
|
||||
if(TARGET vtkm::cuda)
|
||||
list(APPEND backends vtkm::cuda)
|
||||
endif()
|
||||
target_link_libraries(vtkm_cont PUBLIC vtkm_compiler_flags ${backends})
|
||||
if(VTKm_ENABLE_MPI)
|
||||
if(TARGET vtkm_diy)
|
||||
# This will become a required dependency eventually.
|
||||
target_link_libraries(vtkm_cont PUBLIC vtkm_diy)
|
||||
endif()
|
||||
|
@ -37,13 +37,7 @@ if (NOT VTKm_ENABLE_CUDA)
|
||||
return()
|
||||
endif()
|
||||
|
||||
add_library(vtkm_cont_cuda OBJECT
|
||||
ArrayManagerExecutionCuda.cu
|
||||
CudaAllocator.cu
|
||||
target_sources(vtkm_cont PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/ArrayManagerExecutionCuda.cu
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/CudaAllocator.cu
|
||||
)
|
||||
target_compile_definitions(vtkm_cont_cuda PRIVATE vtkm_cont_EXPORTS)
|
||||
target_compile_options(vtkm_cont_cuda PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_COMPILE_OPTIONS>)
|
||||
target_compile_definitions(vtkm_cont_cuda PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_COMPILE_DEFINITIONS>)
|
||||
target_compile_features(vtkm_cont_cuda PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_COMPILE_FEATURES>)
|
||||
target_include_directories(vtkm_cont_cuda PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||
set_property(TARGET vtkm_cont_cuda PROPERTY POSITION_INDEPENDENT_CODE ${BUILD_SHARED_LIBS})
|
||||
|
@ -26,13 +26,7 @@ set(headers
|
||||
)
|
||||
vtkm_declare_headers(${headers})
|
||||
|
||||
add_library(vtkm_cont_serial OBJECT
|
||||
ArrayManagerExecutionSerial.cxx
|
||||
DeviceAdapterAlgorithmSerial.cxx
|
||||
target_sources(vtkm_cont PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/ArrayManagerExecutionSerial.cxx
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/DeviceAdapterAlgorithmSerial.cxx
|
||||
)
|
||||
target_compile_definitions(vtkm_cont_serial PRIVATE vtkm_cont_EXPORTS)
|
||||
target_compile_options(vtkm_cont_serial PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_COMPILE_OPTIONS>)
|
||||
target_compile_definitions(vtkm_cont_serial PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_COMPILE_DEFINITIONS>)
|
||||
target_compile_features(vtkm_cont_serial PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_COMPILE_FEATURES>)
|
||||
target_include_directories(vtkm_cont_serial PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||
set_property(TARGET vtkm_cont_serial PROPERTY POSITION_INDEPENDENT_CODE ${BUILD_SHARED_LIBS})
|
||||
|
@ -42,13 +42,7 @@ if (NOT VTKm_ENABLE_TBB)
|
||||
return()
|
||||
endif()
|
||||
|
||||
add_library(vtkm_cont_tbb OBJECT
|
||||
ArrayManagerExecutionTBB.cxx
|
||||
DeviceAdapterAlgorithmTBB.cxx
|
||||
target_sources(vtkm_cont PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/ArrayManagerExecutionTBB.cxx
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/DeviceAdapterAlgorithmTBB.cxx
|
||||
)
|
||||
target_compile_definitions(vtkm_cont_tbb PRIVATE vtkm_cont_EXPORTS)
|
||||
target_compile_options(vtkm_cont_tbb PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_COMPILE_OPTIONS>)
|
||||
target_compile_definitions(vtkm_cont_tbb PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_COMPILE_DEFINITIONS>)
|
||||
target_compile_features(vtkm_cont_tbb PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_COMPILE_FEATURES>)
|
||||
target_include_directories(vtkm_cont_tbb PRIVATE $<TARGET_PROPERTY:vtkm_cont,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||
set_property(TARGET vtkm_cont_tbb PROPERTY POSITION_INDEPENDENT_CODE ${BUILD_SHARED_LIBS})
|
||||
|
Loading…
Reference in New Issue
Block a user