diff options
Diffstat (limited to 'src/corelib/Qt5CoreMacros.cmake')
-rw-r--r-- | src/corelib/Qt5CoreMacros.cmake | 43 |
1 files changed, 20 insertions, 23 deletions
diff --git a/src/corelib/Qt5CoreMacros.cmake b/src/corelib/Qt5CoreMacros.cmake index 867d303676..b7f785b716 100644 --- a/src/corelib/Qt5CoreMacros.cmake +++ b/src/corelib/Qt5CoreMacros.cmake @@ -36,25 +36,7 @@ # ###################################### -include(MacroAddFileDependencies) - -MACRO (QT5_EXTRACT_OPTIONS _qt5_files _qt5_options) - SET(${_qt5_files}) - SET(${_qt5_options}) - SET(_QT5_DOING_OPTIONS FALSE) - FOREACH(_currentArg ${ARGN}) - IF ("${_currentArg}" STREQUAL "OPTIONS") - SET(_QT5_DOING_OPTIONS TRUE) - ELSE ("${_currentArg}" STREQUAL "OPTIONS") - IF(_QT5_DOING_OPTIONS) - LIST(APPEND ${_qt5_options} "${_currentArg}") - ELSE(_QT5_DOING_OPTIONS) - LIST(APPEND ${_qt5_files} "${_currentArg}") - ENDIF(_QT5_DOING_OPTIONS) - ENDIF ("${_currentArg}" STREQUAL "OPTIONS") - ENDFOREACH(_currentArg) -ENDMACRO (QT5_EXTRACT_OPTIONS) - +include(CMakeParseArguments) # macro used to create the names of output files preserving relative dirs MACRO (QT5_MAKE_OUTPUT_FILE infile prefix ext outfile ) @@ -135,7 +117,7 @@ MACRO (QT5_CREATE_MOC_COMMAND infile outfile moc_flags moc_options) ADD_CUSTOM_COMMAND(OUTPUT ${outfile} COMMAND ${QT_MOC_EXECUTABLE} ARGS ${moc_flags} ${moc_options} -o ${outfile} ${infile} - DEPENDS ${infile}) + DEPENDS ${infile} VERBATIM) ENDIF (WIN32) ENDMACRO (QT5_CREATE_MOC_COMMAND) @@ -158,8 +140,15 @@ ENDMACRO (QT5_GENERATE_MOC) MACRO (QT5_WRAP_CPP outfiles ) # get include dirs QT5_GET_MOC_FLAGS(moc_flags) - QT5_EXTRACT_OPTIONS(moc_files moc_options ${ARGN}) + set(options) + set(oneValueArgs) + set(multiValueArgs OPTIONS) + + cmake_parse_arguments(_WRAP_CPP "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + set(moc_files ${_WRAP_CPP_UNPARSED_ARGUMENTS}) + set(moc_options ${_WRAP_CPP_OPTIONS}) FOREACH (it ${moc_files}) GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) QT5_MAKE_OUTPUT_FILE(${it} moc_ cxx outfile) @@ -173,7 +162,15 @@ ENDMACRO (QT5_WRAP_CPP) # QT5_ADD_RESOURCES(outfiles inputfile ... ) MACRO (QT5_ADD_RESOURCES outfiles ) - QT5_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN}) + + set(options) + set(oneValueArgs) + set(multiValueArgs OPTIONS) + + cmake_parse_arguments(_RCC "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + set(rcc_files ${_RCC_UNPARSED_ARGUMENTS}) + set(rcc_options ${_RCC_OPTIONS}) FOREACH (it ${rcc_files}) GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE) @@ -201,7 +198,7 @@ MACRO (QT5_ADD_RESOURCES outfiles ) COMMAND ${QT_RCC_EXECUTABLE} ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile} MAIN_DEPENDENCY ${infile} - DEPENDS ${_RC_DEPENDS} "${out_depends}") + DEPENDS ${_RC_DEPENDS} "${out_depends}" VERBATIM) SET(${outfiles} ${${outfiles}} ${outfile}) ENDFOREACH (it) |