Skip to content

Commit 06b409e

Browse files
authored
split ios build (#981)
1 parent 1ef4f92 commit 06b409e

4 files changed

Lines changed: 101 additions & 51 deletions

File tree

Utilities/Pipelines/Tasks/ios-build.yml

Lines changed: 4 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,6 @@ parameters:
55
steps:
66
- template: checkout.yml
77

8-
# Build the CMake static lib
9-
- script: |
10-
cmake -B Build/libHttpClient.iOS.CMake/build \
11-
-S Build/libHttpClient.iOS.CMake \
12-
-DCMAKE_SYSTEM_NAME=iOS \
13-
-DCMAKE_OSX_ARCHITECTURES=arm64 \
14-
-DCMAKE_BUILD_TYPE=${{ parameters.configuration }}
15-
cmake --build Build/libHttpClient.iOS.CMake/build --config ${{ parameters.configuration }}
16-
displayName: 'Clean build iOS CMake static lib'
17-
18-
# Build libHttpClient.Apple.C configurations
198
- task: Xcode@5
209
displayName: 'Clean build iOS static lib'
2110
inputs:
@@ -25,6 +14,7 @@ steps:
2514
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
2615
scheme: 'libHttpClient_iOS'
2716
packageApp: false
17+
useXcpretty: false
2818

2919
- task: Xcode@5
3020
displayName: 'Clean build iOS framework'
@@ -35,6 +25,7 @@ steps:
3525
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
3626
scheme: 'libHttpClientFramework_iOS'
3727
packageApp: false
28+
useXcpretty: false
3829

3930
- task: Xcode@5
4031
displayName: 'Clean build iOS_NOWEBSOCKETS static lib'
@@ -45,6 +36,7 @@ steps:
4536
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
4637
scheme: 'libHttpClient_NOWEBSOCKETS_iOS'
4738
packageApp: false
39+
useXcpretty: false
4840

4941
- task: Xcode@5
5042
displayName: 'Clean build iOS_NOWEBSOCKETS framework'
@@ -55,44 +47,5 @@ steps:
5547
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
5648
scheme: 'libHttpClientFramework_NOWEBSOCKETS_iOS'
5749
packageApp: false
58-
59-
- task: Xcode@5
60-
displayName: 'Clean build macOS static lib'
61-
inputs:
62-
actions: 'clean build'
63-
configuration: ${{ parameters.configuration }}
64-
sdk: 'macosx'
65-
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
66-
scheme: 'libHttpClient_macOS'
67-
packageApp: false
68-
69-
- task: Xcode@5
70-
displayName: 'Clean build macOS framework'
71-
inputs:
72-
actions: 'clean build'
73-
configuration: ${{ parameters.configuration }}
74-
sdk: 'macosx'
75-
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
76-
scheme: 'libHttpClientFramework_macOS'
77-
packageApp: false
78-
79-
- task: Xcode@5
80-
displayName: 'Clean build macOS_NOWEBSOCKETS static lib'
81-
inputs:
82-
actions: 'clean build'
83-
configuration: ${{ parameters.configuration }}
84-
sdk: 'macosx'
85-
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
86-
scheme: 'libHttpClient_NOWEBSOCKETS_macOS'
87-
packageApp: false
88-
89-
- task: Xcode@5
90-
displayName: 'Clean build macOS_NOWEBSOCKETS framework'
91-
inputs:
92-
actions: 'clean build'
93-
configuration: ${{ parameters.configuration }}
94-
sdk: 'macosx'
95-
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
96-
scheme: 'libHttpClientFramework_NOWEBSOCKETS_macOS'
97-
packageApp: false
50+
useXcpretty: false
9851

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
parameters:
2+
- name: configuration
3+
type: string
4+
5+
steps:
6+
- template: checkout.yml
7+
8+
- script: |
9+
cmake -B Build/libHttpClient.iOS.CMake/build \
10+
-S Build/libHttpClient.iOS.CMake \
11+
-DCMAKE_SYSTEM_NAME=iOS \
12+
-DCMAKE_OSX_ARCHITECTURES=arm64 \
13+
-DCMAKE_BUILD_TYPE=${{ parameters.configuration }}
14+
cmake --build Build/libHttpClient.iOS.CMake/build --config ${{ parameters.configuration }}
15+
displayName: 'Build iOS CMake static lib'
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
parameters:
2+
- name: configuration
3+
type: string
4+
5+
steps:
6+
- template: checkout.yml
7+
8+
- task: Xcode@5
9+
displayName: 'Clean build macOS static lib'
10+
inputs:
11+
actions: 'clean build'
12+
configuration: ${{ parameters.configuration }}
13+
sdk: 'macosx'
14+
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
15+
scheme: 'libHttpClient_macOS'
16+
packageApp: false
17+
useXcpretty: false
18+
19+
- task: Xcode@5
20+
displayName: 'Clean build macOS framework'
21+
inputs:
22+
actions: 'clean build'
23+
configuration: ${{ parameters.configuration }}
24+
sdk: 'macosx'
25+
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
26+
scheme: 'libHttpClientFramework_macOS'
27+
packageApp: false
28+
useXcpretty: false
29+
30+
- task: Xcode@5
31+
displayName: 'Clean build macOS_NOWEBSOCKETS static lib'
32+
inputs:
33+
actions: 'clean build'
34+
configuration: ${{ parameters.configuration }}
35+
sdk: 'macosx'
36+
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
37+
scheme: 'libHttpClient_NOWEBSOCKETS_macOS'
38+
packageApp: false
39+
useXcpretty: false
40+
41+
- task: Xcode@5
42+
displayName: 'Clean build macOS_NOWEBSOCKETS framework'
43+
inputs:
44+
actions: 'clean build'
45+
configuration: ${{ parameters.configuration }}
46+
sdk: 'macosx'
47+
xcWorkspacePath: Build/libHttpClient.Apple.C/libHttpClient.xcworkspace
48+
scheme: 'libHttpClientFramework_NOWEBSOCKETS_macOS'
49+
packageApp: false
50+
useXcpretty: false

Utilities/Pipelines/libHttpClient.CI.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,22 @@ jobs:
9696
# iOS
9797
####################
9898

99+
- job: iOSCMakeBuild
100+
displayName: libHttpClient iOS CMake Build
101+
pool:
102+
vmImage: macOS-15
103+
timeoutInMinutes: 180
104+
strategy:
105+
matrix:
106+
Debug:
107+
Configuration: Debug
108+
Release:
109+
Configuration: Release
110+
steps:
111+
- template: Tasks/ios-cmake-build.yml
112+
parameters:
113+
configuration: $(Configuration)
114+
99115
- job: iOSBuild
100116
displayName: libHttpClient iOS Build
101117
pool:
@@ -112,6 +128,22 @@ jobs:
112128
parameters:
113129
configuration: $(Configuration)
114130

131+
- job: macOSBuild
132+
displayName: libHttpClient macOS Build
133+
pool:
134+
vmImage: macOS-15
135+
timeoutInMinutes: 180
136+
strategy:
137+
matrix:
138+
Debug:
139+
Configuration: Debug
140+
Release:
141+
Configuration: Release
142+
steps:
143+
- template: Tasks/macos-build.yml
144+
parameters:
145+
configuration: $(Configuration)
146+
115147
####################
116148
# Linux
117149
####################

0 commit comments

Comments
 (0)