1. Do NOT install the GoogleTest files (run-time files, pkg-config files, static-link-libraries, etc.) when installing DirectX-Headers. MSYS2 and many Linux distributions already have GoogleTest in downloadable packages.
2. Run the included tests with CTest (see: https://cmake.org/cmake/help/book/mastering-cmake/chapter/Testing%20With%20CMake%20and%20CTest.html ) to facilitate automated testing in package build processes. This adds a BUILD_TESTING option that is standard for many CMake projects. If that option is off, no tests are built or could be executing using CTest (a standard behavior).
DirectX headers is now a static library instead of just an interface. It will compile `d3dx12_property_format_table.cpp`
- Updated CMakeLists.txt
- Updated Meson.build
* Implement the second half of feature checks and update the sanity test.
* Squashed commit of the following:
commit a917854d2b
Author: Yizhou Sheng <t-yisheng@microsoft.com>
Date: Thu Jul 8 18:01:57 2021 -0700
Optimized procedure to check Architecture support. Removed m_hStatus assignment in macros.
* Updated initialization procedures
* Remove duplicate checks.
* Set up Google Test framework
* Updated git submodule config
* Set up MockDevice. Implement functions that won't be used.
* Remove outdated comments and unnecessary test setup.
* Modified MockDevice to store cap info locally. Implemented part of the test suite.
* Rename loop variables. Fix duplicate cap check logic.
- Fixed an issue with caps that exist in more than one feature. See the following comments for details.
- Renamed loop variables to be more descriptive.
- Use TIER_0 as default values for applicable caps.
- Minor format fix.
* Removed unnecessary comments
* Add tests for features up to Options8
* Complete Google Test suite.
* Add ProtectedResourceSessionTypes cascade test case. Minor format fixes.
* Renamed Feature Level API. Add verification to the manual example/test
* Renamed Multinode tests. Add inline comments.
* Update googletest/cmakelists.txt to use MTd flag instead of MDd
When installing this library, all targets are exported with the prefix
"Microsoft::"
However, when using this project via `add_subdirectory` all targets lack the
prefix.
Due to this, users were required to change the name by which they reference
targets exported by this project depending on the strategy they use to include
this project.
This problem is being solved by adding an alias i.e.:
add_library(Microsoft::DirectX-Headers ALIAS DirectX-Headers)