From be65295633120deeb390d19817e523ff37899762 Mon Sep 17 00:00:00 2001 From: Andreas Schuh Date: Wed, 5 Dec 2018 10:28:57 +0000 Subject: [PATCH] fix: GFLAGS_* variables take precedence in gflags_define --- cmake/utils.cmake | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/cmake/utils.cmake b/cmake/utils.cmake index d039e5c..0b8333a 100644 --- a/cmake/utils.cmake +++ b/cmake/utils.cmake @@ -65,16 +65,18 @@ macro (gflags_define type varname docstring default) message (FATAL_ERROR "gflags_variable: Too many macro arguments") endif () if (NOT DEFINED GFLAGS_${varname}) - if (GFLAGS_IS_SUBPROJECT AND "${ARGC}" EQUAL 5) - set (GFLAGS_${varname} "${ARGV4}") + if (DEFINED ${varname}) + set(GFLAGS_${varname} "${${varname}}") else () - set (GFLAGS_${varname} "${default}") + if (GFLAGS_IS_SUBPROJECT AND "${ARGC}" EQUAL 5) + set (GFLAGS_${varname} "${ARGV4}") + else () + set (GFLAGS_${varname} "${default}") + endif () endif () endif () if (GFLAGS_IS_SUBPROJECT) - if (NOT DEFINED ${varname}) - set (${varname} "${GFLAGS_${varname}}") - endif () + set (${varname} "${GFLAGS_${varname}}") else () set (${varname} "${GFLAGS_${varname}}" CACHE ${type} "${docstring}") endif ()