Skip to content

Commit

Permalink
Merge pull request #449 from Wentzell/master
Browse files Browse the repository at this point in the history
Change finufft targets to provide proper install interface include dirs
  • Loading branch information
ahbarnett authored Jun 4, 2024
2 parents 7535a82 + 604725e commit e4ad80e
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,8 @@ function(set_finufft_options target)
target_compile_options(${target} PRIVATE $<$<CONFIG:Release,RelWithDebInfo>:-fcx-limited-range>)
endif ()

target_include_directories(${target} PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include")
target_include_directories(${target} PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>)
target_include_directories(${target} SYSTEM INTERFACE $<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>)
if (FINUFFT_USE_OPENMP)
target_link_libraries(${target} PRIVATE OpenMP::OpenMP_CXX)
# there are issues on windows with OpenMP and CMake, so we need to manually add the flags
Expand Down Expand Up @@ -192,7 +193,8 @@ if(FINUFFT_USE_CPU)
if(NOT WIN32)
target_link_libraries(finufft PUBLIC m)
endif()
target_include_directories(finufft PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include")
target_include_directories(finufft PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>)
target_include_directories(finufft SYSTEM INTERFACE $<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>)

add_library(finufft_static STATIC src/utils_precindep.cpp contrib/legendre_rule_fast.cpp)
set_finufft_options(finufft_static)
Expand All @@ -201,7 +203,8 @@ if(FINUFFT_USE_CPU)
if(NOT WIN32)
target_link_libraries(finufft_static PUBLIC m)
endif()
target_include_directories(finufft_static PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include")
target_include_directories(finufft_static PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>)
target_include_directories(finufft_static SYSTEM INTERFACE $<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>)

file(GLOB FINUFFT_PUBLIC_HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/include/finufft*.h")
set_target_properties(finufft PROPERTIES PUBLIC_HEADER "${FINUFFT_PUBLIC_HEADERS}")
Expand Down

0 comments on commit e4ad80e

Please sign in to comment.