Build ios #26
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: Build SDKs | |
on: | |
push: | |
branches: ["master"] | |
pull_request: | |
branches: ["master"] | |
# Set the global GitHub token environment variable | |
env: | |
GITHUB_TOKEN: ${{ secrets.MY_GITHUB_TOKEN }} | |
jobs: | |
build_linux_x86: | |
name: Compile and Package Linux-Ubuntu-x86 | |
runs-on: ubuntu-latest | |
steps: | |
# Step 1: Checkout the repository | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
# Step 2: Synchronize and update submodules recursively | |
- name: Update submodules | |
run: | | |
git clone --recurse-submodules https://github.com/HyperInspire/3rdparty.git | |
# Step 3: Install necessary dependencies for building the CMake project | |
- name: Install Dependencies | |
run: | | |
sudo apt-get update # Update package lists | |
# Install build tools and required libraries for video processing | |
sudo apt-get install -y build-essential libgtk-3-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev | |
# Step 4: Start building the SDK | |
- name: Start Building the InspireFace-Linux-x86 | |
run: | | |
bash command/build_linux_ubuntu18.sh | |
ls build | |
build_armv7_armhf: | |
name: Compile and Package Armv7-armhf | |
runs-on: ubuntu-latest | |
steps: | |
# Step 1: Checkout the repository | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
# Step 2: Synchronize and update submodules recursively | |
- name: Update submodules | |
run: | | |
git clone --recurse-submodules https://github.com/HyperInspire/3rdparty.git | |
# Step 3: Install wget and xz-utils | |
- name: Install wget and xz-utils | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y wget xz-utils | |
# Step 4: Download Toolchain | |
- name: Download and Extract Linaro Toolchain | |
run: | | |
mkdir -p /opt/linaro-toolchain | |
wget -qO- https://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/arm-linux-gnueabihf/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf.tar.xz | tar -xJ -C /opt/linaro-toolchain --strip-components=1 | |
# Step 5: Install Toolchain | |
- name: Set environment variables | |
run: | | |
echo "ARM_CROSS_COMPILE_TOOLCHAIN=/opt/linaro-toolchain" >> $GITHUB_ENV | |
echo "PATH=/opt/linaro-toolchain/bin:${PATH}" >> $GITHUB_ENV | |
# Step 6: Start building the SDK | |
- name: Start Building the InspireFace-Linux-armv7 | |
run: | | |
bash command/build_cross_armv7_armhf.sh | |
ls build | |
build_armv7_rv1109rv1126_armhf: | |
name: Compile and Package Linux-armv7-rv1109rv1126-armhf | |
runs-on: ubuntu-latest | |
steps: | |
# Step 1: Checkout the repository | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
# Step 2: Synchronize and update submodules recursively | |
- name: Update submodules | |
run: | | |
git clone --recurse-submodules https://github.com/HyperInspire/3rdparty.git | |
# Step 3: Install wget and xz-utils | |
- name: Install wget and xz-utils | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y wget xz-utils | |
# Step 4: Download Toolchain | |
- name: Download and Extract Linaro Toolchain | |
run: | | |
mkdir -p /opt/linaro-toolchain | |
wget -qO- https://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/arm-linux-gnueabihf/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf.tar.xz | tar -xJ -C /opt/linaro-toolchain --strip-components=1 | |
# Step 5: Install Toolchain | |
- name: Set environment variables | |
run: | | |
echo "ARM_CROSS_COMPILE_TOOLCHAIN=/opt/linaro-toolchain" >> $GITHUB_ENV | |
echo "PATH=/opt/linaro-toolchain/bin:${PATH}" >> $GITHUB_ENV | |
# Step 6: Start building the SDK | |
- name: Start Building the InspireFace-Linux-armv7-rv1109rv1126 | |
run: | | |
bash command/build_cross_rv1109rv1126_armhf.sh | |
ls build | |
build_linux_aarch64: | |
name: Compile and Package Linux-Aarch64 | |
runs-on: ubuntu-latest | |
steps: | |
# Step 1: Checkout the repository | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
# Step 2: Synchronize and update submodules recursively | |
- name: Update submodules | |
run: | | |
git clone --recurse-submodules https://github.com/HyperInspire/3rdparty.git | |
# Step 3: Install wget and xz-utils | |
- name: Install wget and xz-utils | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y wget xz-utils | |
# Step 4: Download Toolchain | |
- name: Download and Extract Linaro Toolchain | |
run: | | |
mkdir -p /opt/linaro-toolchain | |
wget -qO- https://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/aarch64-linux-gnu/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.xz | tar -xJ -C /opt/linaro-toolchain --strip-components=1 | |
# Step 5: Install Toolchain | |
- name: Set environment variables | |
run: | | |
echo "ARM_CROSS_COMPILE_TOOLCHAIN=/opt/linaro-toolchain" >> $GITHUB_ENV | |
echo "PATH=/opt/linaro-toolchain/bin:${PATH}" >> $GITHUB_ENV | |
# Step 6: Start building the SDK | |
- name: Start Building the InspireFace-Linux-aarch64 | |
run: | | |
bash command/build_cross_aarch64.sh | |
ls build | |
build_android: | |
name: Compile and Package Android | |
runs-on: ubuntu-latest | |
steps: | |
# Step 1: Checkout the repository | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
# Step 2: Synchronize and update submodules recursively | |
- name: Update submodules | |
run: | | |
git clone --recurse-submodules https://github.com/HyperInspire/3rdparty.git | |
# Step 3: Install dependencies | |
- name: Install Dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y wget unzip xz-utils | |
# Step 4: Download and Extract Android NDK | |
- name: Download and Extract Android NDK | |
run: | | |
mkdir -p /opt/android-ndk-r19c | |
wget -qO /tmp/android-ndk.zip https://dl.google.com/android/repository/android-ndk-r19c-linux-x86_64.zip | |
unzip /tmp/android-ndk.zip -d /opt | |
rm /tmp/android-ndk.zip | |
# Step 5: Install Android NDK Environment Variables | |
- name: Set Android NDK Environment Variables | |
run: | | |
echo "ANDROID_NDK=/opt/android-ndk-r19c" >> $GITHUB_ENV | |
echo "PATH=/opt/android-ndk-r19c/bin:${PATH}" >> $GITHUB_ENV | |
# Step 6: Download and Extract OpenCV Android SDK | |
- name: Download and Extract OpenCV Android SDK | |
run: | | |
mkdir -p /opt/opencv-android-sdk | |
wget -qO /tmp/opencv-android-sdk.zip https://github.com/opencv/opencv/releases/download/4.5.1/opencv-4.5.1-android-sdk.zip | |
unzip /tmp/opencv-android-sdk.zip -d /opt/opencv-android-sdk | |
rm /tmp/opencv-android-sdk.zip | |
# Step 7: Set OpenCV Environment Variables | |
- name: Set OpenCV Environment Variables | |
run: | | |
echo "OPENCV_DIR=/opt/opencv-android-sdk/OpenCV-android-sdk/sdk/native/jni" >> $GITHUB_ENV | |
# Step 8: Start building the SDK | |
- name: Start Building the InspireFace-Android | |
run: | | |
bash command/build_android.sh | |
ls build | |
build_ios: | |
name: Compile iOS-arm64 | |
runs-on: macos-latest | |
steps: | |
# Step 1: Checkout the repository | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
# Step 2: Synchronize and update submodules recursively | |
- name: Update submodules | |
run: | | |
git clone --recurse-submodules https://github.com/HyperInspire/3rdparty.git | |
# Step 3: Start building the SDK | |
- name: Start Building the InspireFace-iOS | |
run: | | |
bash command/build_ios.sh | |
ls build |