Commit graph

14 commits

Author SHA1 Message Date
cbnolok
02a9d9570e CompilerFlagsChecker.cmake: disable --icf=safe linker flag if ASan/*San are used (incompatible with lld and/or LLVM implementation) 2025-06-11 14:55:47 +02:00
cbnolok
c4a7febd24 Fix state buffer usage for nested conditional expressions. 2025-05-22 11:56:43 +02:00
cbnolok
c74b60a744 CMake: bumped minimum version to 3.29, to make use of CMAKE_LINKER_TYPE 2025-04-27 16:17:11 +02:00
cbnolok
3e71a71fc6 Linking: moved --icf flag to CompilerFlagsChecker 2025-04-27 16:05:26 +02:00
cbnolok
dc55ffa6f1 Fix cmake/CompilerFlags*: actually use the base/common compiler flags, fix --gc-sections for OSX/AppleClang, temporarily comment some warnings. 2025-04-26 17:38:13 +02:00
cbnolok
205549abc2 CMake toolchains: moved some flags from CompilerFlagsChecker to CompilerFlagsBase.
The one moved are supported since a long time/older compiler versions
and from both Clang and GCC, so they can be safely moved.
Also, not having to check them, CMake configuration is a bit faster.
2025-04-26 17:34:59 +02:00
Max Kellermann
cd16bcc1be cmake: add -fvisibility=hidden
This hides all symbols that have no explicit "visibility" attribute.
Since Sphere never needs to export any of its symbols to another ELF
object (e.g. a loadable module), it makes no sense to leave them in
the executable as global symbols.  This will make a big difference
once we use `--gc-sections`, because only sections with hidden symbols
can be dropped from the executable.
2025-02-15 13:49:00 +01:00
cbnolok
0b19f79b99 Moved fixed GCC/Clang compilation flags to separate cmake files. Fixed a
CMake parsing error causing optimizations not being applied correctly to
Nightly and Release build.
2025-02-14 07:27:23 +01:00
cbnolok
03ce5f6cc3 Added CSString::SetValFalse/True to have a unified way of setting 0 or 1 as a return value.
Fixed regression for FOLLOWERSLOTS.
2024-10-13 18:30:12 +02:00
cbnolok
a043502947 Fixed compilation errors. Made more (easily) cross-platform the AbstractThread code (looking also at BSD). 2024-10-13 18:30:12 +02:00
cbnolok
b75a9c949e Refactoring and small additions to CompilerFlagsChecker.cmake. 2024-10-13 18:30:12 +02:00
cbnolok
250cae76f0 Moved all the compiler/linker flags selection for GCC/Clang in CompilerFlagsChecker.cmake. 2024-10-13 18:30:11 +02:00
cbnolok
575d5391d4 Added sanitizers options to CompilerFlagsChecker.cmake 2024-10-13 18:30:11 +02:00
cbnolok
335c946156 Added CMake script to autodetect supported compiler flags, among those of interest. 2024-09-21 12:01:28 +02:00