build: remove Docker since it's useless and refactor CI

This commit is contained in:
2025-04-14 11:27:13 +02:00
parent 2d69f181e2
commit a571d18f7d
4 changed files with 58 additions and 90 deletions

View File

@@ -6,9 +6,11 @@ targetdir "%{wks.location}/bin/%{cfg.platform}/%{cfg.buildcfg}"
configurations {"debug", "release"}
if os.istarget("darwin") then
platforms {"x64", "arm64"}
else
if os.istarget("linux") then
platforms {"x86", "amd64", "arm64"}
elseif os.istarget("macosx") then
platforms {"amd64", "arm64"}
else
platforms {"x86", "x64", "arm64"}
end
@@ -20,6 +22,10 @@ filter "platforms:x64"
architecture "x86_64"
filter {}
filter "platforms:amd64"
architecture "x86_64"
filter {}
filter "platforms:arm64"
architecture "ARM64"
filter {}
@@ -39,7 +45,25 @@ filter {"system:linux", "system:macosx"}
linkoptions "-pthread"
filter {}
filter {"system:macosx", "platforms:arm64"}
if os.istarget("linux") then
-- this supports cross-compilation for arm64
filter { "toolset:clang*", "platforms:arm64" }
buildoptions "--target=arm64-linux-gnu"
linkoptions "--target=arm64-linux-gnu"
filter {}
filter { "toolset:clang*" }
-- always try to use lld. LD or Gold will not work
linkoptions "-fuse-ld=lld"
filter {}
end
filter { "system:macosx", "platforms:amd64" }
buildoptions "-arch x86_64"
linkoptions "-arch x86_64"
filter {}
filter { "system:macosx", "platforms:arm64" }
buildoptions "-arch arm64"
linkoptions "-arch arm64"
filter {}
@@ -53,7 +77,7 @@ flags {"NoIncrementalLink", "NoMinimalRebuild", "MultiProcessorCompile", "No64Bi
filter "configurations:release"
optimize "Speed"
defines "NDEBUG"
flags "FatalCompileWarnings"
fatalwarnings {"All"}
filter {}
filter "configurations:debug"