Просмотр исходного кода

Made Clang & GCC minimum supported version explicit.

Бранимир Караџић 1 год назад
Родитель
Сommit
4d4fa5a945
3 измененных файлов с 20 добавлено и 9 удалено
  1. 3 8
      include/bx/macros.h
  2. 16 0
      include/bx/platform.h
  3. 1 1
      src/timer.cpp

+ 3 - 8
include/bx/macros.h

@@ -59,18 +59,13 @@
 #	define BX_UNREACHABLE __builtin_unreachable()
 #	define BX_NO_VTABLE
 #	define BX_PRINTF_ARGS(_format, _args) __attribute__( (format(__printf__, _format, _args) ) )
-
-#	if BX_CLANG_HAS_FEATURE(cxx_thread_local) \
-	|| (!BX_PLATFORM_OSX && (BX_COMPILER_GCC >= 40200) ) \
-	|| (BX_COMPILER_GCC >= 40500)
-#		define BX_THREAD_LOCAL __thread
-#	endif // BX_COMPILER_GCC
-
+#	define BX_THREAD_LOCAL __thread
 #	define BX_ATTRIBUTE(_x) __attribute__( (_x) )
 
 #	if BX_CRT_MSVC
 #		define __stdcall
 #	endif // BX_CRT_MSVC
+
 #elif BX_COMPILER_MSVC
 #	define BX_ASSUME(_condition) __assume(_condition)
 #	define BX_ALIGN_DECL(_align, _decl) __declspec(align(_align) ) _decl
@@ -140,7 +135,7 @@
 #	define BX_PRAGMA_DIAGNOSTIC_IGNORED_CLANG(_x)
 #endif // BX_COMPILER_CLANG
 
-#if BX_COMPILER_GCC && BX_COMPILER_GCC >= 40600
+#if BX_COMPILER_GCC
 #	define BX_PRAGMA_DIAGNOSTIC_PUSH_GCC_()       _Pragma("GCC diagnostic push")
 #	define BX_PRAGMA_DIAGNOSTIC_POP_GCC_()        _Pragma("GCC diagnostic pop")
 #	define BX_PRAGMA_DIAGNOSTIC_IGNORED_GCC(_x)   _Pragma(BX_STRINGIZE(GCC diagnostic ignored _x) )

+ 16 - 0
include/bx/platform.h

@@ -464,6 +464,22 @@
 //#error "Minimum supported macOS version is 16.00.\n"
 #endif // BX_PLATFORM_OSX < 130000
 
+#if BX_COMPILER_CLANG && BX_COMPILER_CLANG < 11000
+// https://releases.llvm.org/
+static_assert(false, "\n\n"
+	"\t** IMPORTANT! **\n\n"
+	"\tMinimum supported Clang version is 11.0 (October 12, 2020).\n");
+	"\t\n");
+#endif // BX_COMPILER_*
+
+#if BX_COMPILER_GCC && BX_COMPILER_GCC < 80400
+// https://gcc.gnu.org/releases.html
+static_assert(false, "\n\n"
+	"\t** IMPORTANT! **\n\n"
+	"\tMinimum supported GCC version is 8.4 (March 4, 2020).\n"
+	"\t\n");
+#endif // BX_COMPILER_*
+
 #if BX_CPU_ENDIAN_BIG
 static_assert(false, "\n\n"
 	"\t** IMPORTANT! **\n\n"

+ 1 - 1
src/timer.cpp

@@ -40,7 +40,7 @@ namespace bx
 		int64_t i64 = int64_t(1000.0f * emscripten_get_now() );
 #elif !BX_PLATFORM_NONE
 		struct timeval now;
-		gettimeofday(&now, 0);
+		gettimeofday(&now, NULL);
 		int64_t i64 = now.tv_sec*INT64_C(1000000) + now.tv_usec;
 #else
 		BX_ASSERT(false, "Not implemented!");