1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-07-27 17:28:41 +00:00

Switch to LLVM-based MinGW toolchain (#14329)

This commit is contained in:
sfan5 2024-02-16 21:36:19 +01:00 committed by GitHub
parent 8c3a6a819e
commit f483d10c95
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 110 additions and 147 deletions

View file

@ -67,12 +67,14 @@ extern "C" {
#error Minetest cannot be built without exceptions or RTTI
#endif
#if defined(__MINGW32__) && !defined(__MINGW64__) && !defined(__clang__) && \
(__GNUC__ < 11 || (__GNUC__ == 11 && __GNUC_MINOR__ < 1))
// see e.g. https://github.com/minetest/minetest/issues/10137
#warning ==================================
#warning 32-bit MinGW gcc before 11.1 has known issues with crashes on thread exit, you should upgrade.
#warning ==================================
#if defined(__MINGW32__) && !defined(__clang__)
// see https://github.com/minetest/minetest/issues/14140 or
// https://github.com/minetest/minetest/issues/10137 for one of the various issues we had
#error ==================================
#error MinGW gcc has a broken TLS implementation and is not supported for building \
Minetest. Look at testTLS() in test_threading.cpp and see for yourself. \
Please use a clang-based compiler or alternatively MSVC.
#error ==================================
#endif
#define DEBUGFILE "debug.txt"
@ -435,6 +437,13 @@ static void print_version(std::ostream &os)
os << "Using " << LUAJIT_VERSION << std::endl;
#else
os << "Using " << LUA_RELEASE << std::endl;
#endif
#if defined(__clang__)
os << "Built by Clang " << __clang_major__ << "." << __clang_minor__ << std::endl;
#elif defined(__GNUC__)
os << "Built by GCC " << __GNUC__ << "." << __GNUC_MINOR__ << std::endl;
#elif defined(_MSC_VER)
os << "Built by MSVC " << (_MSC_VER / 100) << "." << (_MSC_VER % 100) << std::endl;
#endif
os << "Running on " << porting::get_sysinfo() << std::endl;
os << g_build_info << std::endl;