23 lines
711 B
CMake
23 lines
711 B
CMake
|
macro(optional_source TOGGLE)
|
||
|
parse_arguments(OPTIONAL_SOURCE
|
||
|
"SOURCES;HEADERS;UI;INCLUDE_DIRECTORIES"
|
||
|
""
|
||
|
${ARGN}
|
||
|
)
|
||
|
|
||
|
if(${TOGGLE})
|
||
|
list(APPEND SOURCES ${OPTIONAL_SOURCE_SOURCES})
|
||
|
list(APPEND HEADERS ${OPTIONAL_SOURCE_HEADERS})
|
||
|
list(APPEND UI ${OPTIONAL_SOURCE_UI})
|
||
|
include_directories(${OPTIONAL_SOURCE_INCLUDE_DIRECTORIES})
|
||
|
else(${TOGGLE})
|
||
|
list(APPEND OTHER_SOURCES ${OPTIONAL_SOURCE_SOURCES})
|
||
|
list(APPEND OTHER_SOURCES ${OPTIONAL_SOURCE_HEADERS})
|
||
|
|
||
|
set(_uic_sources)
|
||
|
qt5_wrap_ui(_uic_sources ${OPTIONAL_SOURCE_UI})
|
||
|
list(APPEND OTHER_SOURCES ${_uic_sources})
|
||
|
list(APPEND OTHER_UIC_SOURCES ${_uic_sources})
|
||
|
endif(${TOGGLE})
|
||
|
endmacro(optional_source)
|