mirror of
https://github.com/microsoft/DirectXMath
synced 2024-09-18 22:29:53 +00:00
Updated CMake to use GNUInstallDirs
This commit is contained in:
parent
c40dc75a5b
commit
b404898c9d
@ -11,6 +11,8 @@ project(DirectXMath
|
||||
HOMEPAGE_URL "https://go.microsoft.com/fwlink/?LinkID=615560"
|
||||
LANGUAGES CXX)
|
||||
|
||||
include(GNUInstallDirs)
|
||||
|
||||
#--- Library
|
||||
set(LIBRARY_HEADERS
|
||||
Inc/DirectXCollision.h
|
||||
@ -28,7 +30,7 @@ add_library(${PROJECT_NAME} INTERFACE)
|
||||
|
||||
target_include_directories(${PROJECT_NAME} INTERFACE
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/Inc>
|
||||
$<INSTALL_INTERFACE:include/${PROJECT_NAME}>)
|
||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
|
||||
|
||||
#--- Package
|
||||
include(CMakePackageConfigHelpers)
|
||||
@ -36,30 +38,29 @@ include(CMakePackageConfigHelpers)
|
||||
string(TOLOWER ${PROJECT_NAME} PACKAGE_NAME)
|
||||
|
||||
write_basic_package_version_file(
|
||||
${PROJECT_BINARY_DIR}/cmake/${PACKAGE_NAME}-config-version.cmake
|
||||
${PACKAGE_NAME}-config-version.cmake
|
||||
VERSION ${DIRECTXMATH_VERSION}
|
||||
COMPATIBILITY AnyNewerVersion)
|
||||
|
||||
install(TARGETS ${PROJECT_NAME}
|
||||
EXPORT ${PROJECT_NAME}-targets
|
||||
ARCHIVE DESTINATION lib
|
||||
LIBRARY DESTINATION lib
|
||||
RUNTIME DESTINATION bin)
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
|
||||
configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/.nuget/${PROJECT_NAME}-config.cmake.in
|
||||
${PROJECT_BINARY_DIR}/cmake/${PACKAGE_NAME}-config.cmake
|
||||
INSTALL_DESTINATION cmake/})
|
||||
${CMAKE_CURRENT_BINARY_DIR}/${PACKAGE_NAME}-config.cmake
|
||||
INSTALL_DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${PACKAGE_NAME}/cmake/})
|
||||
|
||||
install(EXPORT ${PROJECT_NAME}-targets
|
||||
FILE ${PROJECT_NAME}-targets.cmake
|
||||
NAMESPACE Microsoft::
|
||||
DESTINATION cmake/)
|
||||
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${PACKAGE_NAME}/cmake/)
|
||||
|
||||
install(FILES ${LIBRARY_HEADERS}
|
||||
DESTINATION include/${PROJECT_NAME})
|
||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
install(
|
||||
FILES
|
||||
${PROJECT_BINARY_DIR}/cmake/${PACKAGE_NAME}-config.cmake
|
||||
${PROJECT_BINARY_DIR}/cmake/${PACKAGE_NAME}-config-version.cmake
|
||||
DESTINATION cmake/)
|
||||
install(FILES
|
||||
${CMAKE_CURRENT_BINARY_DIR}/${PACKAGE_NAME}-config.cmake
|
||||
${CMAKE_CURRENT_BINARY_DIR}/${PACKAGE_NAME}-config-version.cmake
|
||||
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${PACKAGE_NAME}/cmake/)
|
||||
|
43
CMakePresets.json
Normal file
43
CMakePresets.json
Normal file
@ -0,0 +1,43 @@
|
||||
{
|
||||
"version": 2,
|
||||
"configurePresets": [
|
||||
{
|
||||
"name": "base",
|
||||
"displayName": "Basic Config",
|
||||
"description": "Basic build using Ninja generator",
|
||||
"generator": "Ninja",
|
||||
"hidden": true,
|
||||
"binaryDir": "${sourceDir}/out/build/${presetName}",
|
||||
"cacheVariables": { "CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}" }
|
||||
},
|
||||
|
||||
{
|
||||
"name": "x64",
|
||||
"architecture": {
|
||||
"value": "x64",
|
||||
"strategy": "external"
|
||||
},
|
||||
"hidden": true
|
||||
},
|
||||
|
||||
{
|
||||
"name": "Debug",
|
||||
"cacheVariables": { "CMAKE_BUILD_TYPE": "Debug" },
|
||||
"hidden": true
|
||||
},
|
||||
|
||||
{
|
||||
"name": "MSVC",
|
||||
"hidden": true,
|
||||
"cacheVariables": {
|
||||
"CMAKE_CXX_COMPILER": "cl.exe"
|
||||
},
|
||||
"toolset": {
|
||||
"value": "host=x64",
|
||||
"strategy": "external"
|
||||
}
|
||||
},
|
||||
|
||||
{ "name": "x64-Debug" , "description": "MSVC for x64 (Debug) for Windows 8", "inherits": [ "base", "x64", "Debug", "MSVC" ] }
|
||||
]
|
||||
}
|
Loading…
Reference in New Issue
Block a user