Fixing slurm detection in cmake
This commit is contained in:
@@ -17,8 +17,19 @@ include(cmake/Catch2.cmake)
|
|||||||
option(DAGGY_ENABLE_SLURM "add support for SLURM executor" ON)
|
option(DAGGY_ENABLE_SLURM "add support for SLURM executor" ON)
|
||||||
|
|
||||||
if (DAGGY_ENABLE_SLURM)
|
if (DAGGY_ENABLE_SLURM)
|
||||||
add_compile_options(-DDAGGY_ENABLE_SLURM)
|
find_library(SLURM_LIB libslurm.a slurm REQUIRED)
|
||||||
find_library(slurm slurm REQUIRED)
|
find_path(SLURM_INCLUDE_DIR "slurm/slurm.h" REQUIRED)
|
||||||
|
|
||||||
|
if (SLURM_LIB MATCHES ".*\.a")
|
||||||
|
add_library(slurm STATIC IMPORTED)
|
||||||
|
else()
|
||||||
|
add_library(slurm SHARED IMPORTED)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set_target_properties(slurm PROPERTIES IMPORTED_LOCATION ${SLURM_LIB})
|
||||||
|
target_include_directories(slurm INTERFACE ${SLURM_INCLUDE_DIR})
|
||||||
|
target_compile_definitions(slurm INTERFACE DAGGY_ENABLE_SLURM)
|
||||||
|
target_link_libraries(slurm INTERFACE dl resolv)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
add_subdirectory(daggy)
|
add_subdirectory(daggy)
|
||||||
|
|||||||
@@ -1,11 +1,12 @@
|
|||||||
project(libdaggy)
|
project(libdaggy)
|
||||||
|
|
||||||
SET(LINK_LIBS pistache pthread rapidjson better-enums)
|
add_library(${PROJECT_NAME} STATIC)
|
||||||
|
|
||||||
IF (DAGGY_ENABLE_SLURM)
|
IF (DAGGY_ENABLE_SLURM)
|
||||||
SET(LINK_LIBS ${LINK_LIBS} slurm)
|
target_link_libraries(${PROJECT_NAME} slurm)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
file(GLOB_RECURSE SOURCES src/*.cpp)
|
|
||||||
add_library(${PROJECT_NAME} STATIC ${SOURCES})
|
|
||||||
target_include_directories(${PROJECT_NAME} PUBLIC include)
|
target_include_directories(${PROJECT_NAME} PUBLIC include)
|
||||||
target_link_libraries(${PROJECT_NAME} ${LINK_LIBS})
|
target_link_libraries(${PROJECT_NAME} pistache pthread rapidjson better-enums)
|
||||||
|
|
||||||
|
add_subdirectory(src)
|
||||||
|
|||||||
@@ -201,4 +201,4 @@ int main(int argc, char **argv) {
|
|||||||
std::this_thread::sleep_for(std::chrono::seconds(30));
|
std::this_thread::sleep_for(std::chrono::seconds(30));
|
||||||
}
|
}
|
||||||
server.shutdown();
|
server.shutdown();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user