108 lines
2.8 KiB
CMake
108 lines
2.8 KiB
CMake
|
|
macro(sdk_install _DIR IS_APP _TARGET _H_FILES _QM_FILES)
|
|
#message("QM=${_QM_FILES}")
|
|
if((NOT ${IS_APP}) AND (NOT "${_H_FILES}" STREQUAL ""))
|
|
if(LIB)
|
|
if(WIN32)
|
|
install(FILES ${_H_FILES} DESTINATION ${MINGW_INCLUDE}/${_DIR})
|
|
else()
|
|
install(FILES ${_H_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/${_DIR})
|
|
endif()
|
|
else()
|
|
install(FILES ${_H_FILES} DESTINATION include/${_DIR})
|
|
endif()
|
|
endif()
|
|
if (NOT "${_TARGET}" STREQUAL "")
|
|
if(LIB)
|
|
if(WIN32)
|
|
if (${IS_APP})
|
|
qt_install(TARGETS ${_TARGET} DESTINATION ${MINGW_BIN})
|
|
qt_install(TARGETS ${_TARGET} DESTINATION QtBin)
|
|
else()
|
|
qt_install(TARGETS ${_TARGET} ARCHIVE DESTINATION ${MINGW_LIB})
|
|
qt_install(TARGETS ${_TARGET} RUNTIME DESTINATION ${MINGW_BIN})
|
|
qt_install(TARGETS ${_TARGET} RUNTIME DESTINATION QtBin)
|
|
endif()
|
|
else()
|
|
if (${IS_APP})
|
|
qt_install(TARGETS ${_TARGET} DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
|
|
else()
|
|
qt_install(TARGETS ${_TARGET} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
|
|
endif()
|
|
endif()
|
|
if(NOT "x${_QM_FILES}" STREQUAL "x")
|
|
qt_install(LANG ${_QM_FILES} DESTINATION QtLang)
|
|
endif()
|
|
else()
|
|
if(${IS_APP})
|
|
qt_install(TARGETS ${_TARGET} DESTINATION bin)
|
|
else()
|
|
if(WIN32)
|
|
qt_install(TARGETS ${_TARGET} RUNTIME DESTINATION bin)
|
|
qt_install(TARGETS ${_TARGET} ARCHIVE DESTINATION lib)
|
|
else()
|
|
qt_install(TARGETS ${_TARGET} DESTINATION lib)
|
|
endif()
|
|
endif()
|
|
if(NOT "x${_QM_FILES}" STREQUAL "x")
|
|
qt_install(LANG ${_QM_FILES} DESTINATION lang)
|
|
endif()
|
|
endif()
|
|
endif()
|
|
endmacro()
|
|
|
|
|
|
macro(copy_to_parent _inc_var)
|
|
set(QT_MULTILIB_LIST ${QT_MULTILIB_LIST} PARENT_SCOPE)
|
|
set(_qt_libs ${_qt_libs} PARENT_SCOPE)
|
|
set(_qt_apps ${_qt_apps} PARENT_SCOPE)
|
|
set(_qt_plugs ${_qt_plugs} PARENT_SCOPE)
|
|
if (NOT "x${_inc_var}" STREQUAL "x")
|
|
set(${_inc_var} ${${_inc_var}} PARENT_SCOPE)
|
|
endif()
|
|
if (LIB)
|
|
set(_ALL_TARGETS ${_ALL_TARGETS} PARENT_SCOPE)
|
|
endif()
|
|
endmacro()
|
|
|
|
|
|
macro(add_directories_with_include multilib_prefix)
|
|
set(DIRS)
|
|
file(GLOB _dl "[^.]*")
|
|
foreach(_d ${_dl})
|
|
if(IS_DIRECTORY ${_d})
|
|
list(APPEND DIRS ${_d})
|
|
endif()
|
|
endforeach()
|
|
|
|
set(inc_var ${multilib_prefix}includes)
|
|
set(${inc_var})
|
|
foreach(_d ${DIRS})
|
|
get_filename_component(_dname "${_d}" NAME)
|
|
list(APPEND QT_MULTILIB_LIST ${multilib_prefix}${_dname})
|
|
list(APPEND ${inc_var} "${_d}")
|
|
list(APPEND ${inc_var} "${CMAKE_CURRENT_BINARY_DIR}/${_dname}")
|
|
endforeach()
|
|
|
|
include_directories(${${inc_var}})
|
|
foreach(_d ${DIRS})
|
|
add_subdirectory(${_d})
|
|
endforeach()
|
|
|
|
copy_to_parent(${inc_var})
|
|
endmacro()
|
|
|
|
|
|
macro(add_directories multilib_prefix)
|
|
include_directories(${${multilib_prefix}includes})
|
|
file(GLOB _dl "[^.]*")
|
|
foreach(_d ${_dl})
|
|
if(IS_DIRECTORY ${_d})
|
|
add_subdirectory(${_d})
|
|
endif()
|
|
endforeach()
|
|
|
|
copy_to_parent(${multilib_prefix}includes)
|
|
endmacro()
|
|
|