2022-01-20 00:05:11 +00:00
|
|
|
local function feature()
|
2022-04-05 21:21:11 +00:00
|
|
|
local function excludeFiles(name, noFiles, strict)
|
2021-09-14 13:15:46 +00:00
|
|
|
if (not noFiles) then
|
2022-04-05 21:21:11 +00:00
|
|
|
if (strict) then
|
|
|
|
excludes("**/*." .. name .. ".masm")
|
|
|
|
excludes("**/*." .. name .. ".*")
|
|
|
|
else
|
|
|
|
excludes("**/*" .. name .. ".masm")
|
|
|
|
excludes("**/*" .. name .. ".*")
|
|
|
|
end
|
2021-09-14 13:15:46 +00:00
|
|
|
end
|
|
|
|
excludes("**/" .. name .. "/**")
|
2021-05-20 12:56:44 +00:00
|
|
|
end
|
2021-09-14 13:15:46 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notPlatforms = {"win32"}, notArchs = {"x86_64"}}))
|
2021-11-16 11:28:53 +00:00
|
|
|
excludeFiles "win64"
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2022-03-06 18:03:56 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notPlatforms = {"win32"}}))
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles "windows"
|
2021-11-16 11:28:53 +00:00
|
|
|
excludeFiles "win32"
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2022-03-06 18:03:56 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notPlatforms = {"xbox"}}))
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles "xbox"
|
|
|
|
|
2021-11-16 11:28:53 +00:00
|
|
|
--if (not _G["uwp"]) then
|
|
|
|
excludeFiles "uwp"
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2022-03-06 18:03:56 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notPlatforms = {"win32", "xbox"}}))
|
2022-04-05 21:21:11 +00:00
|
|
|
excludeFiles("nt", false, true)
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2022-03-06 18:03:56 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notPlatforms = {"android"}}))
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles "android"
|
2022-03-06 18:03:56 +00:00
|
|
|
auFilter{}
|
|
|
|
|
2021-11-16 11:28:53 +00:00
|
|
|
local isNotApple = {"mac",
|
|
|
|
"ios"}
|
2021-05-20 12:56:44 +00:00
|
|
|
|
2021-11-16 11:28:53 +00:00
|
|
|
local isNotBsd = auConcatArrays({"bsd",
|
|
|
|
"ps4",
|
|
|
|
"ps5"}, isNotApple)
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notPlatforms = isNotBsd}))
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles "bsd"
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2022-03-06 18:03:56 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notPlatforms = isNotApple}))
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles "apple"
|
|
|
|
excludeFiles "xnu"
|
2022-09-08 20:08:10 +00:00
|
|
|
excludeFiles "darwin"
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2022-03-06 18:03:56 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notPlatforms = {"mac"}}))
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles "osx"
|
2021-11-16 11:28:53 +00:00
|
|
|
excludeFiles "macos"
|
2022-03-06 18:03:56 +00:00
|
|
|
auFilter{}
|
2021-05-20 12:56:44 +00:00
|
|
|
|
2021-11-16 11:28:53 +00:00
|
|
|
local isNotLinux = {"linux",
|
|
|
|
"android"}
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notPlatforms = auConcatArrays(isNotBsd, isNotLinux)}))
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles "unix"
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2022-03-06 18:03:56 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notPlatforms = {"linux", "android"}}))
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles "linux"
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2022-03-06 18:03:56 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notArchs = "x86_64"}))
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles "x64"
|
|
|
|
excludeFiles "x86_64"
|
|
|
|
excludeFiles "amd64"
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2022-03-06 18:03:56 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notArchs = "x86_32"}))
|
2021-09-14 13:15:46 +00:00
|
|
|
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"
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2022-03-06 18:03:56 +00:00
|
|
|
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter(auFilterOf({notArchs = "arm"}))
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles ("arm", true)
|
|
|
|
excludeFiles "aarch64"
|
|
|
|
excludeFiles "aarch"
|
2022-01-20 00:05:11 +00:00
|
|
|
auFilter{}
|
2021-05-20 12:56:44 +00:00
|
|
|
|
2021-09-14 13:15:46 +00:00
|
|
|
excludeFiles "mips"
|
|
|
|
excludeFiles "mips64"
|
|
|
|
excludeFiles "amiga"
|
|
|
|
excludeFiles "powerpc"
|
|
|
|
excludeFiles "riscv"
|
2021-05-20 12:56:44 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
return feature
|