@@ -25,27 +25,35 @@ jobs:
2525 - uses : actions/checkout@v4
2626 - uses : actions/setup-python@v5
2727 with :
28- python-version : ' 3.10 '
28+ python-version : ' 3.11 '
2929 - name : Build dependencies
30+ shell : bash
3031 run : |
31- # Install pomdp-solve macOS binary
32- wget -P thirdparty https://www.pomdp.org/code/pomdp-solve-os-x.bin
33- chmod +x thirdparty/pomdp-solve-os-x.bin
32+ # pomdp-solve (native, via autotools)
33+ mkdir -p thirdparty
34+ curl -L https://www.pomdp.org/code/pomdp-solve-5.5.tar.gz -o thirdparty/pomdp-solve-5.5.tar.gz
35+ tar -xzf thirdparty/pomdp-solve-5.5.tar.gz -C thirdparty
36+ mv thirdparty/pomdp-solve-5.5 thirdparty/pomdp-solve
37+ ( cd thirdparty/pomdp-solve && ./configure )
38+ make -C thirdparty/pomdp-solve/src
39+ ln -sf "$(pwd)/thirdparty/pomdp-solve/src/pomdp-solve" thirdparty/pomdp-solve.bin
3440
35- # Build and install SARSOP
41+ # APPL / SARSOP (strip x86-only flags on arm64)
3642 git clone https://github.com/personalrobotics/appl.git thirdparty/appl
37- # Fix Arm build (remove -mfpmath=sse) and declare implict functions
3843 git -C thirdparty/appl apply ../../tests/appl.patch
44+ if [[ $(uname -m) == "arm64" ]]; then
45+ find thirdparty/appl/src -name "Makefile*" -print0 \
46+ | xargs -0 sed -i '' -E 's/ -m(sse|sse2|ssse3|sse4[^ ]*)//g; s/ -mfpmath=sse//g; s/ -march=[^ ]+//g; s/ -mtune=[^ ]+//g'
47+ fi
3948 make -C thirdparty/appl/src
4049 make -C thirdparty/appl/src install
4150 - name : Install dependencies
4251 run : |
4352 python -m pip install --upgrade pip
4453 pip install -e .
4554 - name : Test
46- working-directory : .
4755 run : |
48- export POMDP_SOLVE_PATH=./thirdparty/pomdp-solve-os-x .bin
56+ export POMDP_SOLVE_PATH=./thirdparty/pomdp-solve.bin
4957 export POMDPSOL_PATH=./thirdparty/appl/bin/pomdpsol
5058 export POMDPCONVERT_PATH=./thirdparty/appl/src/pomdpconvert
5159 python tests/test_all.py
0 commit comments