7
7
on_rtd = os .environ .get ('READTHEDOCS' , None ) == 'True'
8
8
9
9
if on_rtd :
10
+ XEUS_CPP_ROOT = os .path .abspath ('../..' )
11
+ command_emscripten = f'''
12
+ cd ../../;
13
+ curl -L https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba;
14
+ export PATH="$PWD/bin:$PATH";
15
+ export MAMBA_EXE="$PWD/bin/micromamba";
16
+ export MAMBA_ROOT_PREFIX="/home/docs/checkouts/readthedocs.org/user_builds/xeus-cpp/conda/";
17
+ __mamba_setup="$("$MAMBA_EXE" shell hook --shell bash --root-prefix "$MAMBA_ROOT_PREFIX" 2> /dev/null)";
18
+ eval "$__mamba_setup";
19
+ alias micromamba="$MAMBA_EXE";
20
+ micromamba create -f environment-wasm-build.yml -y;
21
+ micromamba activate xeus-cpp-wasm-build;
22
+ micromamba create -f environment-wasm-host.yml --platform=emscripten-wasm32;
23
+ mkdir -p build;
24
+ cd build;
25
+ export BUILD_PREFIX=$MAMBA_ROOT_PREFIX/xeus-cpp-wasm-build;
26
+ export PREFIX=$MAMBA_ROOT_PREFIX/xeus-cpp-wasm-host;
27
+ export SYSROOT_PATH=$BUILD_PREFIX/opt/emsdk/upstream/emscripten/cache/sysroot;
28
+ emcmake cmake -DCMAKE_BUILD_TYPE=Release \\
29
+ -DCMAKE_PREFIX_PATH=$PREFIX \\
30
+ -DCMAKE_INSTALL_PREFIX=$PREFIX \\
31
+ -DXEUS_CPP_EMSCRIPTEN_WASM_BUILD=ON \\
32
+ -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ON \\
33
+ -DSYSROOT_PATH=$SYSROOT_PATH \\
34
+ { XEUS_CPP_ROOT } ;
35
+ emmake make -j $(nproc --all) install;
36
+ cd { XEUS_CPP_ROOT } ;
37
+ micromamba create -n xeus-lite-host jupyterlite-core=0.6 jupyter_server jupyterlite-xeus -c conda-forge -y;
38
+ micromamba activate xeus-lite-host;
39
+ python -m pip install jupyterlite-xeus jupyter_server;
40
+ jupyter lite build --XeusAddon.prefix=$PREFIX \\
41
+ --XeusAddon.mounts="$PREFIX/share/xeus-cpp/tagfiles:/share/xeus-cpp/tagfiles" \
42
+ --XeusAddon.mounts="$PREFIX/etc/xeus-cpp/tags.d:/etc/xeus-cpp/tags.d" \
43
+ --contents notebooks/xeus-cpp-lite-demo.ipynb \\
44
+ --contents notebooks/smallpt.ipynb \\
45
+ --contents notebooks/images/marie.png \\
46
+ --contents notebooks/audio/audio.wav \\
47
+ --output-dir $READTHEDOCS_OUTPUT/html/xeus-cpp;
48
+ '''
10
49
subprocess .call ('cd ..; doxygen' , shell = True )
50
+ subprocess .run (['bash' , '-c' , command_emscripten ], check = True )
51
+
11
52
12
53
import sphinx_rtd_theme
13
54
@@ -32,4 +73,4 @@ def setup(app):
32
73
highlight_language = 'c++'
33
74
pygments_style = 'sphinx'
34
75
todo_include_todos = False
35
- htmlhelp_basename = 'xeus-cppdoc'
76
+ htmlhelp_basename = 'xeus-cppdoc'
0 commit comments