Skip to content

Jenova Runtime Update v0.3.9.0 Hotfix 4 #83

Jenova Runtime Update v0.3.9.0 Hotfix 4

Jenova Runtime Update v0.3.9.0 Hotfix 4 #83

# Developed by Hamid.Memar
name: Deploy Jenova Runtime (Linux-x64)
on: [push]
jobs:
linux-gcc:
name: Runtime Build (GCC)
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Set Up Python 3.10
uses: actions/setup-python@v3
with:
python-version: '3.10'
- name: Add Conda to System path
run: |
echo $CONDA/bin >> $GITHUB_PATH
- name: Install Python Dependencies
run: |
conda install -y -c defaults -c conda-forge requests py7zr colored
- name: Update Package Lists
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt update
- name: Install GNU Compiler Collection 13
run: |
sudo apt install gcc-13 g++-13 -y
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-13 130 --slave /usr/bin/g++ g++ /usr/bin/g++-13
sudo update-alternatives --config gcc
sudo apt install libc6-dev
sudo apt install libzstd-dev
gcc --version
g++ --version
- name: Install CMake and Ninja
run: |
sudo apt install cmake ninja-build -y
cmake --version
ninja --version
- name: Install OpenSSL
run: |
sudo apt-get install libssl3
sudo apt-get install libssl-dev
- name: Build Jenova Runtime using GCC13
run: |
python3 ./Jenova.Builder.py --skip-packaging --deploy-mode --deps-version "4.5" --compiler linux-gcc
- name: Verbose Compiled Binary Dependencies
run: |
ldd Linux64/Jenova.Runtime.Linux64.so
- name: Prepare Jenova SDK and Extension
run: |
mkdir -p packaging/Jenova/JenovaSDK
echo "" > packaging/Jenova/JenovaSDK/.gdignore
cp Source/JenovaSDK.h packaging/Jenova/JenovaSDK/
cp Jenova.Runtime.gdextension packaging/Jenova/
cp Linux64/Jenova.Runtime.Linux64.so packaging/Jenova/
- name: Upload Jenova Runtime Snapshot Build
uses: actions/upload-artifact@v4
with:
name: jenova-runtime-gnu-snapshot-linux64
include-hidden-files: true
path: packaging/
retention-days: 30
linux-clang:
name: Runtime Build (LLVM)
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Set Up Python 3.10
uses: actions/setup-python@v3
with:
python-version: '3.10'
- name: Add Conda to System path
run: |
echo $CONDA/bin >> $GITHUB_PATH
- name: Install Python Dependencies
run: |
conda install -y -c defaults -c conda-forge requests py7zr colored
- name: Update Package Lists
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt update
- name: Install LLVM Clang 19
run: |
sudo apt-get remove --purge clang clang-* lld-* lldb-* llvm-* libclang-* -y
sudo apt-get autoremove -y
sudo apt-get autoclean
sudo apt-get install clang-19 lld-19 -y
sudo apt-get install libzstd-dev
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-19 100
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-19 100
clang --version
clang++ --version
- name: Install CMake and Ninja
run: |
sudo apt install cmake ninja-build -y
cmake --version
ninja --version
- name: Install OpenSSL
run: |
sudo apt-get install libssl3
sudo apt-get install libssl-dev
- name: Build Jenova Runtime using LLVM CLANG19
run: |
python3 ./Jenova.Builder.py --skip-packaging --deploy-mode --deps-version "4.5" --compiler linux-clang
- name: Verbose Compiled Binary Dependencies
run: |
ldd Linux64/Jenova.Runtime.Linux64.so
- name: Prepare Jenova SDK and Extension
run: |
mkdir -p packaging/Jenova/JenovaSDK
echo "" > packaging/Jenova/JenovaSDK/.gdignore
cp Source/JenovaSDK.h packaging/Jenova/JenovaSDK/
cp Jenova.Runtime.gdextension packaging/Jenova/
cp Linux64/Jenova.Runtime.Linux64.so packaging/Jenova/
- name: Upload Jenova Runtime Snapshot Build
uses: actions/upload-artifact@v4
with:
name: jenova-runtime-clang-snapshot-linux64
include-hidden-files: true
path: packaging/
retention-days: 30