diff --git a/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCStandard.cpp b/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCStandard.cpp index 8fe9cab0..9b4a4e98 100644 --- a/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCStandard.cpp +++ b/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCStandard.cpp @@ -5,9 +5,9 @@ std::wstring SourceGroupSettingsWithCStandard::getDefaultCStandardStatic() { #ifdef __linux__ - return L"gnu11"; + return L"gnu17"; #else - return L"c11"; + return L"c17"; #endif } @@ -27,7 +27,14 @@ void SourceGroupSettingsWithCStandard::setCStandard(const std::wstring& standard std::vector SourceGroupSettingsWithCStandard::getAvailableCStandards() const { + // as defined in clang/include/clang/Frontend/LangStandards.def + return { + L"c2x", + L"gnu2x", + L"c17", + L"gnu17", + L"iso9899:2017", L"c11", L"gnu11", L"iso9899:2011", diff --git a/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCppStandard.cpp b/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCppStandard.cpp index 8d44581d..5e9e4ba3 100644 --- a/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCppStandard.cpp +++ b/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCppStandard.cpp @@ -27,6 +27,8 @@ void SourceGroupSettingsWithCppStandard::setCppStandard(const std::wstring& stan std::vector SourceGroupSettingsWithCppStandard::getAvailableCppStandards() const { + // as defined in clang/include/clang/Frontend/LangStandards.def + return { L"c++2a", L"gnu++2a", diff --git a/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCxxCrossCompilationOptions.cpp b/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCxxCrossCompilationOptions.cpp index 869fcb22..da73cc68 100644 --- a/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCxxCrossCompilationOptions.cpp +++ b/src/lib/settings/source_group/component/cxx/SourceGroupSettingsWithCxxCrossCompilationOptions.cpp @@ -4,11 +4,15 @@ std::vector SourceGroupSettingsWithCxxCrossCompilationOptions::getAvailableArchTypes() { + // as defined in llvm/lib/Support/Triple.cpp + return { L"aarch64", L"aarch64_be", + L"aarch64_32", L"arm", L"armeb", + L"arc", L"avr", L"bpfel", L"bpfeb", @@ -73,40 +77,31 @@ std::vector SourceGroupSettingsWithCxxCrossCompilationOptions::get L"csr", L"myriad", L"amd", - L"mesa"}; + L"mesa", + L"suse", + L"oe", + }; } std::vector SourceGroupSettingsWithCxxCrossCompilationOptions::getAvailableOsTypes() { - return {L"unknown", L"cloudabi", L"darwin", L"dragonfly", L"freebsd", L"fuchsia", L"ios", - L"kfreebsd", L"linux", L"lv2", L"macosx", L"netbsd", L"openbsd", L"solaris", - L"windows", L"haiku", L"minix", L"rtems", L"nacl", L"cnk", L"bitrig", - L"aix", L"cuda", L"nvcl", L"amdhsa", L"ps4", L"elfiamcu", L"tvos", - L"watchos", L"mesa3d", L"contiki"}; + return { + L"unknown", L"cloudabi", L"darwin", L"dragonfly", L"freebsd", L"fuchsia", L"ios", + L"kfreebsd", L"linux", L"lv2", L"macosx", L"netbsd", L"openbsd", L"solaris", + L"windows", L"haiku", L"minix", L"rtems", L"nacl", L"cnk", L"aix", + L"cuda", L"nvcl", L"amdhsa", L"ps4", L"elfiamcu", L"tvos", L"watchos", + L"mesa3d", L"contiki", L"amdpal", L"hermit", L"hurd", L"wasi", L"emscripten", + }; } std::vector SourceGroupSettingsWithCxxCrossCompilationOptions::getAvailableEnvironmentTypes() { return { - L"unknown", - L"gnu", - L"gnuabi64", - L"gnueabihf", - L"gnueabi", - L"gnux32", - L"code16", - L"eabi", - L"eabihf", - L"android", - L"musl", - L"musleabi", - L"musleabihf", - L"msvc", - L"itanium", - L"cygnus", - L"amdopencl", - L"coreclr", - L"opencl"}; + L"unknown", L"gnu", L"gnuabin32", L"gnuabi64", L"gnueabihf", L"gnueabi", + L"gnux32", L"code16", L"eabi", L"eabihf", L"elfv1", L"elfv2", + L"android", L"musl", L"musleabi", L"musleabihf", L"msvc", L"itanium", + L"cygnus", L"coreclr", L"simulator", L"macabi", + }; } bool SourceGroupSettingsWithCxxCrossCompilationOptions::getTargetOptionsEnabled() const