@@ -107,6 +107,7 @@ endif()
107107
108108find_package (argparse REQUIRED )
109109find_package (pugixml REQUIRED )
110+ find_package (OpenMP )
110111
111112# Configuration
112113# =============
@@ -128,14 +129,13 @@ function(configure_kernel kernel)
128129 string (APPEND XEUS_CPP_WASM_KERNEL_EXTRA_ARGS_JSON "\" ${arg} \" , " )
129130 endforeach ()
130131 else ()
131- set (XEUS_CPP_PATH "$ENV{PATH} " )
132- set (XEUS_CPP_LD_LIBRARY_PATH "$ENV{LD_LIBRARY_PATH} " )
133132 set (XEUS_CPP_INCLUDE_DIR ${CMAKE_INSTALL_PREFIX} /include)
133+ if (${kernel} MATCHES "omp/$" )
134+ set (XEUS_CPP_OMP "${OpenMP_CXX_FLAGS} " )
135+ endif ()
134136 endif ()
135137 if (WIN32 )
136138 string (REPLACE "\\ " "/" kernel "${kernel} " )
137- string (REPLACE "\\ " "/" XEUS_CPP_PATH "${XEUS_CPP_PATH} " )
138- string (REPLACE "\\ " "/" XEUS_CPP_LD_LIBRARY_PATH "${XEUS_CPP_LD_LIBRARY_PATH} " )
139139 string (REPLACE "\\ " "/" XEUS_CPP_RESOURCE_DIR "${XEUS_CPP_RESOURCE_DIR} " )
140140 string (REPLACE "\\ " "/" XEUS_CPP_INCLUDE_DIR "${XEUS_CPP_INCLUDE_DIR} " )
141141 endif ()
@@ -167,6 +167,10 @@ configure_kernel("/share/jupyter/kernels/xcpp23/")
167167configure_kernel ("/share/jupyter/kernels/xc11/" )
168168configure_kernel ("/share/jupyter/kernels/xc17/" )
169169configure_kernel ("/share/jupyter/kernels/xc23/" )
170+ if (NOT EMSCRIPTEN)
171+ configure_kernel ("/share/jupyter/kernels/xcpp23-omp/" )
172+ configure_kernel ("/share/jupyter/kernels/xc23-omp/" )
173+ endif ()
170174
171175# Source files
172176# ============
@@ -339,8 +343,21 @@ macro(xeus_cpp_create_target target_name linkage output_name)
339343 target_compile_options (${target_name} PRIVATE "/MD$<$<CONFIG :Debug >:d >" )
340344 endif ()
341345 elseif (NOT EMSCRIPTEN)
346+ find_package (CURL REQUIRED )
347+
348+ # Add CURL_STATICLIB definition if linking statically
349+ if (CURL_STATICLIB)
350+ target_compile_definitions (${target_name} PUBLIC CURL_STATICLIB )
351+ endif ()
352+
353+ # Link against the correct libcurl target
354+ if (CURL_FOUND)
355+ target_include_directories (${target_name} PRIVATE ${CURL_INCLUDE_DIRS} )
356+ target_link_libraries (${target_name} PRIVATE ${CURL_LIBRARIES} )
357+ endif ()
358+
342359 # Curl initialised specifically for xassist
343- target_link_libraries (${target_name} PUBLIC ${XEUS_CPP_XEUS_TARGET} clangCppInterOp pugixml argparse::argparse curl )
360+ target_link_libraries (${target_name} PUBLIC ${XEUS_CPP_XEUS_TARGET} clangCppInterOp pugixml argparse::argparse CURL::libcurl )
344361 else ()
345362 target_link_libraries (${target_name} PUBLIC ${XEUS_CPP_XEUS_TARGET} clangCppInterOp pugixml argparse::argparse )
346363 endif ()
0 commit comments