mirror of
https://github.com/SoftEtherVPN/SoftEtherVPN.git
synced 2024-12-26 18:19:53 +03:00
Merge PR #1196: Use "clang-cl" for Windows builds on Azure Pipelines, fix non-const wchar_t array literal initialization
This commit is contained in:
commit
490fc7b65c
@ -1,6 +1,8 @@
|
||||
parameters:
|
||||
- name: architecture
|
||||
type: string
|
||||
- name: compilerPath
|
||||
type: string
|
||||
- name: vcpkgTriplet
|
||||
type: string
|
||||
- name: vcvarsPath
|
||||
@ -18,7 +20,7 @@ steps:
|
||||
displayName: 'Prepare environment'
|
||||
- script: |
|
||||
call "${{parameters.vcvarsPath}}"
|
||||
cmake -G "Ninja" -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=${{parameters.vcpkgTriplet}} -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_COMPILER=cl -DCMAKE_CXX_COMPILER=cl $(Build.SourcesDirectory)
|
||||
cmake -G "Ninja" -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=${{parameters.vcpkgTriplet}} -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_COMPILER="${{parameters.compilerPath}}" -DCMAKE_CXX_COMPILER="${{parameters.compilerPath}}" $(Build.SourcesDirectory)
|
||||
cmake --build .
|
||||
workingDirectory: $(Build.BinariesDirectory)
|
||||
displayName: 'Build'
|
||||
|
@ -7,6 +7,7 @@ jobs:
|
||||
- template: "azure-pipelines-win-steps.yml"
|
||||
parameters:
|
||||
architecture: "x86_64"
|
||||
compilerPath: "C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/Llvm/x64/bin/clang-cl.exe"
|
||||
vcpkgTriplet: "x64-windows-static-md"
|
||||
vcvarsPath: "C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Auxiliary/Build/vcvars64.bat"
|
||||
- job: windows_x86
|
||||
@ -17,5 +18,6 @@ jobs:
|
||||
- template: "azure-pipelines-win-steps.yml"
|
||||
parameters:
|
||||
architecture: "x86"
|
||||
compilerPath: "C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Tools/Llvm/bin/clang-cl.exe"
|
||||
vcpkgTriplet: "x86-windows-static-md"
|
||||
vcvarsPath: "C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Auxiliary/Build/vcvarsamd64_x86.bat"
|
||||
|
@ -56,7 +56,7 @@ bool Win32UPnPAddPort(UINT outside_port, UINT inside_port, bool udp, char *local
|
||||
IUPnPNAT *nat = NULL;
|
||||
wchar_t ip_str[MAX_SIZE];
|
||||
BSTR bstr_ip, bstr_description, bstr_protocol;
|
||||
wchar_t *protocol_str = (udp ? L"UDP" : L"TCP");
|
||||
const wchar_t *protocol_str = (udp ? L"UDP" : L"TCP");
|
||||
// Validate arguments
|
||||
if (outside_port == 0 || outside_port >= 65536 || inside_port == 0 || inside_port >= 65536 ||
|
||||
IsEmptyStr(local_ip) || UniIsEmptyStr(description))
|
||||
|
@ -13,8 +13,10 @@ set(COMPONENT_FILE_NAME "${COMPONENT_FILE_NAME}.exe")
|
||||
configure_file("${TOP_DIRECTORY}/src/BuildFiles/VerScript/ver.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
|
||||
target_sources(vpndrvinst PRIVATE "vpndrvinst.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
|
||||
|
||||
# Fixes manifest authoring error c1010001
|
||||
set_target_properties(vpndrvinst PROPERTIES LINK_FLAGS "/MANIFESTUAC:level='requireAdministrator'")
|
||||
if(MSVC)
|
||||
# Fixes manifest authoring error c1010001
|
||||
set_target_properties(vpndrvinst PROPERTIES LINK_FLAGS "/manifestuac:level='requireAdministrator'")
|
||||
endif()
|
||||
|
||||
if(${COMPILER_ARCHITECTURE} STREQUAL "x64")
|
||||
target_sources(vpndrvinst PRIVATE "${TOP_DIRECTORY}/src/BuildFiles/Manifests/x64_admin.manifest")
|
||||
|
Loading…
Reference in New Issue
Block a user