From 893af9f5d024a881ab5876bcdf567cd51a0ae478 Mon Sep 17 00:00:00 2001 From: Tom Lin Date: Sat, 10 Jun 2023 21:08:29 +0100 Subject: [PATCH] Fix compatibility with Kokkos 4+ --- src/kokkos/KokkosStream.cpp | 2 +- src/kokkos/KokkosStream.hpp | 3 --- src/kokkos/model.cmake | 12 ++++++------ 3 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/kokkos/KokkosStream.cpp b/src/kokkos/KokkosStream.cpp index 00efe92..9cf32eb 100644 --- a/src/kokkos/KokkosStream.cpp +++ b/src/kokkos/KokkosStream.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2015-16 Tom Deakin, Simon McIntosh-Smith, +// Copyright (c) 2015-23 Tom Deakin, Simon McIntosh-Smith, Wei-Chen (Tom) Lin // University of Bristol HPC // // For full license terms please see the LICENSE file distributed with this diff --git a/src/kokkos/KokkosStream.hpp b/src/kokkos/KokkosStream.hpp index 3aa7cf5..a410a86 100644 --- a/src/kokkos/KokkosStream.hpp +++ b/src/kokkos/KokkosStream.hpp @@ -10,9 +10,6 @@ #include #include -#include -#include - #include "Stream.h" #define IMPLEMENTATION_STRING "Kokkos" diff --git a/src/kokkos/model.cmake b/src/kokkos/model.cmake index a95fdba..927bc68 100644 --- a/src/kokkos/model.cmake +++ b/src/kokkos/model.cmake @@ -10,29 +10,29 @@ register_flag_optional(KOKKOS_IN_TREE See https://github.com/kokkos/kokkos/blob/master/BUILD.md for all available options" "") register_flag_optional(KOKKOS_IN_PACKAGE - "Use if Kokkos is part of a package dependency: - Path to package R-Path containing Kokkos libs" "") + "Absolute path to package R-Path containing Kokkos libs. + Use this instead of KOKKOS_IN_TREE if Kokkos is from a package manager like Spack." "") # compiler vendor and arch specific flags set(KOKKOS_FLAGS_CPU_INTEL -qopt-streaming-stores=always) macro(setup) - set(CMAKE_CXX_STANDARD 14) + set(CMAKE_CXX_STANDARD 17) # Kokkos 4+ requires CXX >= 17 cmake_policy(SET CMP0074 NEW) #see https://github.com/kokkos/kokkos/blob/master/BUILD.md if (EXISTS "${KOKKOS_IN_TREE}") - message(STATUS "Building using in-tree Kokkos source at `${KOKKOS_IN_TREE}`") + message(STATUS "Build using in-tree Kokkos source at `${KOKKOS_IN_TREE}`") add_subdirectory(${KOKKOS_IN_TREE} ${CMAKE_BINARY_DIR}/kokkos) register_link_library(Kokkos::kokkos) elseif (EXISTS "${KOKKOS_IN_PACKAGE}") - message(STATUS "Building using packaged Kokkos at `${KOKKOS_IN_PACKAGE}`") + message(STATUS "Build using packaged Kokkos at `${KOKKOS_IN_PACKAGE}`") set (Kokkos_DIR "${KOKKOS_IN_PACKAGE}/lib64/cmake/Kokkos") find_package(Kokkos REQUIRED) register_link_library(Kokkos::kokkos) else() - message(FATAL_ERROR "Neither `${KOKKOS_IN_TREE}`, or `${KOKKOS_IN_PACKAGE}` exists") + message(FATAL_ERROR "Neither `KOKKOS_IN_TREE`, or `KOKKOS_IN_PACKAGE` was set!") endif () register_append_compiler_and_arch_specific_cxx_flags(