Adding BCL CMake
This commit is contained in:
parent
121a3df7b0
commit
1eb6d9220b
26
src/bcl/cmake/FindGASNET_EX.cmake
Normal file
26
src/bcl/cmake/FindGASNET_EX.cmake
Normal file
@ -0,0 +1,26 @@
|
||||
## SPDX-FileCopyrightText: 2021 Benjamin Brock
|
||||
##
|
||||
## SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
if (TARGET GASNET_EX::GASNET_EX OR GASNET_EX_FOUND)
|
||||
return()
|
||||
endif()
|
||||
|
||||
find_path(GASNET_EX_INCLUDE_DIRS NAMES gasnetex.h)
|
||||
|
||||
#find_library(GASNET_EX_LIBRARIES NAMES gasnetex)
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(GASNET_EX
|
||||
DEFAULT_MSG
|
||||
GASNET_EX_INCLUDE_DIRS
|
||||
#GASNET_EX_LIBRARIES
|
||||
)
|
||||
|
||||
mark_as_advanced(GASNET_EX_INCLUDE_DIRS GASNET_EX_LIBRARIES)
|
||||
|
||||
add_library(GASNET_EX::GASNET_EX UNKNOWN IMPORTED)
|
||||
set_target_properties(GASNET_EX::GASNET_EX PROPERTIES
|
||||
#IMPORTED_LOCATION "${GASNET_EX_LIBRARIES}"
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${GASNET_EX_INCLUDE_DIRS}"
|
||||
)
|
||||
27
src/bcl/cmake/FindSHMEM.cmake
Normal file
27
src/bcl/cmake/FindSHMEM.cmake
Normal file
@ -0,0 +1,27 @@
|
||||
## SPDX-FileCopyrightText: 2021 Benjamin Brock
|
||||
##
|
||||
## SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
if (TARGET SHMEM::SHMEM OR SHMEM_FOUND)
|
||||
return()
|
||||
endif()
|
||||
|
||||
find_path(SHMEM_INCLUDE_DIRS NAMES shmem.h PATHS mpp)
|
||||
|
||||
#find_library(SHMEM_LIBRARIES NAMES gasnetex)
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(SHMEM
|
||||
DEFAULT_MSG
|
||||
GASNETEX_INCLUDE_DIRS
|
||||
#GASNETEX_LIBRARIES
|
||||
)
|
||||
|
||||
mark_as_advanced(SHMEM_INCLUDE_DIRS SHMEM_LIBRARIES)
|
||||
|
||||
add_library(SHMEM::SHMEM UNKNOWN IMPORTED)
|
||||
set_target_properties(SHMEM::SHMEM PROPERTIES
|
||||
#IMPORTED_LOCATION "${SHMEM_LIBRARIES}"
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${SHMEM_INCLUDE_DIRS}/.."
|
||||
)
|
||||
|
||||
26
src/bcl/cmake/FindUPCXX.cmake
Normal file
26
src/bcl/cmake/FindUPCXX.cmake
Normal file
@ -0,0 +1,26 @@
|
||||
## SPDX-FileCopyrightText: 2021 Benjamin Brock
|
||||
##
|
||||
## SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
if (TARGET UPCXX::UPCXX OR UPCXX_FOUND)
|
||||
return()
|
||||
endif()
|
||||
|
||||
find_path(UPCXX_INCLUDE_DIRS NAMES upcxx.h)
|
||||
|
||||
#find_library(UPCXX_LIBRARIES NAMES gasnetex)
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(UPCXX
|
||||
DEFAULT_MSG
|
||||
UPCXX_INCLUDE_DIRS
|
||||
#UPCXX_LIBRARIES
|
||||
)
|
||||
|
||||
mark_as_advanced(UPCXX_INCLUDE_DIRS UPCXX_LIBRARIES)
|
||||
|
||||
add_library(UPCXX::UPCXX UNKNOWN IMPORTED)
|
||||
set_target_properties(UPCXX::UPCXX PROPERTIES
|
||||
#IMPORTED_LOCATION "${UPCXX_LIBRARIES}"
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${UPCXX_INCLUDE_DIRS}"
|
||||
)
|
||||
50
src/bcl/cmake/bclConfig.cmake
Normal file
50
src/bcl/cmake/bclConfig.cmake
Normal file
@ -0,0 +1,50 @@
|
||||
## SPDX-FileCopyrightText: 2021 Benjamin Brock
|
||||
##
|
||||
## SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
cmake_minimum_required(VERSION 3.10)
|
||||
|
||||
# Guard against multiple 'find_package(bcl)' calls
|
||||
if (TARGET bcl OR bcl_FOUND)
|
||||
return()
|
||||
endif()
|
||||
|
||||
set(bcl_LOC ${CMAKE_CURRENT_LIST_DIR}/..)
|
||||
list(APPEND CMAKE_MODULE_PATH ${bcl_LOC}/cmake)
|
||||
|
||||
## Base target ##
|
||||
|
||||
add_library(bcl::core INTERFACE IMPORTED)
|
||||
#target_include_directories(bcl::core INTERFACE ${bcl_LOC})
|
||||
SET_PROPERTY(TARGET bcl::core APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${bcl_LOC})
|
||||
## MPI ##
|
||||
|
||||
find_package(MPI QUIET)
|
||||
if (TARGET MPI::MPI_CXX)
|
||||
add_library(bcl::mpi INTERFACE IMPORTED)
|
||||
#target_link_libraries(bcl::mpi INTERFACE bcl::core MPI::MPI_CXX)
|
||||
#target_compile_definitions(bcl::mpi INTERFACE BCL_MPI)
|
||||
SET_PROPERTY(TARGET bcl::mpi APPEND PROPERTY INTERFACE_COMPILE_DEFINITIONS BCL_MPI)
|
||||
endif()
|
||||
|
||||
## SHMEM ##
|
||||
|
||||
find_package(SHMEM QUIET MODULE)
|
||||
if (TARGET SHMEM::SHMEM)
|
||||
add_library(bcl::shmem INTERFACE IMPORTED)
|
||||
#target_link_libraries(bcl::shmem INTERFACE bcl::core SHMEM::SHMEM)
|
||||
#target_compile_definitions(bcl::shmem INTERFACE SHMEM)
|
||||
SET_PROPERTY(TARGET bcl::shmem APPEND PROPERTY INTERFACE_COMPILE_DEFINITIONS SHMEM)
|
||||
endif()
|
||||
|
||||
## GASNET_EX ##
|
||||
|
||||
find_package(GASNET_EX QUIET MODULE)
|
||||
if (TARGET GASNET_EX::GASNET_EX)
|
||||
add_library(bcl::gasnet_ex INTERFACE IMPORTED)
|
||||
#target_link_libraries(bcl::gasnet_ex INTERFACE bcl::core GASNET_EX::GASNET_EX)
|
||||
#target_compile_definitions(bcl::gasnet_ex INTERFACE GASNET_EX)
|
||||
SET_PROPERTY(TARGET bcl::gasnet_ex APPEND PROPERTY INTERFACE_COMPILE_DEFINITIONS GASNET_EX)
|
||||
endif()
|
||||
|
||||
set(bcl_FOUND ON)
|
||||
Loading…
x
Reference in New Issue
Block a user