Merge pull request #127 from HyperInspire/feature/rv1106 #144
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 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/tunmx/inspireface-3rdparty.git 3rdparty | |
# 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_macos_x86: | |
name: Compile MacOS-x86 | |
runs-on: macos-13 | |
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/tunmx/inspireface-3rdparty.git 3rdparty | |
# Step 3: Install necessary dependencies for building the CMake project | |
- name: Install Dependencies | |
run: | | |
brew install cmake | |
# Step 4: Start building the SDK | |
- name: Start Building the InspireFace-MacOS-x86 | |
run: | | |
bash command/build_macos_x86.sh | |
ls build | |
build_macos_arm64: | |
name: Compile MacOS-arm64 | |
runs-on: macos-14 | |
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/tunmx/inspireface-3rdparty.git 3rdparty | |
# Step 3: Install necessary dependencies for building the CMake project | |
- name: Install Dependencies | |
run: | | |
brew install cmake | |
# Step 4: Start building the SDK | |
- name: Start Building the InspireFace-MacOS-arm64 | |
run: | | |
bash command/build_macos_arm64.sh | |
ls build | |
build_armv7_armhf: | |
name: Compile 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/tunmx/inspireface-3rdparty.git 3rdparty | |
# 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 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/tunmx/inspireface-3rdparty.git 3rdparty | |
# 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 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/tunmx/inspireface-3rdparty.git 3rdparty | |
# 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 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/tunmx/inspireface-3rdparty.git 3rdparty | |
# 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-r18b | |
wget -qO /tmp/android-ndk.zip https://dl.google.com/android/repository/android-ndk-r18b-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-r18b" >> $GITHUB_ENV | |
echo "PATH=/opt/android-ndk-r18b/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/tunmx/inspireface-3rdparty.git 3rdparty | |
# Step 3: Start building the SDK | |
- name: Start Building the InspireFace-iOS | |
run: | | |
bash command/build_ios.sh | |
ls build | |
build_manylinux2014_x86: | |
name: Compile manylinux2014-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/tunmx/inspireface-3rdparty.git 3rdparty | |
# Step 3: Set up Docker Compose | |
- name: Set up Docker Compose | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y docker-compose | |
# Step 4: Execute the docker-compose command | |
- name: Execute Docker Compose | |
run: | | |
docker-compose up build-manylinux2014-x86 | |
ls build | |
build_armv7_rv1106_armhf_uclibc: | |
name: Compile Linux-armv7 rv1106 | |
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/tunmx/inspireface-3rdparty.git 3rdparty | |
# 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: | | |
git clone https://github.com/tunmx/arm-rockchip830-linux-uclibcgnueabihf.git | |
# Step 5: Install Toolchain | |
- name: Set environment variables | |
run: | | |
echo "ARM_CROSS_COMPILE_TOOLCHAIN=${{ github.workspace }}/arm-rockchip830-linux-uclibcgnueabihf" >> $GITHUB_ENV | |
echo "PATH=${{ github.workspace }}/arm-rockchip830-linux-uclibcgnueabihf/bin:${PATH}" >> $GITHUB_ENV | |
# Step 6: Start building the SDK | |
- name: Start Building the InspireFace-Linux-armv7-rv1106 | |
run: | | |
bash command/build_cross_rv1106_armhf_uclibc.sh | |
ls build |