27
27
required : true
28
28
type : string
29
29
30
+ curl_version :
31
+ required : true
32
+ type : string
33
+
30
34
ds2_revision :
31
35
required : true
32
36
type : string
@@ -1045,70 +1049,12 @@ jobs:
1045
1049
path : ${{ github.workspace }}/BuildRoot/Library/zlib-${{ inputs.zlib_version }}/usr
1046
1050
1047
1051
curl :
1048
- # TODO: Build this on macOS or make an equivalent Mac-only job
1049
- if : inputs.build_os == 'Windows'
1050
1052
needs : [zlib]
1051
1053
runs-on : ${{ inputs.default_build_runner }}
1052
1054
1053
1055
strategy :
1054
1056
fail-fast : false
1055
- matrix :
1056
- include :
1057
- - arch : amd64
1058
- cc : cl
1059
- cflags : ${{ inputs.WINDOWS_CMAKE_C_FLAGS }}
1060
- cxx : cl
1061
- cxxflags : ${{ inputs.WINDOWS_CMAKE_CXX_FLAGS }}
1062
- os : Windows
1063
- extra_flags :
1064
-
1065
- - arch : arm64
1066
- cc : cl
1067
- cflags : ${{ inputs.WINDOWS_CMAKE_C_FLAGS }}
1068
- cxx : cl
1069
- cxxflags : ${{ inputs.WINDOWS_CMAKE_CXX_FLAGS }}
1070
- os : Windows
1071
- extra_flags :
1072
-
1073
- - arch : x86
1074
- cc : cl
1075
- cflags : ${{ inputs.WINDOWS_CMAKE_C_FLAGS }}
1076
- cxx : cl
1077
- cxxflags : ${{ inputs.WINDOWS_CMAKE_CXX_FLAGS }}
1078
- os : Windows
1079
- extra_flags :
1080
-
1081
- - arch : arm64
1082
- cc : clang
1083
- cflags : ${{ inputs.ANDROID_CMAKE_C_FLAGS }}
1084
- cxx : clang++
1085
- cxxflags : ${{ inputs.ANDROID_CMAKE_CXX_FLAGS }}
1086
- os : Android
1087
- extra_flags : -DCMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -DCMAKE_ANDROID_ARCH_ABI=arm64-v8a
1088
-
1089
- - arch : armv7
1090
- cc : clang
1091
- cflags : ${{ inputs.ANDROID_CMAKE_C_FLAGS }}
1092
- cxx : clang++
1093
- cxxflags : ${{ inputs.ANDROID_CMAKE_CXX_FLAGS }}
1094
- os : Android
1095
- extra_flags : -DCMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -DCMAKE_ANDROID_ARCH_ABI=armeabi-v7a
1096
-
1097
- - arch : i686
1098
- cc : clang
1099
- cflags : ${{ inputs.ANDROID_CMAKE_C_FLAGS }}
1100
- cxx : clang++
1101
- cxxflags : ${{ inputs.ANDROID_CMAKE_CXX_FLAGS }}
1102
- os : Android
1103
- extra_flags : -DCMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -DCMAKE_ANDROID_ARCH_ABI=x86
1104
-
1105
- - arch : x86_64
1106
- cc : clang
1107
- cflags : ${{ inputs.ANDROID_CMAKE_C_FLAGS }}
1108
- cxx : clang++
1109
- cxxflags : ${{ inputs.ANDROID_CMAKE_CXX_FLAGS }}
1110
- os : Android
1111
- extra_flags : -DCMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -DCMAKE_ANDROID_ARCH_ABI=x86_64
1057
+ matrix : ${{ fromJSON(inputs.target_matrix) }}
1112
1058
1113
1059
name : ${{ matrix.os }} ${{ matrix.arch }} curl
1114
1060
@@ -1131,9 +1077,11 @@ jobs:
1131
1077
components : ' Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
1132
1078
arch : ${{ matrix.arch }}
1133
1079
1080
+ - uses : seanmiddleditch/gha-setup-ninja@master
1081
+ if : inputs.build_os == 'Darwin'
1082
+
1134
1083
- name : Compute workspace hash
1135
1084
id : workspace_hash
1136
- shell : pwsh
1137
1085
run : |
1138
1086
$stringAsStream = [System.IO.MemoryStream]::new()
1139
1087
$writer = [System.IO.StreamWriter]::new($stringAsStream)
@@ -1157,8 +1105,11 @@ jobs:
1157
1105
1158
1106
- name : Configure curl
1159
1107
run : |
1160
- $NDKPATH = cygpath -m ${{ steps.setup-ndk.outputs.ndk-path }}
1161
- cmake -B ${{ github.workspace }}/BinaryCache/curl-8.9.1 `
1108
+ $NDKPATH = "${{ steps.setup-ndk.outputs.ndk-path }}"
1109
+ if ( "${{ inputs.build_os }}" -eq "Windows" ) {
1110
+ $NDKPATH = cygpath -m $NDKPATH
1111
+ }
1112
+ cmake -B ${{ github.workspace }}/BinaryCache/curl-${{ inputs.curl_version }} `
1162
1113
-D BUILD_SHARED_LIBS=NO `
1163
1114
-D CMAKE_BUILD_TYPE=Release `
1164
1115
-D CMAKE_C_COMPILER=${{ matrix.cc }} `
@@ -1168,7 +1119,7 @@ jobs:
1168
1119
-D CMAKE_CXX_COMPILER_LAUNCHER=sccache `
1169
1120
-D CMAKE_CXX_FLAGS="${{ matrix.cxxflags }}" `
1170
1121
-D CMAKE_MT=mt `
1171
- -D CMAKE_INSTALL_PREFIX=${{ github.workspace }}/BuildRoot/Library/curl-8.9.1 /usr `
1122
+ -D CMAKE_INSTALL_PREFIX=${{ github.workspace }}/BuildRoot/Library/curl-${{ inputs.curl_version }} /usr `
1172
1123
-D CMAKE_SYSTEM_NAME=${{ matrix.os }} `
1173
1124
${{ matrix.extra_flags }} `
1174
1125
-G Ninja `
@@ -1254,14 +1205,14 @@ jobs:
1254
1205
-D CMAKE_POSITION_INDEPENDENT_CODE=YES `
1255
1206
-D CMAKE_ANDROID_NDK=$NDKPATH
1256
1207
- name : Build curl
1257
- run : cmake --build ${{ github.workspace }}/BinaryCache/curl-8.9.1
1208
+ run : cmake --build ${{ github.workspace }}/BinaryCache/curl-${{ inputs.curl_version }}
1258
1209
- name : Install curl
1259
- run : cmake --build ${{ github.workspace }}/BinaryCache/curl-8.9.1 --target install
1210
+ run : cmake --build ${{ github.workspace }}/BinaryCache/curl-${{ inputs.curl_version }} --target install
1260
1211
1261
1212
- uses : actions/upload-artifact@v4
1262
1213
with :
1263
- name : curl-${{ matrix.os }}-${{ matrix.arch }}-8.9.1
1264
- path : ${{ github.workspace }}/BuildRoot/Library/curl-8.9.1 /usr
1214
+ name : curl-${{ matrix.os }}-${{ matrix.arch }}-${{ inputs.curl_version }}
1215
+ path : ${{ github.workspace }}/BuildRoot/Library/curl-${{ inputs.curl_version }} /usr
1265
1216
1266
1217
libxml2 :
1267
1218
# TODO: Build this on macOS or make an equivalent Mac-only job
@@ -1959,8 +1910,8 @@ jobs:
1959
1910
path : ${{ github.workspace }}/BuildRoot/Library/libxml2-2.11.5/usr
1960
1911
- uses : actions/download-artifact@v4
1961
1912
with :
1962
- name : curl-${{ matrix.os }}-${{ matrix.arch }}-8.9.1
1963
- path : ${{ github.workspace }}/BuildRoot/Library/curl-8.9.1 /usr
1913
+ name : curl-${{ matrix.os }}-${{ matrix.arch }}-${{ inputs.curl_version }}
1914
+ path : ${{ github.workspace }}/BuildRoot/Library/curl-${{ inputs.curl_version }} /usr
1964
1915
- uses : actions/download-artifact@v4
1965
1916
with :
1966
1917
name : zlib-${{ matrix.os }}-${{ matrix.arch }}-${{ inputs.zlib_version }}
@@ -2176,7 +2127,7 @@ jobs:
2176
2127
-G Ninja `
2177
2128
-S ${{ github.workspace }}/SourceCache/swift-corelibs-foundation `
2178
2129
-D dispatch_DIR=${{ github.workspace }}/BinaryCache/libdispatch/cmake/modules `
2179
- -D CURL_DIR=${{ github.workspace }}/BuildRoot/Library/curl-8.9.1 /usr/lib/cmake/CURL `
2130
+ -D CURL_DIR=${{ github.workspace }}/BuildRoot/Library/curl-${{ inputs.curl_version }} /usr/lib/cmake/CURL `
2180
2131
-D FOUNDATION_BUILD_TOOLS=${build_tools} `
2181
2132
-D Foundation_MACRO=${{ github.workspace }}/BuildRoot/Library/Developer/Toolchains/unknown-Asserts-development.xctoolchain/usr/bin `
2182
2133
-D ENABLE_TESTING=NO `
0 commit comments