Commit bd624d9f by Abseil Team Committed by Copybara-Service

fix(CMake): correct target variable for DLLs

The `_dll` variable contains the target name. The code
was trying to use `_NAME` when handling ABSL_PROPAGATE_CXX_STD.
Probably a cut&paste error from the other places where we
handle that option.

PiperOrigin-RevId: 510551097
Change-Id: I006435978333dd7a72a300503389a7bf48fb6d0d
parent d32a746c
......@@ -789,7 +789,7 @@ Cflags: -I\${includedir}${PC_CFLAGS}\n")
# Abseil libraries require C++14 as the current minimum standard. When
# compiled with C++17 (either because it is the compiler's default or
# explicitly requested), then Abseil requires C++17.
_absl_target_compile_features_if_available(${_NAME} PUBLIC ${ABSL_INTERNAL_CXX_STD_FEATURE})
_absl_target_compile_features_if_available(${_dll} PUBLIC ${ABSL_INTERNAL_CXX_STD_FEATURE})
else()
# Note: This is legacy (before CMake 3.8) behavior. Setting the
# target-level CXX_STANDARD property to ABSL_CXX_STANDARD (which is
......@@ -799,8 +799,8 @@ Cflags: -I\${includedir}${PC_CFLAGS}\n")
# CXX_STANDARD_REQUIRED does guard against the top-level CMake project
# not having enabled CMAKE_CXX_STANDARD_REQUIRED (which prevents
# "decaying" to an older standard if the requested one isn't available).
set_property(TARGET ${_NAME} PROPERTY CXX_STANDARD ${ABSL_CXX_STANDARD})
set_property(TARGET ${_NAME} PROPERTY CXX_STANDARD_REQUIRED ON)
set_property(TARGET ${_dll} PROPERTY CXX_STANDARD ${ABSL_CXX_STANDARD})
set_property(TARGET ${_dll} PROPERTY CXX_STANDARD_REQUIRED ON)
endif()
install(TARGETS ${_dll} EXPORT ${PROJECT_NAME}Targets
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment