From f82e1c9d4807f4c0fa832fd5bd9f9e90848eb8eb Mon Sep 17 00:00:00 2001 From: Gold856 <117957790+Gold856@users.noreply.github.com> Date: Wed, 2 Oct 2024 12:20:43 -0400 Subject: [PATCH] [build] CMake: fix Windows build when WITH_PROTOBUF is false (#7147) --- wpimath/CMakeLists.txt | 44 +++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/wpimath/CMakeLists.txt b/wpimath/CMakeLists.txt index 2b75f8d14b..ac021369ee 100644 --- a/wpimath/CMakeLists.txt +++ b/wpimath/CMakeLists.txt @@ -141,32 +141,32 @@ if(WITH_PROTOBUF) PLUGIN ${PROTOC_WPILIB_PLUGIN} PROTOC_OUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/protobuf" ) + if(MSVC) + get_property(IS_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) + set(CONFIG_SUFFIX "$<$:_$>") + file( + GENERATE OUTPUT + ${CMAKE_CURRENT_BINARY_DIR}/protobuf_objects${CONFIG_SUFFIX}.txt + CONTENT $,\n> + ) + add_custom_command( + TARGET wpimath + PRE_LINK + COMMAND + cmake -E __create_def + ${CMAKE_CURRENT_BINARY_DIR}/protobuf_exports${CONFIG_SUFFIX}.def + ${CMAKE_CURRENT_BINARY_DIR}/protobuf_objects${CONFIG_SUFFIX}.txt + ) + target_link_options( + wpimath + PRIVATE + /DEF:$ + ) + endif() else() add_library(wpimath ${wpimath_native_src}) endif() -if(MSVC) - get_property(IS_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) - set(CONFIG_SUFFIX "$<$:_$>") - file( - GENERATE OUTPUT - ${CMAKE_CURRENT_BINARY_DIR}/protobuf_objects${CONFIG_SUFFIX}.txt - CONTENT $,\n> - ) - add_custom_command( - TARGET wpimath - PRE_LINK - COMMAND - cmake -E __create_def ${CMAKE_CURRENT_BINARY_DIR}/protobuf_exports${CONFIG_SUFFIX}.def - ${CMAKE_CURRENT_BINARY_DIR}/protobuf_objects${CONFIG_SUFFIX}.txt - ) - target_link_options( - wpimath - PRIVATE - /DEF:$ - ) -endif() - set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS TRUE) set_target_properties(wpimath PROPERTIES DEBUG_POSTFIX "d")