Skip to content

Commit 8904c9f

Browse files
committed
add build opencv only
1 parent dd9e80f commit 8904c9f

File tree

2 files changed

+86
-1
lines changed

2 files changed

+86
-1
lines changed

.github/workflows/build.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ name: Build
33
on:
44
push:
55
branches: [ main ]
6+
paths: [ '.github/workflows/build.yml' ]
67
workflow_dispatch:
78

89
env:
@@ -11,7 +12,7 @@ env:
1112

1213
jobs:
1314
build:
14-
name: Build OpenCV
15+
name: Build All
1516
runs-on: 'ubuntu-latest'
1617

1718
steps:

.github/workflows/opencv.yml

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
name: Build
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
paths: [ '.github/workflows/opencv.yml' ]
7+
workflow_dispatch:
8+
9+
env:
10+
OPENCV_VERSION: 4.10.0
11+
12+
jobs:
13+
build:
14+
name: Build OpenCV
15+
runs-on: 'ubuntu-latest'
16+
17+
steps:
18+
- name: Install Dependencies
19+
run: |
20+
echo "Installing dependencies..."
21+
# Do nothing now
22+
23+
- name: Checkout OpenCV repo
24+
uses: actions/checkout@v4
25+
with:
26+
repository: opencv/opencv
27+
ref: ${{ env.OPENCV_VERSION }}
28+
path: opencv
29+
fetch-depth: 1
30+
31+
- name: Checkout OpenCV Contrib repo
32+
uses: actions/checkout@v4
33+
with:
34+
repository: opencv/opencv_contrib
35+
ref: ${{ env.OPENCV_VERSION }}
36+
path: opencv_contrib
37+
fetch-depth: 1
38+
39+
- name: Configure OpenCV
40+
run: |
41+
cd opencv && mkdir build && cd build && \
42+
cmake \
43+
-D CMAKE_BUILD_TYPE=RELEASE \
44+
-D OPENCV_EXTRA_MODULES_PATH=${{ github.workspace }}/opencv_contrib/modules \
45+
-D BUILD_SHARED_LIBS=OFF \
46+
-D ENABLE_CXX11=ON \
47+
-D BUILD_EXAMPLES=OFF \
48+
-D BUILD_DOCS=OFF \
49+
-D BUILD_PERF_TESTS=OFF \
50+
-D BUILD_TESTS=OFF \
51+
-D BUILD_JAVA=OFF \
52+
-D BUILD_LIST=core,imgproc,imgcodecs \
53+
-D BUILD_PNG=ON \
54+
-D BUILD_TIFF=ON \
55+
-D WITH_GSTREAMER=OFF \
56+
-D WITH_ADE=OFF \
57+
-D WITH_FFMPEG=OFF \
58+
-D WITH_V4L=OFF \
59+
-D WITH_1394=OFF \
60+
-D WITH_GTK=OFF \
61+
-D WITH_OPENEXR=OFF \
62+
-D WITH_PROTOBUF=OFF \
63+
-D WITH_QUIRC=OFF \
64+
-D OPENCV_ENABLE_NONFREE=ON \
65+
..
66+
67+
- name: Build OpenCV
68+
run: |
69+
cd opencv/build && make -j$(nproc)
70+
71+
- name: Show Build Artifacts
72+
run: |
73+
cd opencv/build && ls -lR | grep -iE 'libopencv|opencv_.*\.so|opencv_.*\.dll|opencv_.*\.a|opencv_.*\.dylib'
74+
75+
- name: Make artifacts
76+
run: |
77+
mkdir artifacts && cd artifacts
78+
cp ../lib/libopencv*.a .
79+
80+
- name: Upload Artifacts
81+
uses: actions/upload-artifact@v4
82+
with:
83+
name: opencv-linux-x64
84+
path: artifacts

0 commit comments

Comments
 (0)