Build/Features/guess-platform-code.lua

90 lines
2.3 KiB
Lua

local feature = function()
local excludeFiles = function(name, noFiles)
if (not noFiles) then
excludes("**/*" .. name .. ".masm")
excludes("**/*" .. name .. ".*")
end
excludes("**/" .. name .. "/**")
end
filter(auFilterOf({notPlatforms = {"win32"}, notArchs = {"win64"}}))
excludeFiles "win64"
filter(auFilterOf({notPlatforms = {"win32"}}))
excludeFiles "windows"
excludeFiles "win32"
filter(auFilterOf({notPlatforms = {"xbox"}}))
excludeFiles "xbox"
--if (not _G["uwp"]) then
excludeFiles "uwp"
filter(auFilterOf({notPlatforms = {"win32", "xbox"}}))
excludeFiles "nt"
filter(auFilterOf({notPlatforms = {"android"}}))
excludeFiles "android"
local isNotApple = {"mac",
"ios"}
local isNotBsd = auConcatArrays({"bsd",
"ps4",
"ps5"}, isNotApple)
filter(auFilterOf({notPlatforms = isNotBsd}))
excludeFiles "bsd"
filter(auFilterOf({notPlatforms = isNotApple}))
excludeFiles "apple"
excludeFiles "xnu"
filter(auFilterOf({notPlatforms = {"mac"}}))
excludeFiles "osx"
excludeFiles "macos"
local isNotLinux = {"linux",
"android"}
filter(auFilterOf({notPlatforms = auConcatArrays(isNotBsd, isNotLinux)}))
excludeFiles "unix"
filter(auFilterOf({notPlatforms = {"linux", "android"}}))
excludeFiles "linux"
filter(auFilterOf({notArchs = "x86_64"}))
excludeFiles "x64"
excludeFiles "x86_64"
excludeFiles "amd64"
filter(auFilterOf({notArchs = "x86_32"}))
excludes "**/x86/**"
excludes "**/x86/**.c"
excludes "**/x86/**.h"
excludes "**/x86/**.*pp"
excludes "**/x86/**.masm"
excludes "**/x86/**.inl"
excludes "**/x86/**.cpp"
excludes "**/*.x86.*pp"
excludeFiles "x86_32"
excludeFiles "intel"
filter(auFilterOf({notArchs = "arm"}))
excludeFiles ("arm", true)
excludeFiles "aarch64"
excludeFiles "aarch"
filter{}
excludeFiles "mips"
excludeFiles "mips64"
excludeFiles "amiga"
excludeFiles "powerpc"
excludeFiles "riscv"
end
return feature