diff options
| author | Alex Merry <kde@randomguy3.me.uk> | 2014-02-18 15:37:25 +0000 | 
|---|---|---|
| committer | Alex Merry <kde@randomguy3.me.uk> | 2014-02-18 17:22:12 +0000 | 
| commit | 447fd4c50c5d9f6ff021c5274f0f8d04523fcf60 (patch) | |
| tree | d7f8ee2ad1204f6c2c412fbd9774b7bd5f930f5f | |
| parent | 139f60d81653888f696ef433bff5a9f5849b252c (diff) | |
| download | extra-cmake-modules-447fd4c50c5d9f6ff021c5274f0f8d04523fcf60.tar.gz extra-cmake-modules-447fd4c50c5d9f6ff021c5274f0f8d04523fcf60.tar.bz2 | |
Simplify argument parsing for ecm_generate_headers
Now that we no longer have to support the old syntax, some of the
more complex bits of the argument parsing can be removed.
REVIEW: 115869
| -rw-r--r-- | modules/ECMGenerateHeaders.cmake | 31 | 
1 files changed, 10 insertions, 21 deletions
| diff --git a/modules/ECMGenerateHeaders.cmake b/modules/ECMGenerateHeaders.cmake index 23c91336..739c2117 100644 --- a/modules/ECMGenerateHeaders.cmake +++ b/modules/ECMGenerateHeaders.cmake @@ -94,12 +94,20 @@  include(CMakeParseArguments) -function(ECM_GENERATE_HEADERS) +function(ECM_GENERATE_HEADERS camelcase_headers_var)      set(options) -    set(oneValueArgs OUTPUT_DIR PREFIX REQUIRED_HEADERS RELATIVE MODULE_NAME) +    set(oneValueArgs OUTPUT_DIR PREFIX REQUIRED_HEADERS RELATIVE)      set(multiValueArgs HEADER_NAMES)      cmake_parse_arguments(EGH "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) +    if (EGH_UNPARSED_ARGUMENTS) +        message(FATAL_ERROR "Unexpected arguments to ECM_GENERATE_HEADERS: ${EGH_UNPARSED_ARGUMENTS}") +    endif() + +    if(NOT EGH_HEADER_NAMES) +       message(FATAL_ERROR "Missing header_names argument to ECM_GENERATE_HEADERS") +    endif() +      if(NOT EGH_OUTPUT_DIR)          set(EGH_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}")      endif() @@ -116,25 +124,6 @@ function(ECM_GENERATE_HEADERS)          string(TOLOWER "${EGH_PREFIX}" lowercaseprefix)      endif() -    if(NOT EGH_HEADER_NAMES) -       message(FATAL_ERROR "Missing header_names argument to ECM_GENERATE_HEADERS") -    endif() - -    if (EGH_MODULE_NAME) -        # this is not a valid argument in the new syntax -        message(FATAL_ERROR "Unexpected MODULE_NAME argument for ECM_GENERATE_HEADERS") -    endif() - -    if (NOT EGH_UNPARSED_ARGUMENTS) -        message(FATAL_ERROR "Missing camelcase_headers_var argument to ECM_GENERATE_HEADERS") -    else() -        list(GET EGH_UNPARSED_ARGUMENTS 0 camelcase_headers_var) -        list(REMOVE_AT EGH_UNPARSED_ARGUMENTS 0) -        if (EGH_UNPARSED_ARGUMENTS) -            message(FATAL_ERROR "Unexpected arguments to ECM_GENERATE_HEADERS: ${EGH_UNPARSED_ARGUMENTS}") -        endif() -    endif() -      foreach(_CLASSNAME ${EGH_HEADER_NAMES})          string(TOLOWER "${_CLASSNAME}" lowercaseclassname)          set(FANCY_HEADER_FILE "${EGH_OUTPUT_DIR}/${EGH_PREFIX}${_CLASSNAME}") | 
