Library/Math: Implement InOutParam
#1164
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Compile and verify functions | |
on: | |
push: | |
pull_request_target: | |
types: [opened, synchronize] | |
permissions: | |
contents: read | |
pull-requests: read | |
jobs: | |
compile_verify: | |
if: github.repository == 'MonsterDruide1/OdysseyDecomp' | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Check out project | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Check out branch if in PR | |
if: ${{ github.event_name == 'pull_request_target' }} | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
submodules: recursive | |
- name: Check for W-state functions | |
run: | | |
if grep -q ",W," "data/odyssey_functions.csv"; then | |
echo "Function list should not contain WIP-functions!" | |
echo "Found the following lines:" | |
grep ",W," "data/odyssey_functions.csv" | |
exit 1 | |
fi | |
- name: Set up dependencies | |
run: | | |
sudo apt update && sudo apt install -y python3-pip ninja-build cmake ccache xdelta3 clang libssl-dev python-is-python3 curl | |
wget http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2_amd64.deb && sudo dpkg -i libtinfo5_6.3-2_amd64.deb && rm -f libtinfo5_6.3-2_amd64.deb | |
- name: Set up python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.9' | |
cache: 'pip' | |
- name: Set up python package dependencies | |
run: pip install capstone colorama cxxfilt pyelftools ansiwrap watchdog python-Levenshtein toml | |
- name: Set up rust toolchain | |
uses: actions-rust-lang/[email protected] | |
with: | |
cache: false | |
- name: Set up rust caching | |
uses: Swatinem/rust-cache@v2 | |
with: | |
workspaces: "tools/common/viking" | |
cache-directories: | | |
toolchain/clang-3.9.1 | |
toolchain/clang-4.0.1 | |
- name: Download main.nso from secret | |
env: | |
EXEFS_SHARED_PASS: ${{ secrets.EXEFS_SHARED_PASS }} | |
run: curl -u "github-odyssey:$EXEFS_SHARED_PASS" https://monsterdruide.one/secrets/smo-main.nso -O | |
- name: Run setup | |
run: tools/setup.py smo-main.nso | |
- name: Build project | |
run: tools/build.py | |
- name: Verify function states | |
run: | | |
var="$(tools/check 2>&1)" | |
if [[ "$var" == "OK" ]]; then | |
exit 0 | |
else | |
echo $var; | |
exit 1 | |
fi |