build: use clang on Windows too (refactor Premake for cURL)

This commit is contained in:
6arelyFuture 2025-04-30 11:59:49 +02:00
parent 7c5d17d87a
commit 89794c0952
Signed by: Future
GPG Key ID: F2000F181A4F7C85
2 changed files with 18 additions and 16 deletions

View File

@ -25,10 +25,16 @@ jobs:
matrix: matrix:
configuration: configuration:
- release - release
compiler:
- msvc
- clang
arch: arch:
- x86
- x64 - x64
- arm64 - arm64
include: include:
- arch: x86
platform: Win32
- arch: x64 - arch: x64
platform: x64 platform: x64
- arch: arm64 - arch: arm64
@ -49,19 +55,24 @@ jobs:
- name: Add msbuild to PATH - name: Add msbuild to PATH
uses: microsoft/setup-msbuild@main uses: microsoft/setup-msbuild@main
- name: Generate project files - name: Generate project files (clang)
if: matrix.compiler == 'clang'
run: premake5 --cc=${{matrix.compiler}} vs2022
- name: Generate project files (msvc)
if: matrix.compiler == 'msvc'
run: premake5 vs2022 run: premake5 vs2022
- name: Set up problem matching - name: Set up problem matching
uses: ammaraskar/msvc-problem-matcher@master uses: ammaraskar/msvc-problem-matcher@master
- name: Build ${{matrix.arch}} ${{matrix.configuration}} binaries - name: Build ${{matrix.arch}} ${{matrix.configuration}} ${{matrix.compiler}} binaries
run: msbuild /m /p:Configuration=${{matrix.configuration}} /p:Platform=${{matrix.platform}} build/aw-installer.sln run: msbuild /m /p:Configuration=${{matrix.configuration}} /p:Platform=${{matrix.platform}} build/aw-installer.sln
- name: Upload ${{matrix.arch}} ${{matrix.configuration}} binaries - name: Upload ${{matrix.arch}} ${{matrix.configuration}} ${{matrix.compiler}} binaries
uses: actions/upload-artifact@main uses: actions/upload-artifact@main
with: with:
name: windows-${{matrix.arch}}-${{matrix.configuration}} name: windows-${{matrix.arch}}-${{matrix.configuration}}-${{matrix.compiler}}
path: | path: |
build/bin/${{matrix.arch}}/${{matrix.configuration}}/aw-installer.exe build/bin/${{matrix.arch}}/${{matrix.configuration}}/aw-installer.exe
build/bin/${{matrix.arch}}/${{matrix.configuration}}/aw-installer.pdb build/bin/${{matrix.arch}}/${{matrix.configuration}}/aw-installer.pdb

15
deps/premake/curl.lua vendored
View File

@ -5,7 +5,7 @@ curl = {
function curl.import() function curl.import()
links { "curl" } links { "curl" }
filter "toolset:msc*" filter "system:windows"
links { "Crypt32.lib" } links { "Crypt32.lib" }
filter {} filter {}
@ -13,7 +13,7 @@ function curl.import()
end end
function curl.includes() function curl.includes()
filter "toolset:msc*" filter "system:windows"
includedirs { includedirs {
path.join(curl.source, "include"), path.join(curl.source, "include"),
} }
@ -49,7 +49,7 @@ function curl.project()
"BUILDING_LIBCURL", "BUILDING_LIBCURL",
} }
filter "toolset:msc*" filter "system:windows"
defines { defines {
"USE_SCHANNEL", "USE_SCHANNEL",
@ -58,15 +58,6 @@ function curl.project()
} }
filter {} filter {}
filter "toolset:not msc*"
defines {
"USE_GNUTLS",
"USE_THREADS_POSIX",
}
filter {}
warnings "Off" warnings "Off"
kind "StaticLib" kind "StaticLib"