Skip to content

Commit ce3f8e9

Browse files
Merge xeus-clang-repl mini - new kernels (#58)
* Add new kernel configuration logic * Reduce using file(GLOB) in kernels config
1 parent bb9bb85 commit ce3f8e9

18 files changed

+202
-9
lines changed

CMakeLists.txt

+28-7
Original file line numberDiff line numberDiff line change
@@ -126,13 +126,34 @@ if (NOT DEFINED XEUS_CPP_KERNELSPEC_PATH)
126126
set(XEUS_CPP_KERNELSPEC_PATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/")
127127
endif ()
128128

129-
set(XEUS_CPP_PATH "$ENV{PATH}")
130-
set(XEUS_CPP_LD_LIBRARY_PATH "$ENV{LD_LIBRARY_PATH}")
131-
set(XEUS_CPP_RESOURCE_DIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/clang/${CppInterOp_CLANG_VERSION})
132-
configure_file (
133-
"${CMAKE_CURRENT_SOURCE_DIR}/share/jupyter/kernels/xcpp/kernel.json.in"
134-
"${CMAKE_CURRENT_BINARY_DIR}/share/jupyter/kernels/xcpp/kernel.json"
135-
)
129+
function(configure_kernel kernel)
130+
set(XEUS_CPP_PATH "$ENV{PATH}")
131+
set(XEUS_CPP_LD_LIBRARY_PATH "$ENV{LD_LIBRARY_PATH}")
132+
set(XEUS_CPP_RESOURCE_DIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/clang/${CppInterOp_CLANG_VERSION})
133+
134+
configure_file (
135+
"${CMAKE_CURRENT_SOURCE_DIR}/${kernel}/kernel.json.in"
136+
"${CMAKE_CURRENT_BINARY_DIR}/${kernel}/kernel.json")
137+
138+
configure_file (
139+
"${CMAKE_CURRENT_SOURCE_DIR}/${kernel}/logo-32x32.png"
140+
"${CMAKE_CURRENT_BINARY_DIR}/${kernel}/"
141+
COPYONLY)
142+
configure_file (
143+
"${CMAKE_CURRENT_SOURCE_DIR}/${kernel}/logo-64x64.png"
144+
"${CMAKE_CURRENT_BINARY_DIR}/${kernel}/"
145+
COPYONLY)
146+
configure_file (
147+
"${CMAKE_CURRENT_SOURCE_DIR}/${kernel}/logo-svg.svg"
148+
"${CMAKE_CURRENT_BINARY_DIR}/${kernel}/"
149+
COPYONLY)
150+
endfunction()
151+
152+
message("Configure kernels: ...")
153+
configure_kernel("share/jupyter/kernels/xcpp")
154+
configure_kernel("share/jupyter/kernels/xcpp11")
155+
configure_kernel("share/jupyter/kernels/xcpp14")
156+
configure_kernel("share/jupyter/kernels/xcpp17")
136157

137158
# Source files
138159
# ============

share/jupyter/kernels/xcpp/kernel.json.in

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"display_name": "cpp 14 (xcpp)",
2+
"display_name": "cpp 17 (xcpp)",
33
"env": {
44
"PATH":"@XEUS_CPP_PATH@",
55
"LD_LIBRARY_PATH":"@XEUS_CPP_LD_LIBRARY_PATH@"
@@ -10,7 +10,7 @@
1010
"{connection_file}",
1111
"-resource-dir", "@XEUS_CPP_RESOURCE_DIR@",
1212
"-I", "@CMAKE_INSTALL_PREFIX@/include",
13-
"-std=c++14"@XEUS_CPP_OMP@
13+
"-std=c++17"@XEUS_CPP_OMP@
1414
],
1515
"language": "cpp",
1616
"metadata": {"debugger": false
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"display_name": "C++11 (xcpp)",
3+
"env": {
4+
"PATH":"@XEUS_CPP_PATH@",
5+
"LD_LIBRARY_PATH":"@XEUS_CPP_LD_LIBRARY_PATH@"
6+
},
7+
"argv": [
8+
"@XEUS_CPP_KERNELSPEC_PATH@xcpp",
9+
"-f",
10+
"{connection_file}",
11+
"-resource-dir", "@XEUS_CPP_RESOURCE_DIR@",
12+
"-std=c++11"@XEUS_CPP_OMP@
13+
],
14+
"language": "cpp",
15+
"metadata": {"debugger": false}
16+
}
1.48 KB
Loading
3.04 KB
Loading
+25
Loading
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"display_name": "C++14 (xcpp)",
3+
"env": {
4+
"PATH":"@XEUS_CPP_PATH@",
5+
"LD_LIBRARY_PATH":"@XEUS_CPP_LD_LIBRARY_PATH@"
6+
},
7+
"argv": [
8+
"@XEUS_CPP_KERNELSPEC_PATH@xcpp",
9+
"-f",
10+
"{connection_file}",
11+
"-resource-dir", "@XEUS_CPP_RESOURCE_DIR@",
12+
"-I", "@CMAKE_INSTALL_PREFIX@/include",
13+
"-std=c++14",
14+
"-fno-exceptions",
15+
"-O2",
16+
"-v"@XEUS_CPP_OMP@
17+
],
18+
"language": "cpp",
19+
"metadata": {"debugger": false}
20+
}
1.48 KB
Loading
3.04 KB
Loading
+25
Loading
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"display_name": "C++17 (xcpp+OpenMP)",
3+
"env": {
4+
"PATH":"@XEUS_CPP_PATH@",
5+
"LD_LIBRARY_PATH":"@XEUS_CPP_LD_LIBRARY_PATH@"
6+
},
7+
"argv": [
8+
"@XEUS_CPP_KERNELSPEC_PATH@xcpp",
9+
"-f",
10+
"{connection_file}",
11+
"-resource-dir", "@XEUS_CPP_RESOURCE_DIR@",
12+
"-I", "@CMAKE_INSTALL_PREFIX@/include",
13+
"-std=c++17"@XEUS_CPP_OMP@
14+
],
15+
"language": "cpp",
16+
"metadata": {"debugger": false
17+
}
18+
}
1.48 KB
Loading
3.04 KB
Loading
Loading
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"display_name": "C++17 (xcpp)",
3+
"env": {
4+
"PATH":"@XEUS_CPP_PATH@",
5+
"LD_LIBRARY_PATH":"@XEUS_CPP_LD_LIBRARY_PATH@"
6+
},
7+
"argv": [
8+
"@XEUS_CPP_KERNELSPEC_PATH@xcpp",
9+
"-f",
10+
"{connection_file}",
11+
"-resource-dir", "@XEUS_CPP_RESOURCE_DIR@",
12+
"-I", "@CMAKE_INSTALL_PREFIX@/include",
13+
"-std=c++17"@XEUS_CPP_OMP@
14+
],
15+
"language": "cpp",
16+
"metadata": {"debugger": false
17+
}
18+
}
1.48 KB
Loading
3.04 KB
Loading
+25
Loading

0 commit comments

Comments
 (0)