Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@

cmake_minimum_required (VERSION 3.21)

if(POLICY CMP0162)
cmake_policy(SET CMP0162 NEW)
endif()

set(DIRECTXMATH_VERSION 3.20)

if(WINDOWS_STORE OR (DEFINED XBOX_CONSOLE_TARGET))
Expand Down Expand Up @@ -77,10 +81,9 @@ install(FILES
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${PACKAGE_NAME})

# Create pkg-config file
include(build/JoinPaths.cmake)
# from: https://github.com/jtojnar/cmake-snips#concatenating-paths-when-building-pkg-config-files
join_paths(DIRECTXMATH_INCLUDEDIR_FOR_PKG_CONFIG "\${prefix}" "${CMAKE_INSTALL_INCLUDEDIR}")
join_paths(DIRECTXMATH_LIBDIR_FOR_PKG_CONFIG "\${prefix}" "${CMAKE_INSTALL_LIBDIR}")
cmake_path(APPEND DIRECTXMATH_INCLUDEDIR_FOR_PKG_CONFIG "\${prefix}" "${CMAKE_INSTALL_INCLUDEDIR}")
cmake_path(APPEND DIRECTXMATH_LIBDIR_FOR_PKG_CONFIG "\${prefix}" "${CMAKE_INSTALL_LIBDIR}")

configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/build/DirectXMath.pc.in"
Expand Down
15 changes: 10 additions & 5 deletions SHMath/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ target_include_directories(${PROJECT_NAME} PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)

target_compile_features(${PROJECT_NAME} INTERFACE cxx_std_11)
target_compile_features(${PROJECT_NAME} PUBLIC cxx_std_11)

target_link_libraries(${PROJECT_NAME} PRIVATE DirectXMath)

Expand All @@ -102,8 +102,7 @@ cmake_path(GET CMAKE_CURRENT_LIST_DIR PARENT_PATH DIRECTXMATH_PATH)
write_basic_package_version_file(
${PACKAGE_NAME}-config-version.cmake
VERSION ${SHMATH_VERSION}
COMPATIBILITY AnyNewerVersion
ARCH_INDEPENDENT)
COMPATIBILITY AnyNewerVersion)

install(TARGETS ${PROJECT_NAME}
EXPORT ${PROJECT_NAME}-targets
Expand Down Expand Up @@ -165,7 +164,7 @@ elseif(CMAKE_CXX_COMPILER_ID MATCHES "Intel")
target_compile_options(${PROJECT_NAME} PRIVATE /Zc:__cplusplus /Zc:inline /fp:fast /Qdiag-disable:161)
elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
target_compile_options(${PROJECT_NAME} PRIVATE
/sdl /Zc:inline /fp:fast
/sdl /Zc:forScope /Zc:inline /Zc:wchar_t /fp:fast
/wd4061 /wd4365 /wd4514 /wd4571 /wd4668 /wd4710 /wd4820 /wd5039 /wd5045)

if(CMAKE_INTERPROCEDURAL_OPTIMIZATION)
Expand Down Expand Up @@ -213,12 +212,18 @@ elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
endif()
endif()

if(NOT WIN32)
if((NOT WIN32) AND (NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/sal/sal.h"))
file(DOWNLOAD
https://raw.githubusercontent.com/dotnet/runtime/v9.0.2/src/coreclr/pal/inc/rt/sal.h
"${CMAKE_CURRENT_BINARY_DIR}/sal/sal.h"
EXPECTED_HASH SHA512=8085f67bfa4ce01ae89461cadf72454a9552fde3f08b2dcc3de36b9830e29ce7a6192800f8a5cb2a66af9637be0017e85719826a4cfdade508ae97f319e0ee8e
STATUS DOWNLOAD_STATUS
)
list(GET DOWNLOAD_STATUS 0 STATUS_CODE)
list(GET DOWNLOAD_STATUS 1 DOWNLOAD_ERROR)
if(NOT (STATUS_CODE EQUAL 0))
message(FATAL_ERROR "Failed to download sal.h: ${DOWNLOAD_ERROR}")
endif()

target_include_directories(${PROJECT_NAME} PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/sal")
endif()
23 changes: 0 additions & 23 deletions build/JoinPaths.cmake

This file was deleted.

Loading