Skip to content

Commit 0ddb655

Browse files
committed
Revert "Refactor, use requires_arguments() for ensuring ..."
This reverts commit b3c200b. This was a bit too fast - the macro still needs a bit of work.
1 parent 17fe398 commit 0ddb655

File tree

4 files changed

+80
-15
lines changed

4 files changed

+80
-15
lines changed

cmake/rsp/cache.cmake

Lines changed: 48 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ include_guard(GLOBAL)
77
# Debug
88
message(VERBOSE "rsp/cache module included")
99

10-
include("rsp/helpers")
11-
1210
if (NOT DEFINED RSP_CACHE_EXPIRES_AT_KEY_AFFIX)
1311
set(RSP_CACHE_EXPIRES_AT_KEY_AFFIX "[rsp@expires_at]")
1412
endif ()
@@ -39,7 +37,14 @@ if (NOT COMMAND "cache_set")
3937
set(multiValueArgs "") # N/A
4038

4139
cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
42-
requires_arguments(INPUT "KEY;VALUE")
40+
41+
# Ensure required arguments are defined
42+
set(requiredArgs "KEY;VALUE")
43+
foreach (name ${requiredArgs})
44+
if (NOT DEFINED INPUT_${name})
45+
message(FATAL_ERROR "${name} argument is missing, for ${CMAKE_CURRENT_FUNCTION}()")
46+
endif ()
47+
endforeach ()
4348

4449
# Resolve optional arguments
4550
if (NOT DEFINED INPUT_TYPE)
@@ -99,7 +104,14 @@ if (NOT COMMAND "cache_get")
99104
set(multiValueArgs "") # N/A
100105

101106
cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
102-
requires_arguments(INPUT "KEY")
107+
108+
# Ensure required arguments are defined
109+
set(requiredArgs "KEY")
110+
foreach (name ${requiredArgs})
111+
if (NOT DEFINED INPUT_${name})
112+
message(FATAL_ERROR "${name} argument is missing, for ${CMAKE_CURRENT_FUNCTION}()")
113+
endif ()
114+
endforeach ()
103115

104116
# Resolve optional arguments
105117
if (NOT DEFINED INPUT_DEFAULT)
@@ -148,7 +160,14 @@ if (NOT COMMAND "cache_has")
148160
set(multiValueArgs "") # N/A
149161

150162
cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
151-
requires_arguments(INPUT "KEY;OUTPUT")
163+
164+
# Ensure required arguments are defined
165+
set(requiredArgs "KEY;OUTPUT")
166+
foreach (name ${requiredArgs})
167+
if (NOT DEFINED INPUT_${name})
168+
message(FATAL_ERROR "${name} argument is missing, for ${CMAKE_CURRENT_FUNCTION}()")
169+
endif ()
170+
endforeach ()
152171

153172
# Determine if entry exists in cache
154173
if (DEFINED CACHE{${INPUT_KEY}})
@@ -208,7 +227,14 @@ if (NOT COMMAND "cache_forget")
208227
set(multiValueArgs "") # N/A
209228

210229
cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
211-
requires_arguments(INPUT "KEY")
230+
231+
# Ensure required arguments are defined
232+
set(requiredArgs "KEY")
233+
foreach (name ${requiredArgs})
234+
if (NOT DEFINED INPUT_${name})
235+
message(FATAL_ERROR "${name} argument is missing, for ${CMAKE_CURRENT_FUNCTION}()")
236+
endif ()
237+
endforeach ()
212238

213239
# Remove entry if it exists
214240
if (DEFINED CACHE{${INPUT_KEY}})
@@ -279,7 +305,14 @@ if (NOT COMMAND "cache_remember")
279305
set(multiValueArgs "") # N/A
280306

281307
cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
282-
requires_arguments(INPUT "KEY;CALLBACK")
308+
309+
# Ensure required arguments are defined
310+
set(requiredArgs "KEY;CALLBACK")
311+
foreach (name ${requiredArgs})
312+
if (NOT DEFINED INPUT_${name})
313+
message(FATAL_ERROR "${name} argument is missing, for ${CMAKE_CURRENT_FUNCTION}()")
314+
endif ()
315+
endforeach ()
283316

284317
# Ensure that callback exists
285318
if (NOT COMMAND ${INPUT_CALLBACK})
@@ -356,7 +389,14 @@ if (NOT COMMAND "cache_has_expired")
356389
set(multiValueArgs "") # N/A
357390

358391
cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
359-
requires_arguments(INPUT "KEY;OUTPUT")
392+
393+
# Ensure required arguments are defined
394+
set(requiredArgs "KEY;OUTPUT")
395+
foreach (name ${requiredArgs})
396+
if (NOT DEFINED INPUT_${name})
397+
message(FATAL_ERROR "${name} argument is missing, for ${CMAKE_CURRENT_FUNCTION}()")
398+
endif ()
399+
endforeach ()
360400

361401
# Make expires at key...
362402
cache_make_expires_at_key(EXPIRES_AT_KEY INPUT_KEY)

cmake/rsp/git.cmake

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ include_guard(GLOBAL)
77
# Debug
88
message(VERBOSE "rsp/git module included")
99

10-
include("rsp/helpers")
11-
1210
# Ensure that git is available or this module will not work
1311
find_package(Git REQUIRED)
1412

@@ -42,7 +40,14 @@ if (NOT COMMAND "git_find_version_tag")
4240
set(multiValueArgs "") # N/A
4341

4442
cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
45-
requires_arguments(INPUT "OUTPUT;WORKING_DIRECTORY")
43+
44+
# Ensure required arguments are defined
45+
set(requiredArgs "OUTPUT;WORKING_DIRECTORY")
46+
foreach (name ${requiredArgs})
47+
if (NOT DEFINED INPUT_${name})
48+
message(FATAL_ERROR "${name} argument is missing, for ${CMAKE_CURRENT_FUNCTION}()")
49+
endif ()
50+
endforeach ()
4651

4752
# Resolve optional arguments
4853
if (NOT DEFINED INPUT_MATCH_PATTERN)

cmake/rsp/helpers.cmake

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,14 @@ if (NOT COMMAND "safeguard_properties")
100100
set(multiValueArgs PROPERTIES)
101101

102102
cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
103-
requires_arguments(INPUT "CALLBACK;PROPERTIES")
103+
104+
# Ensure required arguments are defined
105+
set(requiredArgs "CALLBACK;PROPERTIES")
106+
foreach (arg ${requiredArgs})
107+
if (NOT DEFINED INPUT_${arg})
108+
message(FATAL_ERROR "${arg} argument is missing, for ${CMAKE_CURRENT_FUNCTION}()")
109+
endif ()
110+
endforeach ()
104111

105112
# ---------------------------------------------------------------------------------------------- #
106113

cmake/rsp/testing.cmake

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ include_guard(GLOBAL)
77
# Debug
88
message(VERBOSE "rsp/testing module included")
99

10-
include("rsp/helpers")
1110
include("rsp/cache")
1211
include("rsp/testing/asserts")
1312

@@ -91,7 +90,14 @@ if (NOT COMMAND "define_test_suite")
9190
set(multiValueArgs "") # N/A
9291

9392
cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
94-
requires_arguments(INPUT "DIRECTORY")
93+
94+
# Ensure required arguments are defined
95+
set(requiredArgs "DIRECTORY")
96+
foreach (arg ${requiredArgs})
97+
if (NOT DEFINED INPUT_${arg})
98+
message(FATAL_ERROR "${arg} argument is missing, for ${CMAKE_CURRENT_FUNCTION}()")
99+
endif ()
100+
endforeach ()
95101

96102
# ---------------------------------------------------------------------------------------------- #
97103

@@ -444,7 +450,14 @@ if (NOT COMMAND "add_ctest_using_executor")
444450
set(multiValueArgs LABELS CALLBACK_ARG) # N/A
445451

446452
cmake_parse_arguments(INPUT "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
447-
requires_arguments(INPUT "NAME;CALLBACK;TEST_CASE")
453+
454+
# Ensure required arguments are defined
455+
set(requiredArgs "NAME;CALLBACK;TEST_CASE")
456+
foreach (arg ${requiredArgs})
457+
if (NOT DEFINED INPUT_${arg})
458+
message(FATAL_ERROR "${arg} argument is missing, for ${CMAKE_CURRENT_FUNCTION}()")
459+
endif ()
460+
endforeach ()
448461

449462
# ---------------------------------------------------------------------------------------------- #
450463
# Resolve optional arguments

0 commit comments

Comments
 (0)