1- name : build test release
1+ name : build for catch exceptions
22
33on :
44 push :
5- # branches: ["conan"]
6- tags :
7- - " v*.*.*"
8- # pull_request:
9- # branches: [ "main" ]
5+ branches : ["main"]
6+ pull_request :
7+ branches : [ "main" ]
108
119env :
1210 ANDROID_NDK_VERSION : r26c
1311 OPENCV_VERSION : 4.9.0
1412 LIB_NAME : libopencv_dart
1513
1614jobs :
17- build-android :
18- name : build-android
19- runs-on : ubuntu-latest
20- steps :
21- - uses : actions/checkout@v4
22- with :
23- submodules : true
24- - name : setup
25- run : |
26- sudo apt-get update
27-
28- sudo apt-get install -y build-essential libgtk-3-dev ffmpeg libavcodec-dev \
29- cmake ninja-build nasm libavformat-dev libavutil-dev libswscale-dev \
30- libgflags-dev python3 unzip tree python3-pip
31-
32- python3 -m pip install conan
33- conan profile detect -f
34-
35- cd ${{github.workspace}}
36- mkdir -p build/android
37-
38- wget -q -O build/android-ndk-$ANDROID_NDK_VERSION-linux.zip \
39- https://dl.google.com/android/repository/android-ndk-$ANDROID_NDK_VERSION-linux.zip
40- unzip -q -o build/android-ndk-$ANDROID_NDK_VERSION-linux.zip -d build/
41- - name : build-android
42- run : |
43- conan build . -b missing -pr:h profiles/android-x86_64 \
44- -c tools.android:ndk_path="`pwd`/build/android-ndk-$ANDROID_NDK_VERSION"
45- conan build . -b missing -pr:h profiles/android-armv8 \
46- -c tools.android:ndk_path="`pwd`/build/android-ndk-$ANDROID_NDK_VERSION"
47- conan build . -b missing -pr:h profiles/android-armv7 \
48- -c tools.android:ndk_path="`pwd`/build/android-ndk-$ANDROID_NDK_VERSION"
49- - uses : actions/upload-artifact@v4
50- name : upload-android-x86_64
51- with :
52- path : build/publish/libopencv_dart-android-x86_64.tar.gz
53- name : libopencv_dart-android-x86_64.tar.gz
54-
55- - uses : actions/upload-artifact@v4
56- name : upload-android-arm64-v8a
57- with :
58- path : build/publish/libopencv_dart-android-arm64-v8a.tar.gz
59- name : libopencv_dart-android-arm64-v8a.tar.gz
60-
61- - uses : actions/upload-artifact@v4
62- name : upload-android-armeabi-v7a
63- with :
64- path : build/publish/libopencv_dart-android-armeabi-v7a.tar.gz
65- name : libopencv_dart-android-armeabi-v7a.tar.gz
66- - name : Release
67- uses : softprops/action-gh-release@v1
68- if : startsWith(github.ref, 'refs/tags/')
69- with :
70- draft : true
71- prerelease : false
72- files : |
73- build/publish/libopencv_dart-android-arm64-v8a.tar.gz
74- build/publish/libopencv_dart-android-armeabi-v7a.tar.gz
75- build/publish/libopencv_dart-android-x86_64.tar.gz
76-
7715 build-ubuntu :
7816 name : build-ubuntu
7917 runs-on : ubuntu-latest
8422 sudo apt-get update
8523 sudo apt-get install -y curl git wget python3 unzip build-essential \
8624 libgtk-3-dev ffmpeg libavcodec-dev \
87- cmake ninja-build nasm libavformat-dev libavutil-dev \
25+ cmake ninja-build ccache nasm libavformat-dev libavutil-dev \
8826 libswscale-dev libgflags-dev \
8927 libjpeg-dev libpng-dev libtiff-dev python3-pip
9028
@@ -111,170 +49,3 @@ jobs:
11149 export LD_LIBRARY_PATH="${{github.workspace}}/linux:$LD_LIBRARY_PATH"
11250 flutter pub get
11351 flutter test -x skip-workflow,no-local-files
114- - name : Release
115- uses : softprops/action-gh-release@v1
116- if : startsWith(github.ref, 'refs/tags/')
117- with :
118- draft : true
119- prerelease : false
120- files : |
121- build/publish/libopencv_dart-linux-x64.tar.gz
122-
123- build-windows :
124- name : build-windows
125- runs-on : windows-latest
126-
127- steps :
128- - uses : actions/checkout@v4
129- with :
130- submodules : true
131- - uses : actions/setup-python@v5
132- with :
133- python-version : " 3.11"
134- - name : build-opencv-dart
135- run : |
136- python3 -m pip install conan
137- conan profile detect -f
138- conan build . -b missing -s compiler.cppstd=20
139-
140- - uses : actions/upload-artifact@v4
141- name : upload-windows-x64
142- with :
143- path : build/publish/libopencv_dart-windows-x64.tar.gz
144- name : libopencv_dart-windows-x64.tar.gz
145- - uses : subosito/flutter-action@v2
146- with :
147- # flutter-version: '3.16.9'
148- channel : " stable"
149- - name : Run Test
150- run : |
151- $env:PATH = "${{github.workspace}}\windows;${env:PATH}"
152- flutter pub get
153- flutter test -x no-local-files
154- - name : Release
155- uses : softprops/action-gh-release@v1
156- if : startsWith(github.ref, 'refs/tags/')
157- with :
158- draft : true
159- prerelease : false
160- files : |
161- build/publish/libopencv_dart-windows-x64.tar.gz
162- build-macos :
163- name : build-macos
164- runs-on : macos-latest
165- steps :
166- - uses : actions/checkout@v4
167- with :
168- submodules : true
169- - name : setup
170- run : |
171- brew install --force --overwrite ninja ccache ffmpeg nasm conan
172- conan profile detect -f
173- cd ${{github.workspace}}
174- - name : build
175- run : |
176- conan build . -b missing
177-
178- - uses : actions/upload-artifact@v4
179- name : upload-macos-x64
180- with :
181- path : build/publish/libopencv_dart-macos-x64.tar.gz
182- name : libopencv_dart-macos-x64.tar.gz
183- - uses : subosito/flutter-action@v2
184- with :
185- # flutter-version: '3.16.9'
186- channel : " stable"
187- - name : Run Test
188- run : |
189- ls -alh ${{github.workspace}}/macos
190- export DYLD_LIBRARY_PATH="${{github.workspace}}/macos:$DYLD_LIBRARY_PATH"
191- flutter pub get
192- flutter test -x no-local-files
193- - name : Release
194- uses : softprops/action-gh-release@v1
195- if : startsWith(github.ref, 'refs/tags/')
196- with :
197- draft : true
198- prerelease : false
199- files : |
200- build/publish/libopencv_dart-macos-x64.tar.gz
201- build-macos-arm64 :
202- name : build-macos-arm64
203- runs-on : macos-14
204- steps :
205- - uses : actions/checkout@v4
206- with :
207- submodules : true
208- - name : setup
209- run : |
210- # brew update
211- brew install --force --overwrite ninja ccache ffmpeg nasm conan
212- conan profile detect -f
213- cd ${{github.workspace}}
214- - name : build
215- run : |
216- conan build . -b missing
217- ls -alh build/Macos
218-
219- - uses : actions/upload-artifact@v4
220- name : upload-macos-arm64
221- with :
222- path : build/publish/libopencv_dart-macos-arm64.tar.gz
223- name : libopencv_dart-macos-arm64.tar.gz
224- - uses : subosito/flutter-action@v2
225- with :
226- # flutter-version: '3.16.9'
227- channel : " stable"
228- - name : Run Test
229- run : |
230- ls -alh ${{github.workspace}}/macos
231- export DYLD_LIBRARY_PATH="${{github.workspace}}/macos:$DYLD_LIBRARY_PATH"
232- flutter pub get
233- flutter test -x no-local-files
234- - name : Release
235- uses : softprops/action-gh-release@v1
236- if : startsWith(github.ref, 'refs/tags/')
237- with :
238- draft : true
239- prerelease : false
240- files : |
241- build/publish/libopencv_dart-macos-arm64.tar.gz
242- build-ios :
243- name : build-ios
244- runs-on : macos-14
245- steps :
246- - uses : actions/checkout@v4
247- with :
248- submodules : true
249- - name : setup
250- run : |
251- brew install --force --overwrite ninja ccache nasm conan
252- conan profile detect -f
253- cd ${{github.workspace}}
254- - name : build
255- run : |
256- echo "tools.cmake.cmaketoolchain:user_toolchain=[\"`pwd`/profiles/ios.toolchain.cmake\"]" >> profiles/ios-armv8
257- conan build . -b missing -pr:h profiles/ios-armv8
258-
259- echo "tools.cmake.cmaketoolchain:user_toolchain=[\"`pwd`/profiles/ios.toolchain.cmake\"]" >> profiles/ios-x86_64
260- conan build . -b missing -pr:h profiles/ios-x86_64
261-
262- - uses : actions/upload-artifact@v4
263- name : upload
264- with :
265- path : build/publish/libopencv_dart-ios-arm64.tar.gz
266- name : libopencv_dart-ios-arm64.tar.gz
267- - uses : actions/upload-artifact@v4
268- name : upload x64
269- with :
270- path : build/publish/libopencv_dart-ios-x64.tar.gz
271- name : libopencv_dart-ios-x64.tar.gz
272- - name : Release
273- uses : softprops/action-gh-release@v1
274- if : startsWith(github.ref, 'refs/tags/')
275- with :
276- draft : true
277- prerelease : false
278- files : |
279- build/publish/libopencv_dart-ios-arm64.tar.gz
280- build/publish/libopencv_dart-ios-x64.tar.gz
0 commit comments