build opencvsharp seprately #8
This file contains hidden or 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-OpenCvSharp | |
| on: | |
| push: | |
| branches: [ main ] | |
| paths: [ '.github/workflows/opencvsharp.yml' ] | |
| workflow_dispatch: | |
| env: | |
| OPENCVSHARP_VERSION: 4.10.0.20241024 | |
| jobs: | |
| build: | |
| name: Build OpenCvSharp | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Download OpenCV Artifacts | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| run: | | |
| echo "Fetching latest run of opencv.yml on branch ${{ github.ref_name }}" | |
| RUN_ID=$(gh run list -R ${{ github.repository }} --workflow=opencv.yml --branch=${{ github.ref_name }} --status=success --limit=1 --json databaseId | jq -r '.[0].databaseId') | |
| echo "Latest opencv run ID: $RUN_ID" | |
| echo "Downloading artifact 'opencv' from run ${RUN_ID}" | |
| gh run download -R ${{ github.repository }} $RUN_ID --name opencv-linux-x64 --dir opencv | |
| ls -lR opencv | |
| - name: Checkout OpenCvSharp | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: shimat/opencvsharp | |
| ref: ${{ env.OPENCVSHARP_VERSION }} | |
| path: opencvsharp | |
| - name: Apply Patches | |
| run: | | |
| cd opencvsharp | |
| git apply ../eng/opencvsharp.patch | |
| - name: Configure OpenCvSharp | |
| run: | | |
| cd opencvsharp && mkdir build && cd build && \ | |
| cmake \ | |
| -D CMAKE_INSTALL_PREFIX=${{ github.workspace }}/opencvsharp/build \ | |
| -D OpenCV_DIR=${{ github.workspace }}/opencv/lib/cmake/opencv4 \ | |
| ../src | |
| - name: Build OpenCvSharp | |
| run: | | |
| cd opencvsharp/build && make -j$(nproc) | |
| - name: Show OpenCvSharp Artifacts | |
| run: | | |
| cd opencvsharp/build | |
| ls -lR | |
| ldd OpenCvSharpExtern/libOpenCvSharpExtern.so | |
| - name: Make artifacts | |
| run: | | |
| mkdir artifacts && cd artifacts && mkdir lib test | |
| cp -r ../opencvsharp/build/OpenCvSharpExtern/libOpenCvSharpExtern.so ./lib | |
| ls -lR | |
| - name: Upload Artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: opencvsharp-linux-x64-${{ matrix.os }} | |
| path: artifacts |