rdb
96b2f3a4d5
CMake: Split out Objective-C++ flags on macOS to fix crash
...
This now requires CMake 3.16
This is a similar fix as 987f2f036b but for CMake
2023-05-08 20:00:39 +02:00
rdb
600fa45d6e
CMake: Fix typo in CMAKE_CXX_FLAGS variable on MSVC
2023-05-08 19:59:15 +02:00
rdb
5475084717
build: Enable -fno-semantic-interposition for GCC
...
This matches the more optimized clang behavior for -fPIC
2022-03-09 16:23:37 +01:00
rdb
264747d213
CMake: Drop support for CMake versions below 3.13
...
We are already using target_link_options, and while it's possible to keep supporting older versions, it doesn't sound worth it. I can revert this out if someone gives me a really good reason to.
2022-03-09 16:23:37 +01:00
rdb
3a120c4d68
CMake: Update warning flags to match makepanda (see f60c55f)
2022-03-02 09:45:22 +01:00
Sam Edwards
b00d7b23bc
CMake: Use CMAKE_FIND_PACKAGE_PREFER_CONFIG to control find_package override
2019-12-31 06:48:06 -07:00
Sam Edwards
e474350a48
CMake: Add a "Coverage" configuration, when using GCC/Clang
2019-12-05 10:35:25 -07:00
Sam Edwards
6bde9423df
CMake: Don't pass GNU-like -f options to clang-cl
2019-12-05 10:34:47 -07:00
Sam Edwards
5c98b793a2
CMake: Make sure C++11 is marked as the required standard
2019-12-05 10:34:47 -07:00
Sam Edwards
5b4ea0e277
CMake: Proper Standard compiler flags for MSVC
2019-11-04 13:41:20 -07:00
Sam Edwards
9bb59b03b9
CMake: Add several essential flags
...
See GH #717 for relevant discussion
2019-09-19 22:33:11 -06:00
Sam Edwards
bd1605907e
CMake: Rename 'Distribution' config to 'Standard'
...
This is the configuration shipped to Python developers
in the form of the public SDK.
2019-09-19 22:18:28 -06:00
Sam Edwards
8429f50d3a
CMake: Use -fno-rtti on most build configurations
2019-09-19 04:44:46 -06:00
Sam Edwards
5654e64645
CMake: First batch of improvements per review
...
Addressing feedback per @rdb in GitHub #717
2019-09-06 01:11:50 -06:00
Sam Edwards
5fa4af9189
CMake: Rely on GNUInstallDirs to specify install paths
...
This makes multiarch OSes happy as they can dictate that
64-bit libraries go into 'lib64'
2019-08-31 00:48:42 -06:00
Sam Edwards
cde25670d6
CMake: Remove some uses of CFG_INTDIR
...
It's not install() friendly, so we use $<CONFIG> instead in
some cases. Unfortunately, $<CONFIG> isn't friendly with
add_custom_command's OUTPUT options while CMAKE_CFG_INTDIR
explicitly is, so we use a hybrid approach until CMake gets
its act together.
2019-08-28 17:12:01 -06:00
Sam Edwards
8588ddc3dc
CMake: When building on MSVC, add /bigobj to compiler where necessary
2019-08-25 15:54:02 -06:00
Sam Edwards
9ca4f19b90
CMake: Make sure we define flags variables for Distribution
...
This fixes a CMake error with the MSVC generator, but it's also
generally good to have around.
2019-08-22 14:58:43 -06:00
Donny Lawrence
3160c77bc3
CMake: MODULEs should use .dylib, not .so
2019-06-27 17:38:18 -06:00
Donny Lawrence
10abe6e216
CMake: Remove usages of string(APPEND ...)
2019-06-27 17:38:18 -06:00
Donny Lawrence
89bc83c48f
CMake: Suppress $(EFFECTIVE_PLATFORM_NAME).
2019-06-27 17:38:18 -06:00
Donny Lawrence
3eb1895811
CMake: Use a generator expression to mitigate make's warning spam on the Xcode generator.
2019-06-27 17:38:18 -06:00
Sam Edwards
059c78bade
CMake: Restructure multi-configuration binary directory layout
...
This changes the structure to use paths like `build/Release/lib`
instead of `build/lib/Release`, so that the `build/Release` directory
more closely mimics the structure of `build` when in single-configuration
mode.
2019-05-01 23:44:47 -06:00
Sam Edwards
6097d34ead
CMake: Neatly format everything for readability and consistency
2019-04-14 22:37:18 -06:00
Sam Edwards
d961514892
CMake: Use string/list(APPEND foo ...) instead of set(foo ${foo} ...)
2019-01-19 17:01:36 -07:00
Sam Edwards
8c4dfd7a70
CMake: Move compiler flag detection to its own file
2019-01-19 13:22:20 -07:00