Skip to content

Commit 7f519ce

Browse files
committed
fix attempt
1 parent 3bed946 commit 7f519ce

File tree

2 files changed

+16
-11
lines changed

2 files changed

+16
-11
lines changed

cmake/ModuleHelpers.cmake

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -110,8 +110,8 @@ macro(_userver_module_find_part)
110110
# return()
111111
# endif()
112112

113-
set(options)
114-
set(oneValueArgs PART_TYPE MODE)
113+
set(options OPTIONAL)
114+
set(oneValueArgs PART_TYPE)
115115
set(multiValueArgs NAMES PATHS PATH_SUFFIXES)
116116

117117
cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}")
@@ -138,16 +138,19 @@ macro(_userver_module_find_part)
138138
set(find_command_args "${mangled_name}" NAMES ${ARG_NAMES} PATH_SUFFIXES ${ARG_PATH_SUFFIXES} PATHS ${ARG_PATHS})
139139
message(DEBUG "STATUS FIND(${ARG_NAMES}) ARGS: ${find_command_args}")
140140
if("${ARG_PART_TYPE}" STREQUAL "library")
141-
find_library(${find_command_args} ${ARG_MODE})
141+
find_library(${find_command_args})
142142
elseif("${ARG_PART_TYPE}" STREQUAL "path")
143-
find_path(${find_command_args} ${ARG_MODE})
143+
find_path(${find_command_args})
144144
elseif("${ARG_PART_TYPE}" STREQUAL "program")
145-
find_program(${find_command_args} ${ARG_MODE})
145+
find_program(${find_command_args})
146146
else()
147147
message(FATAL_ERROR "Invalid PART_TYPE")
148148
endif()
149-
if(${mangled_name}_FOUND)
149+
150+
if(${mangled_name})
150151
list(APPEND "${variable}" "${${mangled_name}}")
152+
elseif (NOT ARG_OPTIONAL)
153+
message(FATAL_ERROR "Failed to find ${ARG_PART_TYPE} '${ARG_NAMES}'")
151154
endif()
152155

153156
unset(variable)
@@ -157,19 +160,20 @@ macro(_userver_module_find_part)
157160
endmacro()
158161

159162
macro(_userver_module_find_library)
160-
set(options)
161-
set(oneValueArgs MODE)
163+
set(options OPTIONAL)
164+
set(oneValueArgs)
162165
set(multiValueArgs NAMES PATHS PATH_SUFFIXES)
163166

164167
cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}")
165-
if(NOT ${ARG_MODE})
166-
set(ARG_MODE REQUIRED)
168+
set(OPTIONAL_TO_PASS)
169+
if(ARG_OPTIONAL)
170+
set(OPTIONAL_TO_PASS OPTIONAL)
167171
endif()
168172

169173
_userver_module_find_part(
170174
PART_TYPE
171175
library
172-
MODE ${ARG_MODE}
176+
${OPTIONAL_TO_PASS}
173177
NAMES
174178
${ARG_NAMES}
175179
PATHS

cmake/modules/FindPostgreSQLInternal.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ _userver_module_find_library(
6767

6868
# PostgreSQL 18 can be configured with option --with-curl. In that case we have the libpq-oauth library
6969
_userver_module_find_library(
70+
OPTIONAL
7071
NAMES libpq-oauth.a
7172
PATHS ${USERVER_PG_LIBRARY_DIR} /usr/local/lib # FreeBSD
7273
/usr/local/pgsql/lib # postgresql: make install

0 commit comments

Comments
 (0)