@@ -13,29 +13,35 @@ jobs:
1313 fail-fast : false
1414 matrix :
1515 include :
16- # - platform: mac-intel
17- # os: macos-14
18- # before_install: macos.sh
19- # conan_profile: macos-intel
20- # - platform: mac-arm
21- # os: macos-14
22- # before_install: macos.sh
23- # conan_profile: macos-arm
24- # - platform: ios
25- # os: macos-14
26- # before_install: macos.sh
27- # conan_profile: ios-arm64
28- # - platform: android-armeabi-v7a
29- # os: ubuntu-24.04
30- # conan_profile: android-32-ndk
31- # - platform: android-arm64-v8a
32- # os: ubuntu-24.04
33- # conan_profile: android-64-ndk
34- - platform : windows-x64
35- os : windows-2022
36- # before_install: msvc.sh
37- conan_profile : msvc-x64
38- conan_options : -c tools.cmake.cmaketoolchain:generator=
16+ - platform : mac-intel
17+ os : macos-14
18+ before_install : macos.sh
19+ conan_profile : macos-intel
20+ conan_system_libs : ' *'
21+ - platform : mac-arm
22+ os : macos-14
23+ before_install : macos.sh
24+ conan_profile : macos-arm
25+ conan_system_libs : ' *'
26+ - platform : ios
27+ os : macos-14
28+ before_install : macos.sh
29+ conan_profile : ios-arm64
30+ conan_system_libs : ' *'
31+ - platform : android-armeabi-v7a
32+ os : ubuntu-24.04
33+ before_install : android.sh
34+ conan_profile : android-32-ndk
35+ conan_system_libs : zlib
36+ - platform : android-arm64-v8a
37+ os : ubuntu-24.04
38+ conan_profile : android-64-ndk
39+ conan_system_libs : zlib
40+ # - platform: windows-x64
41+ # os: windows-2022
42+ # # before_install: msvc.sh
43+ # conan_profile: msvc-x64
44+ # conan_options: -o target_pre_windows10=True -c tools.cmake.cmaketoolchain:generator=
3945 runs-on : ${{ matrix.os }}
4046
4147 steps :
@@ -53,22 +59,51 @@ jobs:
5359 java-version : ' 17'
5460
5561 - name : Prepare CI
56- if : " ${{ matrix.before_install != '' }} "
62+ if : ${{ matrix.before_install }}
5763 shell : bash
5864 run : source '${{github.workspace}}/CI/before_install/${{matrix.before_install}}'
5965
6066 - name : Install Conan
61- run : pipx install conan
67+ run : |
68+ pipx install conan
69+ conan profile detect
70+
71+ - name : Install system libs recipes
72+ if : ${{ matrix.conan_system_libs }}
73+ shell : bash
74+ run : |
75+ systemLibsRepo='conan-system-libs'
76+ git clone "https://github.com/kambala-decapitator/$systemLibsRepo.git" \
77+ --depth 1 \
78+ --no-tags \
79+ --single-branch
80+ cd "$systemLibsRepo"
81+ for p in ${{ matrix.conan_system_libs }} ; do
82+ [ -d "$p" ] && conan create "$p" --user system
83+ done
84+
85+ # TODO: remove when https://github.com/conan-io/conan-center-index/pull/26577 is merged
86+ - name : Build LuaJIT from PR changes
87+ shell : bash
88+ run : |
89+ # TODO: sparse checkout
90+ cciForkRepo='conan-center-index'
91+ git clone "https://github.com/kambala-decapitator/$cciForkRepo.git" \
92+ --branch package/luajit \
93+ --depth 1 \
94+ --no-tags \
95+ --single-branch
96+ conan create "$cciForkRepo/recipes/luajit/all" \
97+ --version=2.1.0-beta3 \
98+ --profile=CI/conan/${{ matrix.conan_profile }} \
99+ --build=missing
62100
63101 # TODO:
64- # 0. install system libs recipes for Apple/Android
65102 # 1. download our patches
66103 # 2. build patched packages with conan create
67- # 3. build LuaJIT from PR changes with conan create
68104
69105 - name : Generate conan profile
70106 run : |
71- conan profile detect
72107 conan install . -of conan-generated -b missing -pr CI/conan/${{ matrix.conan_profile }} ${{ matrix.conan_options }}
73108
74109 - name : Remove builds and source code
0 commit comments