forked from qt-creator/qt-creator
CMake Build: Allow building unittests when targets are missing
when configuring a minimal build make sure that when querying for target properties like SOURCE_DIR the target actually exists. Change-Id: Ib754b79be6461e3ddd4cdeb1abac123cf4535068 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -386,7 +386,7 @@ endfunction()
|
|||||||
function(extend_qtc_target target_name)
|
function(extend_qtc_target target_name)
|
||||||
cmake_parse_arguments(_arg
|
cmake_parse_arguments(_arg
|
||||||
""
|
""
|
||||||
"SOURCES_PREFIX;FEATURE_INFO"
|
"SOURCES_PREFIX;SOURCES_PREFIX_FROM_TARGET;FEATURE_INFO"
|
||||||
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;PUBLIC_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES"
|
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;PUBLIC_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES"
|
||||||
${ARGN}
|
${ARGN}
|
||||||
)
|
)
|
||||||
@@ -411,6 +411,14 @@ function(extend_qtc_target target_name)
|
|||||||
return()
|
return()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (_arg_SOURCES_PREFIX_FROM_TARGET)
|
||||||
|
if (NOT TARGET ${_arg_SOURCES_PREFIX_FROM_TARGET})
|
||||||
|
return()
|
||||||
|
else()
|
||||||
|
get_target_property(_arg_SOURCES_PREFIX ${_arg_SOURCES_PREFIX_FROM_TARGET} SOURCES_DIR)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
add_qtc_depends(${target_name}
|
add_qtc_depends(${target_name}
|
||||||
PRIVATE ${_arg_DEPENDS}
|
PRIVATE ${_arg_DEPENDS}
|
||||||
PUBLIC ${_arg_PUBLIC_DEPENDS}
|
PUBLIC ${_arg_PUBLIC_DEPENDS}
|
||||||
|
@@ -40,7 +40,6 @@ add_qtc_test(unittest GTEST
|
|||||||
clientserveroutsideprocess-test.cpp
|
clientserveroutsideprocess-test.cpp
|
||||||
commandlinebuilder-test.cpp
|
commandlinebuilder-test.cpp
|
||||||
compare-operators.h
|
compare-operators.h
|
||||||
compilationdatabaseutils-test.cpp
|
|
||||||
compileroptionsbuilder-test.cpp
|
compileroptionsbuilder-test.cpp
|
||||||
conditionally-disabled-tests.h
|
conditionally-disabled-tests.h
|
||||||
cppprojectfilecategorizer-test.cpp
|
cppprojectfilecategorizer-test.cpp
|
||||||
@@ -319,7 +318,7 @@ extend_qtc_test(unittest
|
|||||||
)
|
)
|
||||||
|
|
||||||
extend_qtc_test(unittest
|
extend_qtc_test(unittest
|
||||||
CONDITION TARGET clangFormat
|
CONDITION TARGET ClangFormat
|
||||||
DEPENDS clangFormat
|
DEPENDS clangFormat
|
||||||
SOURCES
|
SOURCES
|
||||||
clangformat-test.cpp
|
clangformat-test.cpp
|
||||||
@@ -421,9 +420,8 @@ extend_qtc_test_with_target_sources(CPlusPlus DEFINES CPLUSPLUS_BUILD_STATIC_LIB
|
|||||||
extend_qtc_test_with_target_sources(3rd_cplusplus DEFINES CPLUSPLUS_BUILD_LIB)
|
extend_qtc_test_with_target_sources(3rd_cplusplus DEFINES CPLUSPLUS_BUILD_LIB)
|
||||||
extend_qtc_test_with_target_sources(ClangSupport DEFINES CLANGSUPPORT_BUILD_LIB)
|
extend_qtc_test_with_target_sources(ClangSupport DEFINES CLANGSUPPORT_BUILD_LIB)
|
||||||
|
|
||||||
get_target_property(ClangCodeModelSourcesDir ClangCodeModel SOURCES_DIR)
|
|
||||||
extend_qtc_test(unittest
|
extend_qtc_test(unittest
|
||||||
SOURCES_PREFIX "${ClangCodeModelSourcesDir}"
|
SOURCES_PREFIX_FROM_TARGET ClangCodeModel
|
||||||
SOURCES
|
SOURCES
|
||||||
clangactivationsequencecontextprocessor.cpp clangactivationsequencecontextprocessor.h
|
clangactivationsequencecontextprocessor.cpp clangactivationsequencecontextprocessor.h
|
||||||
clangactivationsequenceprocessor.cpp clangactivationsequenceprocessor.h
|
clangactivationsequenceprocessor.cpp clangactivationsequenceprocessor.h
|
||||||
@@ -436,16 +434,20 @@ extend_qtc_test(unittest
|
|||||||
clangisdiagnosticrelatedtolocation.h
|
clangisdiagnosticrelatedtolocation.h
|
||||||
)
|
)
|
||||||
|
|
||||||
get_target_property(CompilationDatabasePMSourcesDir CompilationDatabaseProjectManager SOURCES_DIR)
|
|
||||||
extend_qtc_test(unittest
|
extend_qtc_test(unittest
|
||||||
SOURCES_PREFIX "${CompilationDatabasePMSourcesDir}"
|
SOURCES_PREFIX_FROM_TARGET CompilationDatabaseProjectManager
|
||||||
SOURCES
|
SOURCES
|
||||||
compilationdatabaseutils.cpp compilationdatabaseutils.h
|
compilationdatabaseutils.cpp compilationdatabaseutils.h
|
||||||
)
|
)
|
||||||
|
|
||||||
get_target_property(CoreSourcesDir Core SOURCES_DIR)
|
|
||||||
extend_qtc_test(unittest
|
extend_qtc_test(unittest
|
||||||
SOURCES_PREFIX "${CoreSourcesDir}"
|
CONDITION TARGET CompilationDatabaseProjectManager
|
||||||
|
SOURCES
|
||||||
|
compilationdatabaseutils-test.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
extend_qtc_test(unittest
|
||||||
|
SOURCES_PREFIX_FROM_TARGET Core
|
||||||
DEFINES CORE_STATIC_LIBRARY
|
DEFINES CORE_STATIC_LIBRARY
|
||||||
SOURCES
|
SOURCES
|
||||||
coreicons.cpp coreicons.h
|
coreicons.cpp coreicons.h
|
||||||
@@ -453,9 +455,8 @@ extend_qtc_test(unittest
|
|||||||
locator/ilocatorfilter.cpp locator/ilocatorfilter.h
|
locator/ilocatorfilter.cpp locator/ilocatorfilter.h
|
||||||
)
|
)
|
||||||
|
|
||||||
get_target_property(CppToolsSourcesDir CppTools SOURCES_DIR)
|
|
||||||
extend_qtc_test(unittest
|
extend_qtc_test(unittest
|
||||||
SOURCES_PREFIX "${CppToolsSourcesDir}"
|
SOURCES_PREFIX_FROM_TARGET CppTools
|
||||||
DEFINES CPPTOOLS_STATIC_LIBRARY
|
DEFINES CPPTOOLS_STATIC_LIBRARY
|
||||||
SOURCES
|
SOURCES
|
||||||
cppprojectfile.cpp cppprojectfile.h
|
cppprojectfile.cpp cppprojectfile.h
|
||||||
@@ -469,9 +470,8 @@ extend_qtc_test(unittest
|
|||||||
headerpathfilter.cpp headerpathfilter.h
|
headerpathfilter.cpp headerpathfilter.h
|
||||||
)
|
)
|
||||||
|
|
||||||
get_target_property(ProjectExplorerSourcesDir ProjectExplorer SOURCES_DIR)
|
|
||||||
extend_qtc_test(unittest
|
extend_qtc_test(unittest
|
||||||
SOURCES_PREFIX "${ProjectExplorerSourcesDir}"
|
SOURCES_PREFIX_FROM_TARGET ProjectExplorer
|
||||||
DEFINES PROJECTEXPLORER_STATIC_LIBRARY
|
DEFINES PROJECTEXPLORER_STATIC_LIBRARY
|
||||||
SOURCES
|
SOURCES
|
||||||
projectmacro.cpp projectmacro.h
|
projectmacro.cpp projectmacro.h
|
||||||
@@ -517,9 +517,8 @@ extend_qtc_test(unittest
|
|||||||
progressmanagerinterface.h
|
progressmanagerinterface.h
|
||||||
)
|
)
|
||||||
|
|
||||||
get_target_property(ClangFormatSourcesDir ClangFormat SOURCES_DIR)
|
|
||||||
extend_qtc_test(unittest
|
extend_qtc_test(unittest
|
||||||
SOURCES_PREFIX "${ClangFormatSourcesDir}"
|
SOURCES_PREFIX_FROM_TARGET ClangFormat
|
||||||
DEFINES CLANGPCHMANAGER_STATIC_LIB
|
DEFINES CLANGPCHMANAGER_STATIC_LIB
|
||||||
SOURCES
|
SOURCES
|
||||||
clangformatconstants.h
|
clangformatconstants.h
|
||||||
|
Reference in New Issue
Block a user