Fix up CMake for Xbox platforms for shared lib (#587)

This commit is contained in:
Chuck Walbourn
2025-02-19 19:20:39 -08:00
committed by GitHub
parent 8e9fa6059c
commit 71ab939f26
4 changed files with 41 additions and 1 deletions

View File

@@ -15,6 +15,10 @@ project (DirectXTex
HOMEPAGE_URL "https://go.microsoft.com/fwlink/?LinkId=248926"
LANGUAGES CXX)
if(DEFINED XBOX_CONSOLE_TARGET)
set(CMAKE_CXX_STANDARD_LIBRARIES "")
endif()
option(BUILD_TOOLS "Build tex command-line tools" ON)
option(BUILD_SHARED_LIBS "Build DirectXTex as a shared library" OFF)
@@ -233,6 +237,14 @@ if(WIN32 AND BUILD_SHARED_LIBS)
target_compile_definitions(${PROJECT_NAME} PRIVATE DIRECTX_TEX_EXPORT)
target_compile_definitions(${PROJECT_NAME} INTERFACE DIRECTX_TEX_IMPORT)
if(XBOX_CONSOLE_TARGET MATCHES "scarlett")
target_link_libraries(${PROJECT_NAME} PRIVATE xgameplatform.lib xg_xs.lib xmem.lib)
elseif(XBOX_CONSOLE_TARGET MATCHES "xboxone")
target_link_libraries(${PROJECT_NAME} PRIVATE xgameplatform.lib xg_x.lib xmem.lib)
elseif(XBOX_CONSOLE_TARGET MATCHES "durango")
target_link_libraries(${PROJECT_NAME} PRIVATE kernelx.lib xg_x.lib combase.lib)
endif()
else()
add_library(${PROJECT_NAME} ${LIBRARY_SOURCES} ${LIBRARY_HEADERS})
endif()