diff --git a/CMakeLists.txt b/CMakeLists.txt index d9f17015..30d17263 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -132,6 +132,10 @@ function(configure_kernel kernel) set(XEUS_CPP_RESOURCE_DIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/clang/${CPPINTEROP_LLVM_VERSION_MAJOR}) set(XEUS_CPP_INCLUDE_DIR ${CMAKE_INSTALL_PREFIX}/include) + if(${kernel} MATCHES "omp/$") + set(XEUS_CPP_OMP "-fopenmp") + endif() + if (WIN32) string(REPLACE "\\" "/" kernel "${kernel}") string(REPLACE "\\" "/" XEUS_CPP_PATH "${XEUS_CPP_PATH}") @@ -162,7 +166,9 @@ message("Configure kernels: ...") configure_kernel("/share/jupyter/kernels/xcpp11/") configure_kernel("/share/jupyter/kernels/xcpp14/") configure_kernel("/share/jupyter/kernels/xcpp17/") +configure_kernel("/share/jupyter/kernels/xcpp17-omp/") configure_kernel("/share/jupyter/kernels/xcpp20/") +configure_kernel("/share/jupyter/kernels/xcpp20-omp/") # Source files # ============ diff --git a/share/jupyter/kernels/xcpp11/kernel.json.in b/share/jupyter/kernels/xcpp11/kernel.json.in index 1f4f73a6..05ac80b5 100644 --- a/share/jupyter/kernels/xcpp11/kernel.json.in +++ b/share/jupyter/kernels/xcpp11/kernel.json.in @@ -10,7 +10,7 @@ "{connection_file}", "-resource-dir", "@XEUS_CPP_RESOURCE_DIR@", "-I", "@XEUS_CPP_INCLUDE_DIR@", - "-std=c++11"@XEUS_CPP_OMP@ + "-std=c++11","@XEUS_CPP_OMP@" ], "language": "cpp", "metadata": {"debugger": false} diff --git a/share/jupyter/kernels/xcpp14/kernel.json.in b/share/jupyter/kernels/xcpp14/kernel.json.in index b6718dcf..35d7ce2a 100644 --- a/share/jupyter/kernels/xcpp14/kernel.json.in +++ b/share/jupyter/kernels/xcpp14/kernel.json.in @@ -13,7 +13,7 @@ "-std=c++14", "-fno-exceptions", "-O2", - "-v"@XEUS_CPP_OMP@ + "-v","@XEUS_CPP_OMP@" ], "language": "cpp", "metadata": {"debugger": false} diff --git a/share/jupyter/kernels/xcpp17-omp/kernel.json.in b/share/jupyter/kernels/xcpp17-omp/kernel.json.in index f74379f1..c3215c94 100644 --- a/share/jupyter/kernels/xcpp17-omp/kernel.json.in +++ b/share/jupyter/kernels/xcpp17-omp/kernel.json.in @@ -10,7 +10,7 @@ "{connection_file}", "-resource-dir", "@XEUS_CPP_RESOURCE_DIR@", "-I", "@XEUS_CPP_INCLUDE_DIR@", - "-std=c++17"@XEUS_CPP_OMP@ + "-std=c++17","@XEUS_CPP_OMP@" ], "language": "cpp", "metadata": {"debugger": false diff --git a/share/jupyter/kernels/xcpp17/kernel.json.in b/share/jupyter/kernels/xcpp17/kernel.json.in index ea76e2d9..efda6c85 100644 --- a/share/jupyter/kernels/xcpp17/kernel.json.in +++ b/share/jupyter/kernels/xcpp17/kernel.json.in @@ -10,7 +10,7 @@ "{connection_file}", "-resource-dir", "@XEUS_CPP_RESOURCE_DIR@", "-I", "@XEUS_CPP_INCLUDE_DIR@", - "-std=c++17"@XEUS_CPP_OMP@ + "-std=c++17","@XEUS_CPP_OMP@" ], "language": "cpp", "metadata": {"debugger": false diff --git a/share/jupyter/kernels/xcpp20-omp/kernel.json.in b/share/jupyter/kernels/xcpp20-omp/kernel.json.in new file mode 100644 index 00000000..8902b0a2 --- /dev/null +++ b/share/jupyter/kernels/xcpp20-omp/kernel.json.in @@ -0,0 +1,18 @@ +{ + "display_name": "C++20 (xcpp+OpenMP)", + "env": { + "PATH":"@XEUS_CPP_PATH@", + "LD_LIBRARY_PATH":"@XEUS_CPP_LD_LIBRARY_PATH@" + }, + "argv": [ + "@XEUS_CPP_KERNELSPEC_PATH@xcpp", + "-f", + "{connection_file}", + "-resource-dir", "@XEUS_CPP_RESOURCE_DIR@", + "-I", "@XEUS_CPP_INCLUDE_DIR@", + "-std=c++20","@XEUS_CPP_OMP@" + ], + "language": "cpp", + "metadata": {"debugger": false + } +} diff --git a/share/jupyter/kernels/xcpp20-omp/logo-32x32.png b/share/jupyter/kernels/xcpp20-omp/logo-32x32.png new file mode 100644 index 00000000..c09c4585 Binary files /dev/null and b/share/jupyter/kernels/xcpp20-omp/logo-32x32.png differ diff --git a/share/jupyter/kernels/xcpp20-omp/logo-64x64.png b/share/jupyter/kernels/xcpp20-omp/logo-64x64.png new file mode 100644 index 00000000..396c2446 Binary files /dev/null and b/share/jupyter/kernels/xcpp20-omp/logo-64x64.png differ diff --git a/share/jupyter/kernels/xcpp20-omp/logo-svg.svg b/share/jupyter/kernels/xcpp20-omp/logo-svg.svg new file mode 100644 index 00000000..5e117077 --- /dev/null +++ b/share/jupyter/kernels/xcpp20-omp/logo-svg.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + diff --git a/share/jupyter/kernels/xcpp20/kernel.json.in b/share/jupyter/kernels/xcpp20/kernel.json.in index 3736754f..509e0326 100644 --- a/share/jupyter/kernels/xcpp20/kernel.json.in +++ b/share/jupyter/kernels/xcpp20/kernel.json.in @@ -10,7 +10,7 @@ "{connection_file}", "-resource-dir", "@XEUS_CPP_RESOURCE_DIR@", "-I", "@XEUS_CPP_INCLUDE_DIR@", - "-std=c++20"@XEUS_CPP_OMP@ + "-std=c++20","@XEUS_CPP_OMP@" ], "language": "cpp", "metadata": {"debugger": false