Apparently the issue with Sol and std::optional is a GCC version thing, not Linux vs MinGW.

Also, tidied up the test views in some more fruit machine layouts.
This commit is contained in:
Vas Crabb 2022-04-06 04:15:25 +10:00
parent a2ea498286
commit ae8634669a
9 changed files with 299 additions and 8083 deletions

View File

@ -93,11 +93,6 @@ function addprojectflags()
buildoptions_cpp { buildoptions_cpp {
"-Wsuggest-override", "-Wsuggest-override",
} }
configuration { "linux-*" }
buildoptions_cpp {
"-flifetime-dse=1", -- GCC for Linux takes issue with Sol's get<std::optional<T> >() otherwise
}
configuration {}
end end
end end
@ -1036,7 +1031,7 @@ end
local version = str_to_version(_OPTIONS["gcc_version"]) local version = str_to_version(_OPTIONS["gcc_version"])
if string.find(_OPTIONS["gcc"], "clang") or string.find(_OPTIONS["gcc"], "asmjs") or string.find(_OPTIONS["gcc"], "android") then if string.find(_OPTIONS["gcc"], "clang") or string.find(_OPTIONS["gcc"], "asmjs") or string.find(_OPTIONS["gcc"], "android") then
if (version < 60000) then if version < 60000 then
print("Clang version 6.0 or later needed") print("Clang version 6.0 or later needed")
os.exit(-1) os.exit(-1)
end end
@ -1065,7 +1060,7 @@ end
} }
end end
else else
if (version < 70000) then if version < 70000 then
print("GCC version 7.0 or later needed") print("GCC version 7.0 or later needed")
os.exit(-1) os.exit(-1)
end end
@ -1081,7 +1076,12 @@ end
"-Wno-array-bounds", "-Wno-array-bounds",
"-Wno-error=attributes", -- GCC fails to recognize some uses of [[maybe_unused]] "-Wno-error=attributes", -- GCC fails to recognize some uses of [[maybe_unused]]
} }
if (version >= 80000) then if version < 100000 then
buildoptions_cpp {
"-flifetime-dse=1", -- GCC 9 takes issue with Sol's get<std::optional<T> >() otherwise
}
end
if version >= 80000 then
buildoptions { buildoptions {
"-Wno-stringop-truncation", -- ImGui again "-Wno-stringop-truncation", -- ImGui again
"-Wno-stringop-overflow", -- formats/victor9k_dsk.cpp bugs the compiler "-Wno-stringop-overflow", -- formats/victor9k_dsk.cpp bugs the compiler
@ -1090,7 +1090,7 @@ end
"-Wno-class-memaccess", -- many instances in ImGui and BGFX "-Wno-class-memaccess", -- many instances in ImGui and BGFX
} }
end end
if (version >= 110000) then if version >= 110000 then
buildoptions { buildoptions {
"-Wno-nonnull", -- luaengine.cpp lambdas do not need "this" captured but GCC 11.1 erroneously insists "-Wno-nonnull", -- luaengine.cpp lambdas do not need "this" captured but GCC 11.1 erroneously insists
"-Wno-stringop-overread", -- machine/bbc.cpp in GCC 11.1 "-Wno-stringop-overread", -- machine/bbc.cpp in GCC 11.1

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff