@@ -744,7 +744,13 @@ jobs:
744
744
.\emsdk\emsdk_env.ps1
745
745
$env:PWD_DIR= $PWD.Path
746
746
$env:SYSROOT_PATH="$env:EMSDK/upstream/emscripten/cache/sysroot"
747
- $env:PREFIX="%CONDA_PREFIX%/envs/CppInterOp-wasm"
747
+ echo "SYSROOT_PATH=$env:SYSROOT_PATH"
748
+ echo "SYSROOT_PATH=$env:SYSROOT_PATH" >> $env:GITHUB_ENV
749
+
750
+ $env:PREFIX="$env:MAMBA_ROOT_PREFIX/envs/CppInterOp-wasm"
751
+ echo "PREFIX=$env:PREFIX"
752
+ echo "PREFIX=$env:PREFIX" >> $env:GITHUB_ENV
753
+
748
754
$env:CMAKE_PREFIX_PATH=$env:PREFIX
749
755
$env:CMAKE_SYSTEM_PREFIX_PATH=$env:PREFIX
750
756
@@ -835,6 +841,11 @@ jobs:
835
841
emrun.bat --browser="chrome.exe" --kill_exit --timeout 60 --browser-args="--headless --no-sandbox" DynamicLibraryManagerTests.html
836
842
cd ..\..
837
843
emmake make -j ${{ env.ncpus }} install
844
+ echo "SYSROOT_PATH=$env:SYSROOT_PATH" >> $GITHUB_ENV
845
+ echo "CPPINTEROP_DIR=$env:CPPINTEROP_DIR" >> $GITHUB_ENV
846
+ echo "LLVM_BUILD_DIR=$env:LLVM_BUILD_DIR" >> $GITHUB_ENV
847
+ echo "CPLUS_INCLUDE_PATH=$env:CPLUS_INCLUDE_PATH" >> $GITHUB_ENV
848
+ echo "PREFIX=$env:PREFIX" >> $GITHUB_ENV
838
849
839
850
- name : Build and Test/Install CppInterOp on Windows systems (static library)
840
851
if : ${{ runner.os == 'windows' }}
@@ -926,7 +937,7 @@ jobs:
926
937
echo "Running DynamicLibraryManagerTests in Chromium"
927
938
emrun.bat --browser="chrome.exe" --kill_exit --timeout 60 --browser-args="--headless --no-sandbox" DynamicLibraryManagerTests.html
928
939
929
- - name : Build xeus-cpp
940
+ - name : Build xeus-cpp on Unix Systems
930
941
if : ${{ runner.os != 'windows' }}
931
942
shell : bash -l {0}
932
943
run : |
@@ -950,7 +961,32 @@ jobs:
950
961
..
951
962
emmake make -j ${{ env.ncpus }} install
952
963
953
- - name : Test xeus-cpp C++ Emscripten
964
+ - name : Build xeus-cpp on Windows systems
965
+ if : ${{ runner.os == 'windows' }}
966
+ shell : powershell
967
+ run : |
968
+ .\emsdk\emsdk activate ${{matrix.emsdk_ver}}
969
+ .\emsdk\emsdk_env.ps1
970
+ micromamba activate CppInterOp-wasm
971
+ git clone https://github.com/mcbarton/xeus-cpp.git
972
+ cd .\xeus-cpp
973
+ git checkout Enable-Windows-Emscripten-build
974
+ mkdir build
975
+ pushd build
976
+ $env:CMAKE_PREFIX_PATH="${{ env.PREFIX }}"
977
+ $env:CMAKE_SYSTEM_PREFIX_PATH="${{ env.PREFIX }}"
978
+ emcmake cmake `
979
+ -DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} `
980
+ -DCMAKE_PREFIX_PATH=${{ env.PREFIX }} `
981
+ -DCMAKE_INSTALL_PREFIX=${{ env.PREFIX }} `
982
+ -DXEUS_CPP_EMSCRIPTEN_WASM_BUILD=ON `
983
+ -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ON `
984
+ -DXEUS_CPP_RESOURCE_DIR=${{ env.LLVM_BUILD_DIR }}\lib\clang\${{ matrix.clang-runtime }} `
985
+ -DSYSROOT_PATH=${{ env.SYSROOT_PATH }} `
986
+ ..
987
+ emmake make -j ${{ env.ncpus }} install
988
+
989
+ - name : Test xeus-cpp C++ Emscripten on Unix Systems
954
990
if : ${{ runner.os != 'windows' }}
955
991
shell : bash -l {0}
956
992
run : |
@@ -959,6 +995,15 @@ jobs:
959
995
cd ./xeus-cpp/build/test
960
996
node test_xeus_cpp.js
961
997
998
+ - name : Test xeus-cpp C++ Emscripten on Windows Systems
999
+ if : ${{ runner.os == 'windows' }}
1000
+ shell : powershell
1001
+ run : |
1002
+ $ErrorActionPreference = "Stop"
1003
+ micromamba activate CppInterOp-wasm
1004
+ cd .\xeus-cpp\build\test
1005
+ node test_xeus_cpp.js
1006
+
962
1007
- name : Jupyter Lite integration
963
1008
if : ${{ runner.os != 'windows' }}
964
1009
shell : bash -l {0}
@@ -967,3 +1012,12 @@ jobs:
967
1012
micromamba create -n xeus-lite-host jupyterlite-core=0.6 jupyterlite-xeus jupyter_server jupyterlab notebook python-libarchive-c -c conda-forge
968
1013
micromamba activate xeus-lite-host
969
1014
jupyter lite build --XeusAddon.prefix=${{ env.PREFIX }} --contents notebooks/xeus-cpp-lite-demo.ipynb --contents notebooks/smallpt.ipynb --contents notebooks/images/marie.png --contents notebooks/audio/audio.wav --output-dir dist
1015
+
1016
+ - name : Jupyter Lite integration
1017
+ if : ${{ runner.os == 'windows' }}
1018
+ shell : powershell
1019
+ run : |
1020
+ cd .\xeus-cpp\
1021
+ micromamba create -n xeus-lite-host jupyterlite-core=0.6 jupyterlite-xeus jupyter_server jupyterlab notebook python-libarchive-c -c conda-forge
1022
+ micromamba activate xeus-lite-host
1023
+ jupyter lite build --XeusAddon.prefix=${{ env.PREFIX }} --contents notebooks/xeus-cpp-lite-demo.ipynb --contents notebooks/smallpt.ipynb --contents notebooks/images/marie.png --contents notebooks/audio/audio.wav --output-dir dist
0 commit comments