CMake refactoring
This commit is contained in:
@@ -273,19 +273,23 @@ endmacro()
|
||||
|
||||
|
||||
macro(import_version _T _F)
|
||||
set(_names "${__version_names};FULLSUFFIX")
|
||||
foreach(_i ${_names})
|
||||
set(${_T}_VERSION_${_i} "${${_F}_VERSION_${_i}}")
|
||||
endforeach()
|
||||
set(${_T}_VERSION "${${_F}_VERSION}")
|
||||
set(${_T}_LANG "${${_F}_LANG}")
|
||||
if (NOT "x${_T}" STREQUAL "x${_F}")
|
||||
set(_names "${__version_names};FULLSUFFIX")
|
||||
foreach(_i ${_names})
|
||||
set(${_T}_VERSION_${_i} "${${_F}_VERSION_${_i}}")
|
||||
endforeach()
|
||||
set(${_T}_VERSION "${${_F}_VERSION}")
|
||||
set(${_T}_LANG "${${_F}_LANG}")
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
|
||||
macro(import_deploy_properties _T _F)
|
||||
foreach(_i ${__prop_names})
|
||||
set(${_T}_${_i} "${${_F}_${_i}}")
|
||||
endforeach()
|
||||
if (NOT "x${_T}" STREQUAL "x${_F}")
|
||||
foreach(_i ${__prop_names})
|
||||
set(${_T}_${_i} "${${_F}_${_i}}")
|
||||
endforeach()
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
|
||||
@@ -475,21 +479,26 @@ endmacro()
|
||||
macro(__gather_deps _T _search_path_var _dep_libs_var _dep_libs_cs_var _added_)
|
||||
get_target_property(_LL${_T} ${_T} LINK_LIBRARIES)
|
||||
foreach (_L${_T} ${_LL${_T}})
|
||||
if (TARGET ${_L${_T}})
|
||||
get_target_property(_II${_T} ${_L${_T}} IMPORTED)
|
||||
set(_lib _L${_T})
|
||||
if (TARGET ${_lib})
|
||||
get_target_property(_AT ${_lib} ALIASED_TARGET)
|
||||
if (NOT "x${_AT}" STREQUAL "x")
|
||||
set(_lib ${_AT})
|
||||
endif()
|
||||
get_target_property(_II${_T} ${_lib} IMPORTED)
|
||||
if (NOT _II${_T})
|
||||
#message("depend on ${_L${_T}}")
|
||||
get_target_property(_LT${_T} ${_L${_T}} TYPE)
|
||||
#message("depend on ${_lib}")
|
||||
get_target_property(_LT${_T} ${_lib} TYPE)
|
||||
if (("x${_LT${_T}}" STREQUAL "xSHARED_LIBRARY") OR ("x${_LT${_T}}" STREQUAL "xSTATIC_LIBRARY"))
|
||||
if (NOT _L${_T} IN_LIST ${_added_})
|
||||
list(APPEND ${_added_} ${_L${_T}})
|
||||
__gather_deps(${_L${_T}} ${_search_path_var} ${_dep_libs_var} ${_dep_libs_cs_var} ${_added_})
|
||||
if (NOT _lib IN_LIST ${_added_})
|
||||
list(APPEND ${_added_} ${_lib})
|
||||
__gather_deps(${_lib} ${_search_path_var} ${_dep_libs_var} ${_dep_libs_cs_var} ${_added_})
|
||||
if ("x${_LT${_T}}" STREQUAL "xSHARED_LIBRARY")
|
||||
if (NOT DEFINED ANDROID_PLATFORM)
|
||||
set(${_search_path_var} "${${_search_path_var}}${_dt_delim}$<TARGET_FILE_DIR:${_L${_T}}>")
|
||||
set(${_search_path_var} "${${_search_path_var}}${_dt_delim}$<TARGET_FILE_DIR:${_lib}>")
|
||||
endif()
|
||||
set(${_dep_libs_cs_var} "${${_dep_libs_cs_var}}${_dt_delim}$<TARGET_FILE_DIR:${_L${_T}}>/$<TARGET_FILE_NAME:${_L${_T}}>")
|
||||
set(${_dep_libs_var} "${${_dep_libs_var}}" "$<TARGET_FILE_DIR:${_L${_T}}>/$<TARGET_FILE_NAME:${_L${_T}}>")
|
||||
set(${_dep_libs_cs_var} "${${_dep_libs_cs_var}}${_dt_delim}$<TARGET_FILE_DIR:${_lib}>/$<TARGET_FILE_NAME:${_lib}>")
|
||||
set(${_dep_libs_var} "${${_dep_libs_var}}" "$<TARGET_FILE_DIR:${_lib}>/$<TARGET_FILE_NAME:${_lib}>")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
Reference in New Issue
Block a user