|
|
@@ -2,461 +2,32 @@ name: Continuous Integration
|
|
|
on: [push, pull_request]
|
|
|
|
|
|
jobs:
|
|
|
- cmake:
|
|
|
- name: CMake Buildsystem
|
|
|
+ emscripten:
|
|
|
if: "!contains(github.event.head_commit.message, '[skip ci]') && !contains(github.event.head_commit.message, '[ci skip]')"
|
|
|
-
|
|
|
- strategy:
|
|
|
- fail-fast: false
|
|
|
-
|
|
|
- matrix:
|
|
|
- profile:
|
|
|
- - ubuntu-bionic-standard-unity-makefile
|
|
|
- - ubuntu-bionic-coverage-ninja
|
|
|
- - macos-eigen-coverage-unity-xcode
|
|
|
- - macos-nometa-standard-makefile
|
|
|
- - windows-standard-unity-msvc
|
|
|
- - windows-nopython-nometa-standard-msvc
|
|
|
-
|
|
|
- include:
|
|
|
- - profile: ubuntu-bionic-standard-unity-makefile
|
|
|
- os: ubuntu-20.04
|
|
|
- config: Standard
|
|
|
- unity: YES
|
|
|
- generator: Unix Makefiles
|
|
|
- compiler: Default
|
|
|
- metalibs: YES
|
|
|
- python: YES
|
|
|
- eigen: NO
|
|
|
-
|
|
|
- - profile: ubuntu-bionic-coverage-ninja
|
|
|
- os: ubuntu-20.04
|
|
|
- config: Coverage
|
|
|
- unity: NO
|
|
|
- generator: Ninja
|
|
|
- compiler: Clang
|
|
|
- metalibs: YES
|
|
|
- python: YES
|
|
|
- eigen: NO
|
|
|
-
|
|
|
- - profile: macos-eigen-coverage-unity-xcode
|
|
|
- os: macOS-11
|
|
|
- config: Coverage
|
|
|
- unity: YES
|
|
|
- generator: Xcode
|
|
|
- compiler: Default
|
|
|
- metalibs: YES
|
|
|
- python: YES
|
|
|
- eigen: YES
|
|
|
-
|
|
|
- - profile: macos-nometa-standard-makefile
|
|
|
- os: macOS-11
|
|
|
- config: Standard
|
|
|
- unity: NO
|
|
|
- generator: Unix Makefiles
|
|
|
- compiler: Default
|
|
|
- metalibs: NO
|
|
|
- python: YES
|
|
|
- eigen: NO
|
|
|
-
|
|
|
- - profile: windows-standard-unity-msvc
|
|
|
- os: windows-2022
|
|
|
- config: Standard
|
|
|
- unity: YES
|
|
|
- generator: Visual Studio 17 2022
|
|
|
- compiler: Default
|
|
|
- metalibs: YES
|
|
|
- python: YES
|
|
|
- eigen: NO
|
|
|
-
|
|
|
- - profile: windows-nopython-nometa-standard-msvc
|
|
|
- os: windows-2022
|
|
|
- config: Standard
|
|
|
- unity: NO
|
|
|
- generator: Visual Studio 17 2022
|
|
|
- compiler: Default
|
|
|
- metalibs: NO
|
|
|
- python: NO
|
|
|
- eigen: NO
|
|
|
-
|
|
|
- runs-on: ${{ matrix.os }}
|
|
|
-
|
|
|
+ runs-on: ubuntu-22.04
|
|
|
steps:
|
|
|
- uses: actions/checkout@v1
|
|
|
- with:
|
|
|
- fetch-depth: 10
|
|
|
-
|
|
|
- - name: Self-destruct makepanda
|
|
|
- run: python3 makepanda/selfdestruct.py --yes
|
|
|
-
|
|
|
- - name: Install dependencies (macOS)
|
|
|
- if: runner.os == 'macOS'
|
|
|
- run: |
|
|
|
- curl -O https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-mac.tar.gz
|
|
|
- tar -xf panda3d-1.10.14-tools-mac.tar.gz
|
|
|
- mv panda3d-1.10.14/thirdparty thirdparty
|
|
|
- rmdir panda3d-1.10.14
|
|
|
-
|
|
|
- # Temporary hack so that pzip can run, since we are about to remove Cg anyway.
|
|
|
- install_name_tool -id "$(pwd)/thirdparty/darwin-libs-a/nvidiacg/lib/libCg.dylib" thirdparty/darwin-libs-a/nvidiacg/lib/libCg.dylib
|
|
|
-
|
|
|
- brew install ccache
|
|
|
-
|
|
|
- - name: Install dependencies (Ubuntu)
|
|
|
- if: startsWith(matrix.os, 'ubuntu')
|
|
|
- run: >
|
|
|
- sudo apt-get update
|
|
|
-
|
|
|
- sudo apt-get install
|
|
|
- build-essential ninja-build clang llvm ccache
|
|
|
- bison flex
|
|
|
- libeigen3-dev libfreetype6-dev libgl1-mesa-dev libjpeg-dev libode-dev
|
|
|
- libopenal-dev libpng-dev libssl-dev libvorbis-dev libx11-dev
|
|
|
- libxcursor-dev libxrandr-dev nvidia-cg-toolkit zlib1g-dev
|
|
|
- python3-setuptools python3-tk
|
|
|
-
|
|
|
- - name: Cache dependencies (Windows)
|
|
|
- if: runner.os == 'Windows'
|
|
|
- uses: actions/cache@v1
|
|
|
- with:
|
|
|
- path: thirdparty
|
|
|
- key: ci-cmake-${{ runner.OS }}-thirdparty-v1.10.14-r1
|
|
|
- - name: Install dependencies (Windows)
|
|
|
- if: runner.os == 'Windows'
|
|
|
- shell: powershell
|
|
|
- run: |
|
|
|
- if (!(Test-Path thirdparty/win-libs-vc14-x64)) {
|
|
|
- $wc = New-Object System.Net.WebClient
|
|
|
- $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-win64.zip", "thirdparty-tools.zip")
|
|
|
- Expand-Archive -Path thirdparty-tools.zip
|
|
|
- Move-Item -Path thirdparty-tools/panda3d-1.10.14/thirdparty -Destination .
|
|
|
- }
|
|
|
-
|
|
|
- - name: ccache (non-Windows)
|
|
|
- if: runner.os != 'Windows'
|
|
|
- uses: actions/cache@v1
|
|
|
- with:
|
|
|
- path: ccache
|
|
|
- key: ci-cmake-ccache-${{ matrix.profile }}
|
|
|
-
|
|
|
- - name: Configure
|
|
|
- shell: bash
|
|
|
- env:
|
|
|
- CMAKE_GENERATOR: "${{ matrix.generator }}"
|
|
|
- run: >
|
|
|
- mkdir -p build
|
|
|
-
|
|
|
- cd build
|
|
|
-
|
|
|
- if ${{ matrix.compiler == 'Clang' }}; then
|
|
|
- if [[ "$CMAKE_GENERATOR" =~ Studio.+20(19|22) ]]; then
|
|
|
- export CMAKE_GENERATOR_TOOLSET=ClangCL
|
|
|
- elif [[ "$CMAKE_GENERATOR" == *Studio* ]]; then
|
|
|
- export CMAKE_GENERATOR_TOOLSET=LLVM
|
|
|
- else
|
|
|
- export CC=clang CXX=clang++
|
|
|
- fi
|
|
|
- fi
|
|
|
-
|
|
|
- if ${{ runner.os != 'Windows' }}; then
|
|
|
- compilerLauncher=$(echo -DCMAKE_C{,XX}_COMPILER_LAUNCHER=ccache)
|
|
|
- export CCACHE_DIR="$(dirname $PWD)/ccache"
|
|
|
- echo "CCACHE_DIR=$(dirname $PWD)/ccache" >> $GITHUB_ENV
|
|
|
- fi
|
|
|
-
|
|
|
- cmake
|
|
|
- ${compilerLauncher:-}
|
|
|
- -D CMAKE_UNITY_BUILD=${{ matrix.unity }}
|
|
|
- -D CMAKE_BUILD_TYPE="${{ matrix.config }}"
|
|
|
- -D BUILD_METALIBS=${{ matrix.metalibs }}
|
|
|
- -D HAVE_PYTHON=${{ runner.os != 'Windows' && matrix.python || 'NO' }}
|
|
|
- -D HAVE_EIGEN=${{ matrix.eigen }}
|
|
|
- ..
|
|
|
-
|
|
|
- - name: Build (no Python)
|
|
|
- if: contains(matrix.python, 'NO')
|
|
|
- # BEGIN A
|
|
|
- working-directory: build
|
|
|
- run: cmake --build . --config ${{ matrix.config }} --parallel 4
|
|
|
- # END A
|
|
|
-
|
|
|
- - name: Setup Python (Python 3.8)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- uses: actions/setup-python@v4
|
|
|
- with:
|
|
|
- python-version: '3.8'
|
|
|
- - name: Configure (Python 3.8)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- run: >
|
|
|
- cmake -DWANT_PYTHON_VERSION=3.8 -DHAVE_PYTHON=YES
|
|
|
- -DPython_FIND_REGISTRY=NEVER -DPython_ROOT="$pythonLocation" .
|
|
|
- - name: Build (Python 3.8)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- # BEGIN A
|
|
|
- working-directory: build
|
|
|
- run: cmake --build . --config ${{ matrix.config }} --parallel 4
|
|
|
- # END A
|
|
|
- - name: Test (Python 3.8)
|
|
|
- # BEGIN B
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- env:
|
|
|
- PYTHONPATH: ${{ matrix.config }}
|
|
|
- run: |
|
|
|
- PYTHON_EXECUTABLE=$(grep 'Python_EXECUTABLE:' CMakeCache.txt | sed 's/.*=//')
|
|
|
- $PYTHON_EXECUTABLE -m pip install -r ../requirements-test.txt
|
|
|
- export COVERAGE_FILE=.coverage.$RANDOM LLVM_PROFILE_FILE=$PWD/pid-%p.profraw
|
|
|
- $PYTHON_EXECUTABLE -m pytest ../tests --cov=.
|
|
|
- # END B
|
|
|
-
|
|
|
- - name: Setup Python (Python 3.9)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- uses: actions/setup-python@v4
|
|
|
- with:
|
|
|
- python-version: '3.9'
|
|
|
- - name: Configure (Python 3.9)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- run: >
|
|
|
- cmake -DWANT_PYTHON_VERSION=3.9 -DHAVE_PYTHON=YES
|
|
|
- -DPython_FIND_REGISTRY=NEVER -DPython_ROOT="$pythonLocation" .
|
|
|
- - name: Build (Python 3.9)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- # BEGIN A
|
|
|
- working-directory: build
|
|
|
- run: cmake --build . --config ${{ matrix.config }} --parallel 4
|
|
|
- # END A
|
|
|
- - name: Test (Python 3.9)
|
|
|
- # BEGIN B
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- env:
|
|
|
- PYTHONPATH: ${{ matrix.config }}
|
|
|
- run: |
|
|
|
- PYTHON_EXECUTABLE=$(grep 'Python_EXECUTABLE:' CMakeCache.txt | sed 's/.*=//')
|
|
|
- $PYTHON_EXECUTABLE -m pip install -r ../requirements-test.txt
|
|
|
- export COVERAGE_FILE=.coverage.$RANDOM LLVM_PROFILE_FILE=$PWD/pid-%p.profraw
|
|
|
- $PYTHON_EXECUTABLE -m pytest ../tests --cov=.
|
|
|
- # END B
|
|
|
-
|
|
|
- - name: Setup Python (Python 3.10)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- uses: actions/setup-python@v4
|
|
|
- with:
|
|
|
- python-version: '3.10'
|
|
|
- - name: Configure (Python 3.10)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- run: >
|
|
|
- cmake -DWANT_PYTHON_VERSION=3.10 -DHAVE_PYTHON=YES
|
|
|
- -DPython_FIND_REGISTRY=NEVER -DPython_ROOT="$pythonLocation" .
|
|
|
- - name: Build (Python 3.10)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- # BEGIN A
|
|
|
- working-directory: build
|
|
|
- run: cmake --build . --config ${{ matrix.config }} --parallel 4
|
|
|
- # END A
|
|
|
- - name: Test (Python 3.10)
|
|
|
- # BEGIN B
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- env:
|
|
|
- PYTHONPATH: ${{ matrix.config }}
|
|
|
- run: |
|
|
|
- PYTHON_EXECUTABLE=$(grep 'Python_EXECUTABLE:' CMakeCache.txt | sed 's/.*=//')
|
|
|
- $PYTHON_EXECUTABLE -m pip install -r ../requirements-test.txt
|
|
|
- export COVERAGE_FILE=.coverage.$RANDOM LLVM_PROFILE_FILE=$PWD/pid-%p.profraw
|
|
|
- $PYTHON_EXECUTABLE -m pytest ../tests --cov=.
|
|
|
- # END B
|
|
|
-
|
|
|
- - name: Setup Python (Python 3.11)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- uses: actions/setup-python@v4
|
|
|
- with:
|
|
|
- python-version: '3.11'
|
|
|
- - name: Configure (Python 3.11)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- run: >
|
|
|
- cmake -DWANT_PYTHON_VERSION=3.11 -DHAVE_PYTHON=YES
|
|
|
- -DPython_FIND_REGISTRY=NEVER -DPython_ROOT="$pythonLocation" .
|
|
|
- - name: Build (Python 3.11)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- # BEGIN A
|
|
|
- working-directory: build
|
|
|
- run: cmake --build . --config ${{ matrix.config }} --parallel 4
|
|
|
- # END A
|
|
|
- - name: Test (Python 3.11)
|
|
|
- # BEGIN B
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- env:
|
|
|
- PYTHONPATH: ${{ matrix.config }}
|
|
|
- run: |
|
|
|
- PYTHON_EXECUTABLE=$(grep 'Python_EXECUTABLE:' CMakeCache.txt | sed 's/.*=//')
|
|
|
- $PYTHON_EXECUTABLE -m pip install -r ../requirements-test.txt
|
|
|
- export COVERAGE_FILE=.coverage.$RANDOM LLVM_PROFILE_FILE=$PWD/pid-%p.profraw
|
|
|
- $PYTHON_EXECUTABLE -m pytest ../tests --cov=.
|
|
|
- # END B
|
|
|
|
|
|
- - name: Setup Python (Python 3.12)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- uses: actions/setup-python@v4
|
|
|
- with:
|
|
|
- python-version: '3.12'
|
|
|
- - name: Configure (Python 3.12)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- run: >
|
|
|
- cmake -DWANT_PYTHON_VERSION=3.12 -DHAVE_PYTHON=YES
|
|
|
- -DPython_FIND_REGISTRY=NEVER -DPython_ROOT="$pythonLocation" .
|
|
|
- - name: Build (Python 3.12)
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- # BEGIN A
|
|
|
- working-directory: build
|
|
|
- run: cmake --build . --config ${{ matrix.config }} --parallel 4
|
|
|
- # END A
|
|
|
- - name: Test (Python 3.12)
|
|
|
- # BEGIN B
|
|
|
- if: contains(matrix.python, 'YES')
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- env:
|
|
|
- PYTHONPATH: ${{ matrix.config }}
|
|
|
- run: |
|
|
|
- PYTHON_EXECUTABLE=$(grep 'Python_EXECUTABLE:' CMakeCache.txt | sed 's/.*=//')
|
|
|
- $PYTHON_EXECUTABLE -m pip install -r ../requirements-test.txt
|
|
|
- export COVERAGE_FILE=.coverage.$RANDOM LLVM_PROFILE_FILE=$PWD/pid-%p.profraw
|
|
|
- $PYTHON_EXECUTABLE -m pytest ../tests --cov=.
|
|
|
- # END B
|
|
|
-
|
|
|
- - name: Upload coverage reports
|
|
|
- if: always() && matrix.config == 'Coverage'
|
|
|
- working-directory: build
|
|
|
- shell: bash
|
|
|
- env:
|
|
|
- CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
|
|
- run: |
|
|
|
- shopt -s expand_aliases
|
|
|
- if ${{ runner.os == 'macOS' }}; then alias llvm-profdata='xcrun llvm-profdata' llvm-cov='xcrun llvm-cov'; fi
|
|
|
-
|
|
|
- python -m pip install coverage
|
|
|
- python -m coverage combine $(find . -name '.coverage.*')
|
|
|
-
|
|
|
- llvm-profdata merge pid-*.profraw -o coverage.profdata
|
|
|
- llvm-cov show $(grep -Rl LLVM_PROFILE_FILE . | sed 's/^/-object /') -instr-profile=coverage.profdata > coverage.txt
|
|
|
- bash <(curl -s https://codecov.io/bash) -y ../.github/codecov.yml
|
|
|
-
|
|
|
- makepanda:
|
|
|
- if: "!contains(github.event.head_commit.message, '[skip ci]') && !contains(github.event.head_commit.message, '[ci skip]')"
|
|
|
- strategy:
|
|
|
- matrix:
|
|
|
- os: [ubuntu-20.04, windows-2019, macOS-11]
|
|
|
- runs-on: ${{ matrix.os }}
|
|
|
- steps:
|
|
|
- - uses: actions/checkout@v1
|
|
|
- - name: Install dependencies (Ubuntu)
|
|
|
- if: matrix.os == 'ubuntu-20.04'
|
|
|
+ - name: Install dependencies
|
|
|
run: |
|
|
|
sudo apt-get update
|
|
|
- sudo apt-get install build-essential bison flex libfreetype6-dev libgl1-mesa-dev libjpeg-dev libode-dev libopenal-dev libpng-dev libssl-dev libvorbis-dev libx11-dev libxcursor-dev libxrandr-dev nvidia-cg-toolkit zlib1g-dev
|
|
|
- - name: Get thirdparty packages (Windows)
|
|
|
- if: runner.os == 'Windows'
|
|
|
- shell: powershell
|
|
|
- run: |
|
|
|
- $wc = New-Object System.Net.WebClient
|
|
|
- $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-win64.zip", "thirdparty-tools.zip")
|
|
|
- Expand-Archive -Path thirdparty-tools.zip
|
|
|
- Move-Item -Path thirdparty-tools/panda3d-1.10.14/thirdparty -Destination .
|
|
|
- - name: Get thirdparty packages (macOS)
|
|
|
- if: runner.os == 'macOS'
|
|
|
- run: |
|
|
|
- curl -O https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-mac.tar.gz
|
|
|
- tar -xf panda3d-1.10.14-tools-mac.tar.gz
|
|
|
- mv panda3d-1.10.14/thirdparty thirdparty
|
|
|
- rmdir panda3d-1.10.14
|
|
|
- (cd thirdparty/darwin-libs-a && rm -rf rocket)
|
|
|
+ sudo apt-get install build-essential ninja-build bison flex
|
|
|
|
|
|
- - name: Set up Python 3.12
|
|
|
- uses: actions/setup-python@v4
|
|
|
- with:
|
|
|
- python-version: '3.12'
|
|
|
- - name: Build Python 3.12
|
|
|
+ - name: Build Host Interrogate
|
|
|
shell: bash
|
|
|
run: |
|
|
|
- python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir="$pythonLocation/include" --python-libdir="$pythonLocation/lib" --verbose --threads=4 --windows-sdk=10
|
|
|
- - name: Test Python 3.12
|
|
|
- shell: bash
|
|
|
- run: |
|
|
|
- python -m pip install -r requirements-test.txt
|
|
|
- PYTHONPATH=built LD_LIBRARY_PATH=built/lib:$pythonLocation/lib DYLD_LIBRARY_PATH=built/lib python -m pytest
|
|
|
-
|
|
|
- - name: Set up Python 3.11
|
|
|
- uses: actions/setup-python@v4
|
|
|
- with:
|
|
|
- python-version: '3.11'
|
|
|
- - name: Build Python 3.11
|
|
|
- shell: bash
|
|
|
- run: |
|
|
|
- python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir="$pythonLocation/include" --python-libdir="$pythonLocation/lib" --verbose --threads=4 --windows-sdk=10
|
|
|
- - name: Test Python 3.11
|
|
|
- shell: bash
|
|
|
- run: |
|
|
|
- python -m pip install -r requirements-test.txt
|
|
|
- PYTHONPATH=built LD_LIBRARY_PATH=built/lib:$pythonLocation/lib DYLD_LIBRARY_PATH=built/lib python -m pytest
|
|
|
-
|
|
|
- - name: Set up Python 3.10
|
|
|
- uses: actions/setup-python@v4
|
|
|
- with:
|
|
|
- python-version: '3.10'
|
|
|
- - name: Build Python 3.10
|
|
|
- shell: bash
|
|
|
- run: |
|
|
|
- python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir="$pythonLocation/include" --python-libdir="$pythonLocation/lib" --verbose --threads=4 --windows-sdk=10
|
|
|
- - name: Test Python 3.10
|
|
|
- shell: bash
|
|
|
- run: |
|
|
|
- python -m pip install -r requirements-test.txt
|
|
|
- PYTHONPATH=built LD_LIBRARY_PATH=built/lib:$pythonLocation/lib DYLD_LIBRARY_PATH=built/lib python -m pytest
|
|
|
+ mkdir -p host-build
|
|
|
+ cmake -S . -B host-build -DBUILD_DIRECT=OFF -DBUILD_PANDA=OFF -DBUILD_PANDATOOL=OFF -DBUILD_CONTRIB=OFF -DBUILD_DTOOL=ON -DBUILD_MODELS=OFF -DBUILD_SHARED_LIBS=OFF -DINTERROGATE_PYTHON_INTERFACE=OFF
|
|
|
+ cmake --build host-build --config Standard --parallel 4
|
|
|
+ echo host-build/bin >> $GITHUB_PATH
|
|
|
|
|
|
- - name: Set up Python 3.9
|
|
|
- uses: actions/setup-python@v4
|
|
|
+ - name: Setup emsdk
|
|
|
+ uses: mymindstorm/setup-emsdk@v14
|
|
|
with:
|
|
|
- python-version: '3.9'
|
|
|
- - name: Build Python 3.9
|
|
|
- shell: bash
|
|
|
- run: |
|
|
|
- python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir="$pythonLocation/include" --python-libdir="$pythonLocation/lib" --verbose --threads=4 --windows-sdk=10
|
|
|
- - name: Test Python 3.9
|
|
|
- shell: bash
|
|
|
- run: |
|
|
|
- python -m pip install -r requirements-test.txt
|
|
|
- PYTHONPATH=built LD_LIBRARY_PATH=built/lib:$pythonLocation/lib DYLD_LIBRARY_PATH=built/lib python -m pytest
|
|
|
+ version: 3.1.51
|
|
|
+ actions-cache-folder: 'emsdk-cache'
|
|
|
|
|
|
- - name: Set up Python 3.8
|
|
|
- uses: actions/setup-python@v4
|
|
|
- with:
|
|
|
- python-version: '3.8'
|
|
|
- - name: Build Python 3.8
|
|
|
- shell: bash
|
|
|
- run: |
|
|
|
- python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir="$pythonLocation/include" --python-libdir="$pythonLocation/lib" --verbose --threads=4 --windows-sdk=10
|
|
|
- - name: Test Python 3.8
|
|
|
+ - name: Build for Emscripten
|
|
|
shell: bash
|
|
|
run: |
|
|
|
- python -m pip install -r requirements-test.txt
|
|
|
- PYTHONPATH=built LD_LIBRARY_PATH=built/lib:$pythonLocation/lib DYLD_LIBRARY_PATH=built/lib python -m pytest
|
|
|
-
|
|
|
- - name: Make installer
|
|
|
- run: |
|
|
|
- python makepanda/makepackage.py --verbose --lzma
|
|
|
+ python3 makepanda/makepanda.py --git-commit=${{github.sha}} --target emscripten --outputdir=built --everything --no-python --verbose --threads=4
|