зеркало из https://github.com/microsoft/msquic.git
Add support for building for iOS (#1904)
* Add support for building for iOS * Add iOS azure template Co-authored-by: Thad House <thadhouse1@gmail.com>
This commit is contained in:
Родитель
289a595e9c
Коммит
1b17a55c34
|
@ -386,6 +386,13 @@ stages:
|
||||||
extraName: 'static'
|
extraName: 'static'
|
||||||
extraBuildArgs: -Static -ExtraArtifactDir Static
|
extraBuildArgs: -Static -ExtraArtifactDir Static
|
||||||
|
|
||||||
|
- template: ./templates/build-config-user.yml
|
||||||
|
parameters:
|
||||||
|
image: macOS-10.15
|
||||||
|
platform: ios
|
||||||
|
arch: arm64
|
||||||
|
tls: openssl
|
||||||
|
|
||||||
- stage: merge_darwin
|
- stage: merge_darwin
|
||||||
displayName: Merge Darwin (macOS)
|
displayName: Merge Darwin (macOS)
|
||||||
dependsOn:
|
dependsOn:
|
||||||
|
|
|
@ -336,13 +336,13 @@ if(QUIC_TLS STREQUAL "openssl")
|
||||||
list(APPEND QUIC_COMMON_DEFINES QUIC_DISABLE_DEFERRED_CERT_TESTS)
|
list(APPEND QUIC_COMMON_DEFINES QUIC_DISABLE_DEFERRED_CERT_TESTS)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (CMAKE_GENERATOR_PLATFORM STREQUAL "")
|
|
||||||
string(TOLOWER ${CMAKE_SYSTEM_PROCESSOR} SYSTEM_PROCESSOR)
|
|
||||||
else()
|
|
||||||
string(TOLOWER ${CMAKE_GENERATOR_PLATFORM} SYSTEM_PROCESSOR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
if (CMAKE_GENERATOR_PLATFORM STREQUAL "")
|
||||||
|
string(TOLOWER ${CMAKE_SYSTEM_PROCESSOR} SYSTEM_PROCESSOR)
|
||||||
|
else()
|
||||||
|
string(TOLOWER ${CMAKE_GENERATOR_PLATFORM} SYSTEM_PROCESSOR)
|
||||||
|
endif()
|
||||||
|
|
||||||
# Generate the MsQuicEtw header file.
|
# Generate the MsQuicEtw header file.
|
||||||
file(MAKE_DIRECTORY ${QUIC_BUILD_DIR}/inc)
|
file(MAKE_DIRECTORY ${QUIC_BUILD_DIR}/inc)
|
||||||
|
|
||||||
|
|
|
@ -108,7 +108,7 @@ param (
|
||||||
[string]$Arch = "",
|
[string]$Arch = "",
|
||||||
|
|
||||||
[Parameter(Mandatory = $false)]
|
[Parameter(Mandatory = $false)]
|
||||||
[ValidateSet("uwp", "windows", "linux", "macos", "android")] # For future expansion
|
[ValidateSet("uwp", "windows", "linux", "macos", "android", "ios")] # For future expansion
|
||||||
[string]$Platform = "",
|
[string]$Platform = "",
|
||||||
|
|
||||||
[Parameter(Mandatory = $false)]
|
[Parameter(Mandatory = $false)]
|
||||||
|
@ -219,6 +219,11 @@ if (!$IsWindows -And $Platform -eq "uwp") {
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($Platform -eq "ios" -and !$Static) {
|
||||||
|
$Static = $true
|
||||||
|
Write-Host "iOS can only be built as static"
|
||||||
|
}
|
||||||
|
|
||||||
# Root directory of the project.
|
# Root directory of the project.
|
||||||
$RootDir = Split-Path $PSScriptRoot -Parent
|
$RootDir = Split-Path $PSScriptRoot -Parent
|
||||||
|
|
||||||
|
@ -295,6 +300,9 @@ function CMake-Generate {
|
||||||
} else {
|
} else {
|
||||||
$Arguments += " $Generator"
|
$Arguments += " $Generator"
|
||||||
}
|
}
|
||||||
|
if ($Platform -eq "ios") {
|
||||||
|
$Arguments += " -DCMAKE_SYSTEM_NAME=iOS"
|
||||||
|
}
|
||||||
if($Static) {
|
if($Static) {
|
||||||
$Arguments += " -DQUIC_BUILD_SHARED=off"
|
$Arguments += " -DQUIC_BUILD_SHARED=off"
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,7 +30,7 @@ param (
|
||||||
[string]$Arch = "",
|
[string]$Arch = "",
|
||||||
|
|
||||||
[Parameter(Mandatory = $false)]
|
[Parameter(Mandatory = $false)]
|
||||||
[ValidateSet("uwp", "windows", "linux", "macos", "android", "")] # For future expansion
|
[ValidateSet("uwp", "windows", "linux", "macos", "android", "ios", "")] # For future expansion
|
||||||
[string]$Platform = "",
|
[string]$Platform = "",
|
||||||
|
|
||||||
[Parameter(Mandatory = $false)]
|
[Parameter(Mandatory = $false)]
|
||||||
|
@ -53,6 +53,15 @@ if ($Platform -eq "android") {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($Platform -eq "ios") {
|
||||||
|
if (!$IsMacOS) {
|
||||||
|
Write-Error "Can only build ios on macOS"
|
||||||
|
}
|
||||||
|
if ($Arch -eq "") {
|
||||||
|
$Arch = "arm64"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if ("" -eq $Arch) {
|
if ("" -eq $Arch) {
|
||||||
if ($IsMacOS) {
|
if ($IsMacOS) {
|
||||||
$RunningArch = uname -m
|
$RunningArch = uname -m
|
||||||
|
|
|
@ -26,6 +26,9 @@ Abstract:
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
#pragma warning(pop)
|
#pragma warning(pop)
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef __APPLE__
|
||||||
|
#include <TargetConditionals.h>
|
||||||
|
#endif
|
||||||
#ifdef QUIC_CLOG
|
#ifdef QUIC_CLOG
|
||||||
#include "selfsign_openssl.c.clog.h"
|
#include "selfsign_openssl.c.clog.h"
|
||||||
#endif
|
#endif
|
||||||
|
@ -476,6 +479,9 @@ CxPlatFreeSelfSignedCert(
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
DeleteFileA(Params->CertFilepath);
|
DeleteFileA(Params->CertFilepath);
|
||||||
DeleteFileA(Params->PrivateKeyFilepath);
|
DeleteFileA(Params->PrivateKeyFilepath);
|
||||||
|
#elif TARGET_OS_IOS
|
||||||
|
UNREFERENCED_PARAMETER(CredConfig);
|
||||||
|
UNREFERENCED_PARAMETER(Params);
|
||||||
#else
|
#else
|
||||||
char RmCmd[32] = {0};
|
char RmCmd[32] = {0};
|
||||||
strncpy(RmCmd, "rm -rf ", 7 + 1);
|
strncpy(RmCmd, "rm -rf ", 7 + 1);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче