Skip to content

Commit 29e9ed4

Browse files
authored
Merge pull request #302 from Libvisual/cmake-check-unparsed-args
Core, Plugins (Build): Check for unparsed arguments when using cmake_parse_arguments().
2 parents d508650 + 5f11c7e commit 29e9ed4

File tree

3 files changed

+12
-0
lines changed

3 files changed

+12
-0
lines changed

libvisual-plugins/cmake/LVBuildPlugin.cmake

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@ FUNCTION(LV_BUILD_PLUGIN PLUGIN_NAME PLUGIN_TYPE)
1414
SET(MULTI_ARGS "SOURCES" "COMPILE_DEFS" "COMPILE_OPTIONS" "INCLUDE_DIRS" "LINK_DIRS" "LINK_LIBS" "LINK_OPTIONS")
1515
CMAKE_PARSE_ARGUMENTS(PARSED_ARGS "${OPTION_FLAGS}" "${SINGLE_ARGS}" "${MULTI_ARGS}" ${ARGN})
1616

17+
IF(PARSED_ARGS_UNPARSED_ARGUMENTS)
18+
MESSAGE(FATAL_ERROR "Cannot build plugin '${PLUGIN_NAME}', bad arguments: ${PARSED_ARGS_UNPARSED_ARGUMENTS}")
19+
ENDIF()
20+
1721
IF(NOT PARSED_ARGS_SOURCES)
1822
MESSAGE(FATAL_ERROR "Cannot build plugin '${PLUGIN_NAME}', no source files specified.")
1923
ENDIF()

libvisual/cmake/LVBuild.cmake

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@ INCLUDE(CMakeParseArguments)
55
FUNCTION(LV_GENERATE_ORC_INLINE_SOURCE SOURCE TARGET)
66
CMAKE_PARSE_ARGUMENTS(PARSED_ARGS "HEADER" "INIT_FUNCTION" "INCLUDES" ${ARGN})
77

8+
IF(PARSED_ARGS_UNPARSED_ARGUMENTS)
9+
MESSAGE(FATAL_ERROR "Cannot generate Orc function(s), bad arguments: ${PARSED_ARGS_UNPARSED_ARGUMENTS}")
10+
ENDIF()
11+
812
SET(ORCC_FLAGS "--inline")
913

1014
IF(PARSED_ARGS_HEADER)

libvisual/cmake/LVBuildTest.cmake

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ FUNCTION(LV_BUILD_TEST TEST_NAME)
66
SET(MULTI_ARGS "ARGS" "SOURCES" "COMPILE_DEFS" "COMPILE_OPTIONS" "INCLUDE_DIRS" "LINK_DIRS" "LINK_LIBS" "LINK_OPTIONS")
77
CMAKE_PARSE_ARGUMENTS(PARSED_ARGS "${OPTION_FLAGS}" "${SINGLE_ARGS}" "${MULTI_ARGS}" ${ARGN})
88

9+
IF(PARSED_ARGS_UNPARSED_ARGUMENTS)
10+
MESSAGE(FATAL_ERROR "Cannot build unit test '${TEST_NAME}', bad arguments: ${PARSED_ARGS_UNPARSED_ARGUMENTS}")
11+
ENDIF()
12+
913
IF(NOT PARSED_ARGS_SOURCES)
1014
MESSAGE(FATAL_ERROR "Cannot build unit test '${TEST_NAME}', no source files specified.")
1115
ENDIF()

0 commit comments

Comments
 (0)