diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt index 967f22975978c177aa53e5918cf27a3a7e49869d..a9ea3a059fb9d14bab34adb1f2b0bbefa30dda37 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt @@ -480,6 +480,8 @@ if(ENABLE_KOKKOS) ${KOKKOS_PKG_SOURCES_DIR}/neigh_list_kokkos.cpp ${KOKKOS_PKG_SOURCES_DIR}/neigh_bond_kokkos.cpp ${KOKKOS_PKG_SOURCES_DIR}/fix_nh_kokkos.cpp + ${KOKKOS_PKG_SOURCES_DIR}/nbin_kokkos.cpp + ${KOKKOS_PKG_SOURCES_DIR}/npair_kokkos.cpp ${KOKKOS_PKG_SOURCES_DIR}/domain_kokkos.cpp ${KOKKOS_PKG_SOURCES_DIR}/modify_kokkos.cpp) set_property(GLOBAL PROPERTY "KOKKOS_PKG_SOURCES" "${KOKKOS_PKG_SOURCES}") @@ -487,6 +489,17 @@ if(ENABLE_KOKKOS) # detects styles which have KOKKOS version RegisterStylesExt(${KOKKOS_PKG_SOURCES_DIR} kokkos KOKKOS_PKG_SOURCES) + # register kokkos-only styles + RegisterNBinStyle(${KOKKOS_PKG_SOURCES_DIR}/nbin_kokkos.h) + RegisterNPairStyle(${KOKKOS_PKG_SOURCES_DIR}/npair_kokkos.h) + + if(ENABLE_USER-DPD) + get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES) + list(APPEND KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/npair_ssa_kokkos.cpp) + RegisterNPairStyle(${KOKKOS_PKG_SOURCES_DIR}/npair_ssa_kokkos.h) + set_property(GLOBAL PROPERTY "KOKKOS_PKG_SOURCES" "${KOKKOS_PKG_SOURCES}") + endif() + get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES) list(APPEND LIB_SOURCES ${KOKKOS_PKG_SOURCES}) diff --git a/cmake/Modules/StyleHeaderUtils.cmake b/cmake/Modules/StyleHeaderUtils.cmake index 32054c53ba6c386b7db91f492e50ce614f0ecf35..c6f580f4632d92fabc4fe6d2b95464b18a5c9487 100644 --- a/cmake/Modules/StyleHeaderUtils.cmake +++ b/cmake/Modules/StyleHeaderUtils.cmake @@ -11,6 +11,12 @@ function(FindStyleHeaders path style_class file_pattern headers) set_property(GLOBAL PROPERTY ${headers} "${hlist}") endfunction(FindStyleHeaders) +function(AddStyleHeader path headers) + get_property(hlist GLOBAL PROPERTY ${headers}) + list(APPEND hlist ${path}) + set_property(GLOBAL PROPERTY ${headers} "${hlist}") +endfunction(AddStyleHeader) + function(FindStyleHeadersExt path style_class extension headers sources) get_property(hlist GLOBAL PROPERTY ${headers}) get_property(slist GLOBAL PROPERTY ${sources}) @@ -62,6 +68,22 @@ function(GenerateStyleHeader path property style) CreateStyleHeader("${path}" "style_${style}.h" ${files}) endfunction(GenerateStyleHeader) +function(RegisterNBinStyles search_path) + FindStyleHeaders(${search_path} NBIN_CLASS nbin_ NBIN ) # nbin ) # neighbor +endfunction(RegisterNBinStyles) + +function(RegisterNPairStyles search_path) + FindStyleHeaders(${search_path} NPAIR_CLASS npair_ NPAIR ) # npair ) # neighbor +endfunction(RegisterNPairStyles) + +function(RegisterNBinStyle path) + AddStyleHeader(${path} NBIN) +endfunction(RegisterNBinStyle) + +function(RegisterNPairStyle path) + AddStyleHeader(${path} NPAIR) +endfunction(RegisterNPairStyle) + function(RegisterStyles search_path) FindStyleHeaders(${search_path} ANGLE_CLASS angle_ ANGLE ) # angle ) # force FindStyleHeaders(${search_path} ATOM_CLASS atom_vec_ ATOM_VEC ) # atom ) # atom atom_vec_hybrid