diff options
author | Campbell Barton <campbell@blender.org> | 2022-09-26 05:26:48 +0300 |
---|---|---|
committer | Campbell Barton <campbell@blender.org> | 2022-09-27 00:05:13 +0300 |
commit | bcb7b119ae5240632b7f8b07f926c230f3c48daf (patch) | |
tree | e2ad3dc3fe145f4506c9178d8652bdb0752a55e4 /source/blender/blenlib/BLI_compiler_attrs.h | |
parent | cd7e9a1ad5b4f60934c4d95d81968788331db94a (diff) |
Cleanup: remove workarounds and version checks for unsupported compilers
Match minimum supported versions from the WIKI [0] by raising them to:
- GCC 9.3.1
- CLANG 8.0
- MVCS 2019 (16.9.16 / 1928)
Details:
- Add CMake checks that ensure supported compiler versions early on.
- Previously GCC per-processor version checks served to exclude
`__clang__`, in some cases this has been replaced by explicitly
excluding `__clang__`. This was needed as CLANG treated some of these
flags differently to GCC, causing the build to fail.
- Remove USE_APPLE_OMP_FIX GCC-4.2 OpenMP workaround.
- Remove linking error workaround for old MSVC versions.
[0]: https://wiki.blender.org/wiki/Building_Blender
Reviewed by: brecht, LazyDodo
Ref D16068
Diffstat (limited to 'source/blender/blenlib/BLI_compiler_attrs.h')
-rw-r--r-- | source/blender/blenlib/BLI_compiler_attrs.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/blenlib/BLI_compiler_attrs.h b/source/blender/blenlib/BLI_compiler_attrs.h index 99f0aa9f049..9ee626296cb 100644 --- a/source/blender/blenlib/BLI_compiler_attrs.h +++ b/source/blender/blenlib/BLI_compiler_attrs.h @@ -25,7 +25,7 @@ #endif /* never returns NULL */ -#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 /* gcc4.9+ only */ +#ifdef __GNUC__ # define ATTR_RETURNS_NONNULL __attribute__((returns_nonnull)) #else # define ATTR_RETURNS_NONNULL @@ -39,14 +39,14 @@ #endif /* hint to treat any non-null function return value cannot alias any other pointer */ -#if (defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 403)) +#ifdef __GNUC__ # define ATTR_MALLOC __attribute__((malloc)) #else # define ATTR_MALLOC #endif /* the function return value points to memory (2 args for 'size * tot') */ -#if (defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 403)) +#ifdef __GNUC__ # define ATTR_ALLOC_SIZE(args...) __attribute__((alloc_size(args))) #else # define ATTR_ALLOC_SIZE(...) @@ -69,7 +69,7 @@ /* Use to suppress '-Wimplicit-fallthrough' (in place of 'break'). */ #ifndef ATTR_FALLTHROUGH -# if defined(__GNUC__) && (__GNUC__ >= 7) /* gcc7.0+ only */ +# ifdef __GNUC__ # define ATTR_FALLTHROUGH __attribute__((fallthrough)) # else # define ATTR_FALLTHROUGH ((void)0) |