@@ -3,18 +3,20 @@ include_guard(GLOBAL)
33cmake_policy (SET CMP0054 NEW)
44
55macro (_userver_module_begin)
6- set (options
7- CPM_DOWNLOAD_ONLY
8- )
6+ set (options CPM_DOWNLOAD_ONLY)
97 set (oneValueArgs # Target name, also used for package name by default
108 NAME VERSION
119 )
1210 set (multiValueArgs
13- DEBIAN_NAMES FORMULA_NAMES RPM_NAMES PACMAN_NAMES PKG_NAMES
11+ DEBIAN_NAMES
12+ FORMULA_NAMES
13+ RPM_NAMES
14+ PACMAN_NAMES
15+ PKG_NAMES
1416 # For version detection of manually installed packages and unknown package managers.
15- PKG_CONFIG_NAMES
16- # For CPM options
17- CPM_NAME
17+ PKG_CONFIG_NAMES
18+ # For CPM options
19+ CPM_NAME
1820 CPM_VERSION
1921 CPM_GITHUB_REPOSITORY
2022 CPM_URL
@@ -31,15 +33,13 @@ macro(_userver_module_begin)
3133 string (REPLACE "-" "_" ARG_CPM_NAME "${ARG_CPM_NAME} " )
3234
3335 if (ARG_CPM_NAME)
34- option (
35- USERVER_DOWNLOAD_PACKAGE_${ARG_CPM_NAME}
36- "Download and setup ${ARG_CPM_NAME} if no library of matching version was found"
37- ${USERVER_DOWNLOAD_PACKAGES}
36+ option (USERVER_DOWNLOAD_PACKAGE_${ARG_CPM_NAME}
37+ "Download and setup ${ARG_CPM_NAME} if no library of matching version was found"
38+ ${USERVER_DOWNLOAD_PACKAGES}
3839 )
39- option (
40- USERVER_FORCE_DOWNLOAD_${ARG_CPM_NAME}
41- "Download ${ARG_CPM_NAME} even if there is an installed system package"
42- ${USERVER_FORCE_DOWNLOAD_PACKAGES}
40+ option (USERVER_FORCE_DOWNLOAD_${ARG_CPM_NAME}
41+ "Download ${ARG_CPM_NAME} even if there is an installed system package"
42+ ${USERVER_FORCE_DOWNLOAD_PACKAGES}
4343 )
4444 endif ()
4545
@@ -104,11 +104,8 @@ endmacro()
104104macro (_userver_module_find_part)
105105 # Also uses ARGs left over from _userver_find_module_begin
106106
107- # TODO: return() doesn't work inside of macro
108- # if(USERVER_FORCE_DOWNLOAD_${ARG_CPM_NAME})
109- # message(STATUS "Skipping ${ARG_CPM_NAME} system package search due to USERVER_FORCE_DOWNLOAD_${ARG_CPM_NAME}=TRUE")
110- # return()
111- # endif()
107+ # TODO: return() doesn't work inside of macro if(USERVER_FORCE_DOWNLOAD_${ARG_CPM_NAME}) message(STATUS "Skipping
108+ # ${ARG_CPM_NAME} system package search due to USERVER_FORCE_DOWNLOAD_${ARG_CPM_NAME}=TRUE") return() endif()
112109
113110 set (options OPTIONAL )
114111 set (oneValueArgs PART_TYPE)
@@ -147,7 +144,7 @@ macro(_userver_module_find_part)
147144 message (FATAL_ERROR "Invalid PART_TYPE" )
148145 endif ()
149146
150- if (${mangled_name} OR NOT ARG_OPTIONAL)
147+ if (${mangled_name} OR NOT ARG_OPTIONAL)
151148 list (APPEND "${variable} " "${${mangled_name} }" )
152149 endif ()
153150
@@ -163,21 +160,16 @@ macro(_userver_module_find_library)
163160 set (multiValueArgs NAMES PATHS PATH_SUFFIXES )
164161
165162 cmake_parse_arguments (ARG "${options} " "${oneValueArgs} " "${multiValueArgs} " "${ARGN} " )
166- set (OPTIONAL_TO_PASS)
167- if (ARG_OPTIONAL)
168- set (OPTIONAL_TO_PASS OPTIONAL )
169- endif ()
163+ set (OPTIONAL_TO_PASS)
164+ if (ARG_OPTIONAL)
165+ set (OPTIONAL_TO_PASS OPTIONAL )
166+ endif ()
170167
171168 _userver_module_find_part(
172- PART_TYPE
173- library
174- ${OPTIONAL_TO_PASS}
175- NAMES
176- ${ARG_NAMES}
177- PATHS
178- ${ARG_PATHS}
179- PATH_SUFFIXES
180- ${ARG_PATH_SUFFIXES}
169+ PART_TYPE library ${OPTIONAL_TO_PASS}
170+ NAMES ${ARG_NAMES}
171+ PATHS ${ARG_PATHS}
172+ PATH_SUFFIXES ${ARG_PATH_SUFFIXES}
181173 )
182174endmacro ()
183175
@@ -189,14 +181,10 @@ macro(_userver_module_find_include)
189181 cmake_parse_arguments (ARG "${options} " "${oneValueArgs} " "${multiValueArgs} " "${ARGN} " )
190182
191183 _userver_module_find_part(
192- PART_TYPE
193- path
194- NAMES
195- ${ARG_NAMES}
196- PATHS
197- ${ARG_PATHS}
198- PATH_SUFFIXES
199- ${ARG_PATH_SUFFIXES}
184+ PART_TYPE path
185+ NAMES ${ARG_NAMES}
186+ PATHS ${ARG_PATHS}
187+ PATH_SUFFIXES ${ARG_PATH_SUFFIXES}
200188 )
201189endmacro ()
202190
@@ -208,14 +196,10 @@ macro(_userver_module_find_program)
208196 cmake_parse_arguments (ARG "${options} " "${oneValueArgs} " "${multiValueArgs} " "${ARGN} " )
209197
210198 _userver_module_find_part(
211- PART_TYPE
212- program
213- NAMES
214- ${ARG_NAMES}
215- PATHS
216- ${ARG_PATHS}
217- PATH_SUFFIXES
218- ${ARG_PATH_SUFFIXES}
199+ PART_TYPE program
200+ NAMES ${ARG_NAMES}
201+ PATHS ${ARG_PATHS}
202+ PATH_SUFFIXES ${ARG_PATH_SUFFIXES}
219203 )
220204endmacro ()
221205
@@ -390,8 +374,7 @@ macro(_userver_cpm_addpackage name)
390374 URL ${ARG_CPM_URL}
391375 OPTIONS ${ARG_CPM_OPTIONS}
392376 SOURCE_SUBDIR ${ARG_CPM_SOURCE_SUBDIR}
393- GIT_TAG ${ARG_CPM_GIT_TAG}
394- ${EXTRA_ARGS}
377+ GIT_TAG ${ARG_CPM_GIT_TAG} ${EXTRA_ARGS}
395378 )
396379 if (NOT ARG_CPM_DOWNLOAD_ONLY)
397380 mark_targets_as_system("${${name} _SOURCE_DIR}" )
0 commit comments