From 1a71898c41776663e665a25dbd1f0ff4423dc754 Mon Sep 17 00:00:00 2001 From: Tracy Ma <1991md@gmail.com> Date: Fri, 15 Nov 2019 15:25:53 +0800 Subject: [PATCH] Fix corrade-rc executable not found when build target WinRT #81 --- CMakeLists.txt | 2 +- src/Corrade/Utility/CMakeLists.txt | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d4b32449f..4df006619 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -152,7 +152,7 @@ endif() # Initialize macros etc. set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/modules/" ${CMAKE_MODULE_PATH}) -if(CMAKE_CROSSCOMPILING) +if(CMAKE_CROSSCOMPILING AND NOT CORRADE_TARGET_WINDOWS_RT) find_program(CORRADE_RC_EXECUTABLE corrade-rc) if(NOT CORRADE_RC_EXECUTABLE) message(FATAL_ERROR "Native `corrade-rc` executable, which is needed when crosscompiling, was not found") diff --git a/src/Corrade/Utility/CMakeLists.txt b/src/Corrade/Utility/CMakeLists.txt index fb5b22fa4..bf5dfe70d 100644 --- a/src/Corrade/Utility/CMakeLists.txt +++ b/src/Corrade/Utility/CMakeLists.txt @@ -181,7 +181,7 @@ endif() # Then the condition would be if(NOT CMAKE_CROSSCOMPILING OR CORRADE_TARGET_WINDOWS_RT) # and similar change would be in UseCorrade.cmake. More info in this thread: # https://cmake.org/pipermail/cmake-developers/2015-January/024242.html -if(NOT CMAKE_CROSSCOMPILING) +if(NOT CMAKE_CROSSCOMPILING OR CORRADE_TARGET_WINDOWS_RT) # Sources for standalone corrade-rc set(CorradeUtilityRc_SRCS Arguments.cpp @@ -227,6 +227,9 @@ if(NOT CMAKE_CROSSCOMPILING) target_link_libraries(corrade-rc PRIVATE ${CMAKE_DL_LIBS}) endif() set_target_properties(corrade-rc PROPERTIES FOLDER "Corrade/Utility") + if(CORRADE_TARGET_WINDOWS_RT) + set_target_properties(corrade-rc PROPERTIES VS_WINRT_COMPONENT OFF) + endif() install(TARGETS corrade-rc DESTINATION ${CORRADE_BINARY_INSTALL_DIR}) # Corrade::rc target alias for superprojects