77on_rtd = os .environ .get ('READTHEDOCS' , None ) == 'True'
88
99if on_rtd :
10- subprocess .call ('cd ..; doxygen' , shell = True )
10+ XEUS_CPP_ROOT = os .path .abspath ('../..' )
11+ command_emscripten = 'cd {0};\
12+ micromamba create -f environment-wasm-build.yml -y;\
13+ micromamba activate xeus-cpp-wasm-build;\
14+ micromamba create -f environment-wasm-host.yml --platform=emscripten-wasm32;\
15+ mkdir build;\
16+ cd build;\
17+ export BUILD_PREFIX=$MAMBA_ROOT_PREFIX/envs/xeus-cpp-wasm-build;\
18+ export PREFIX=$MAMBA_ROOT_PREFIX/envs/xeus-cpp-wasm-host;\
19+ export SYSROOT_PATH=$BUILD_PREFIX/opt/emsdk/upstream/emscripten/cache/sysroot;\
20+ emcmake cmake -DCMAKE_BUILD_TYPE=Release \
21+ -DCMAKE_PREFIX_PATH=$PREFIX \
22+ -DCMAKE_INSTALL_PREFIX=$PREFIX \
23+ -DXEUS_CPP_EMSCRIPTEN_WASM_BUILD=ON \
24+ -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ON \
25+ -DXEUS_CPP_RESOURCE_DIR=$LLVM_BUILD_DIR/lib/clang/$LLVM_VERSION \
26+ -DSYSROOT_PATH=$SYSROOT_PATH \
27+ {0}/xeus-cpp/;\
28+ emmake make -j $(nproc --all) install;\
29+ cd {0};\
30+ micromamba create -n xeus-lite-host jupyterlite-core -c conda-forge;\
31+ micromamba activate xeus-lite-host;\
32+ python -m pip install jupyterlite-xeus jupyter_server;\
33+ jupyter lite build --XeusAddon.prefix=$PREFIX \
34+ --contents notebooks/xeus-cpp-lite-demo.ipynb \
35+ --contents notebooks/smallpt.ipynb \
36+ --contents notebooks/images/marie.png \
37+ --contents notebooks/audio/audio.wav \
38+ --output-dir $READTHEDOCS_OUTPUT/html/xeus-cpp;' .format (XEUS_CPP_ROOT )
39+ subprocess .call ('cd {0}/xeus-cpp/docs/; doxygen' , shell = True )
40+ subprocess .call (command_emscripten .format (XEUS_CPP_ROOT ), shell = True )
41+
1142
1243import sphinx_rtd_theme
1344
@@ -32,4 +63,4 @@ def setup(app):
3263highlight_language = 'c++'
3364pygments_style = 'sphinx'
3465todo_include_todos = False
35- htmlhelp_basename = 'xeus-cppdoc'
66+ htmlhelp_basename = 'xeus-cppdoc'
0 commit comments