14 Commits

Author SHA1 Message Date
Kawe Mazidjatari
994658c4a2 Fixup hardcoded thirdparty directories in CMake files
Should be obtained from the 'THIRDPARTY_SOURCE_DIR' variable.
2024-04-05 16:21:45 +02:00
Kawe Mazidjatari
5c3b7d1b56 Enable SIMD optimizations for RapidJSON 2023-09-07 11:18:00 +02:00
Kawe Mazidjatari
a44b38eb15 Add new CMake options
Add options for IsRetail() and IsCert().
2023-08-21 20:40:05 +02:00
Kawe Mazidjatari
89b92342d7 Add option to enable LTCG
CMake option for link-time code generation.
2023-07-03 15:40:45 +02:00
Amos
48d81d2369 Add "PLATFORM_64NITS" define
Should be defined as platform is 64bits only.
2023-06-27 07:53:08 +02:00
Kawe Mazidjatari
3f8baf6f68 Allow setting compile options for specific targets
Previously, it was all controlled from the global init (applied to all projects), but some projects need different options. With these changes, you can disable the common options applied in the 'add_module' macro, and set your own if desired.
2023-06-17 00:45:27 +02:00
Kawe Mazidjatari
7c944b6dfb Fix intermittent PDB creation error
Option '/Zf' requires '/Zi', else it gets ignored.
2023-05-25 22:25:33 +02:00
Kawe Mazidjatari
c0c6c735a7 Improve build system
Added option: /Zf (Faster PDB generation); this was required as we enabled /MP. Without this, the compiler regularly fails to create a PDB.
Added option:  /EHsc (Standard C++ exception handling).
2023-05-18 14:07:52 +02:00
Kawe Mazidjatari
9f44bcc818 Treat compiler warnings as errors
Treat them as errors globally. Most of the time a warning is a bug, or problem in code that could be solved in a different (better) manner. Thirdparty code have this disabled. The warnings as errors option can be globally disabled through the CMake GUI, but this is not recommended.
2023-05-15 09:44:26 +02:00
Kawe Mazidjatari
c50f8d86f6 Add option for GameDLL version and source directory
Options could be set from the CMake GUI. By default, GameDLL version is set to 'GAMEDLL_S3', and engine source directory is set to 'r5dev/'.
2023-05-14 16:27:31 +02:00
Kawe Mazidjatari
b3fc2c5adb Enable profiling for Profile builds
Enable linker option for profiling.
2023-05-14 02:28:53 +02:00
Kawe Mazidjatari
ede19e0472 Improve CMake macro's
Allow setting custom runtime output directories using the 'end_sources' macro. If parameter is empty, it will use "game/" (default).
2023-05-14 01:26:17 +02:00
Kawe Mazidjatari
d1157fb54b Fix PDB path not getting written properly for shared libraries 2023-05-11 21:04:21 +02:00
Kawe Mazidjatari
807d660883 Add CMake macro's
Macro's performing project wide, and common operations. Crafted for r5sdk, but it is still partially incomplete.
2023-05-09 23:55:46 +02:00