forked from qt-creator/qt-creator
CMake build: Create shared lib for shared part of qmlpuppet
Which is used by external plugins. Change-Id: I2d700c02ff3d4b2d692486bd64ef16449deffc4e Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
@@ -65,7 +65,7 @@ endfunction()
|
|||||||
|
|
||||||
function(add_qtc_library name)
|
function(add_qtc_library name)
|
||||||
cmake_parse_arguments(_arg "STATIC;OBJECT;SKIP_TRANSLATION;BUILD_BY_DEFAULT;ALLOW_ASCII_CASTS;UNVERSIONED"
|
cmake_parse_arguments(_arg "STATIC;OBJECT;SKIP_TRANSLATION;BUILD_BY_DEFAULT;ALLOW_ASCII_CASTS;UNVERSIONED"
|
||||||
"DESTINATION;COMPONENT"
|
"DESTINATION;COMPONENT;SOURCES_PREFIX"
|
||||||
"DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;PUBLIC_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES" ${ARGN}
|
"DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;PUBLIC_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES" ${ARGN}
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -94,6 +94,20 @@ function(add_qtc_library name)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# TODO copied from extend_qtc_target.
|
||||||
|
# Instead require CMake 3.11 and use extend_qtc_target for setting SOURCES.
|
||||||
|
# Requiring cmake 3.11 is necessary because before that add_library requires
|
||||||
|
# at least one source file.
|
||||||
|
if (_arg_SOURCES_PREFIX)
|
||||||
|
foreach(source IN LISTS _arg_SOURCES)
|
||||||
|
list(APPEND prefixed_sources "${_arg_SOURCES_PREFIX}/${source}")
|
||||||
|
endforeach()
|
||||||
|
if (NOT IS_ABSOLUTE ${_arg_SOURCES_PREFIX})
|
||||||
|
set(_arg_SOURCES_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/${_arg_SOURCES_PREFIX}")
|
||||||
|
endif()
|
||||||
|
set(_arg_SOURCES ${prefixed_sources})
|
||||||
|
endif()
|
||||||
|
|
||||||
compare_sources_with_existing_disk_files(${name} "${_arg_SOURCES}")
|
compare_sources_with_existing_disk_files(${name} "${_arg_SOURCES}")
|
||||||
|
|
||||||
set(library_type SHARED)
|
set(library_type SHARED)
|
||||||
@@ -114,6 +128,11 @@ function(add_qtc_library name)
|
|||||||
add_library(${IDE_CASED_ID}::${name} ALIAS ${name})
|
add_library(${IDE_CASED_ID}::${name} ALIAS ${name})
|
||||||
set_public_headers(${name} "${_arg_SOURCES}")
|
set_public_headers(${name} "${_arg_SOURCES}")
|
||||||
|
|
||||||
|
# TODO remove, see above
|
||||||
|
if (_arg_SOURCES_PREFIX)
|
||||||
|
target_include_directories(${name} PRIVATE $<BUILD_INTERFACE:${_arg_SOURCES_PREFIX}>)
|
||||||
|
endif()
|
||||||
|
|
||||||
if (${name} MATCHES "^[^0-9-]+$")
|
if (${name} MATCHES "^[^0-9-]+$")
|
||||||
string(TOUPPER "${name}_LIBRARY" EXPORT_SYMBOL)
|
string(TOUPPER "${name}_LIBRARY" EXPORT_SYMBOL)
|
||||||
endif()
|
endif()
|
||||||
@@ -134,15 +153,18 @@ function(add_qtc_library name)
|
|||||||
EXTRA_TRANSLATIONS ${_arg_EXTRA_TRANSLATIONS}
|
EXTRA_TRANSLATIONS ${_arg_EXTRA_TRANSLATIONS}
|
||||||
)
|
)
|
||||||
|
|
||||||
get_filename_component(public_build_interface_dir "${CMAKE_CURRENT_SOURCE_DIR}/.." ABSOLUTE)
|
# everything is different with SOURCES_PREFIX
|
||||||
file(RELATIVE_PATH include_dir_relative_path ${PROJECT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/..")
|
if (NOT _arg_SOURCES_PREFIX)
|
||||||
target_include_directories(${name}
|
get_filename_component(public_build_interface_dir "${CMAKE_CURRENT_SOURCE_DIR}/.." ABSOLUTE)
|
||||||
PRIVATE
|
file(RELATIVE_PATH include_dir_relative_path ${PROJECT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/..")
|
||||||
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>"
|
target_include_directories(${name}
|
||||||
PUBLIC
|
PRIVATE
|
||||||
"$<BUILD_INTERFACE:${public_build_interface_dir}>"
|
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>"
|
||||||
"$<INSTALL_INTERFACE:include/${include_dir_relative_path}>"
|
PUBLIC
|
||||||
)
|
"$<BUILD_INTERFACE:${public_build_interface_dir}>"
|
||||||
|
"$<INSTALL_INTERFACE:include/${include_dir_relative_path}>"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(skip_translation OFF)
|
set(skip_translation OFF)
|
||||||
if (_arg_SKIP_TRANSLATION)
|
if (_arg_SKIP_TRANSLATION)
|
||||||
|
@@ -5,19 +5,58 @@ if (APPLE)
|
|||||||
string(APPEND DESTDIR "/qmldesigner")
|
string(APPEND DESTDIR "/qmldesigner")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_qtc_executable(qml2puppet
|
add_qtc_library(qml2puppet_static
|
||||||
|
STATIC
|
||||||
DEPENDS
|
DEPENDS
|
||||||
Qt5::CorePrivate Qt5::Widgets Qt5::QmlPrivate
|
Qt5::CorePrivate Qt5::Gui
|
||||||
Qt5::QuickPrivate Qt5::Network Qt5::GuiPrivate
|
PUBLIC_INCLUDES "${SRCDIR}/interfaces"
|
||||||
|
SOURCES_PREFIX "${SRCDIR}/interfaces"
|
||||||
SOURCES
|
SOURCES
|
||||||
"${SRCDIR}/qml2puppet/qml2puppetmain.cpp"
|
commondefines.h
|
||||||
"${SRCDIR}/qmlpuppet.qrc"
|
nodeinstanceclientinterface.h
|
||||||
DESTINATION ${DESTDIR}
|
nodeinstanceglobal.h
|
||||||
|
nodeinstanceserverinterface.cpp nodeinstanceserverinterface.h
|
||||||
)
|
)
|
||||||
|
|
||||||
extend_qtc_executable(qml2puppet
|
extend_qtc_library(qml2puppet_static
|
||||||
|
PUBLIC_INCLUDES "${SRCDIR}/types"
|
||||||
|
SOURCES "${SRCDIR}/types/enumeration.h"
|
||||||
|
)
|
||||||
|
|
||||||
|
extend_qtc_library(qml2puppet_static
|
||||||
|
PUBLIC_INCLUDES "${SRCDIR}/container"
|
||||||
|
SOURCES_PREFIX "${SRCDIR}/container"
|
||||||
|
SOURCES
|
||||||
|
addimportcontainer.cpp addimportcontainer.h
|
||||||
|
idcontainer.cpp idcontainer.h
|
||||||
|
imagecontainer.cpp imagecontainer.h
|
||||||
|
informationcontainer.cpp informationcontainer.h
|
||||||
|
instancecontainer.cpp instancecontainer.h
|
||||||
|
mockuptypecontainer.cpp mockuptypecontainer.h
|
||||||
|
propertyabstractcontainer.cpp propertyabstractcontainer.h
|
||||||
|
propertybindingcontainer.cpp propertybindingcontainer.h
|
||||||
|
propertyvaluecontainer.cpp propertyvaluecontainer.h
|
||||||
|
reparentcontainer.cpp reparentcontainer.h
|
||||||
|
sharedmemory.h
|
||||||
|
)
|
||||||
|
|
||||||
|
extend_qtc_library(qml2puppet_static
|
||||||
|
CONDITION UNIX
|
||||||
|
SOURCES_PREFIX "${SRCDIR}/container"
|
||||||
|
SOURCES
|
||||||
|
sharedmemory_unix.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
extend_qtc_library(qml2puppet_static
|
||||||
|
CONDITION NOT UNIX
|
||||||
|
SOURCES_PREFIX "${SRCDIR}/container"
|
||||||
|
SOURCES
|
||||||
|
sharedmemory_qt.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
extend_qtc_library(qml2puppet_static
|
||||||
|
PUBLIC_INCLUDES "${SRCDIR}/commands"
|
||||||
SOURCES_PREFIX "${SRCDIR}/commands"
|
SOURCES_PREFIX "${SRCDIR}/commands"
|
||||||
INCLUDES "${PROJECT_SOURCE_DIR}/src/libs"
|
|
||||||
SOURCES
|
SOURCES
|
||||||
changeauxiliarycommand.cpp changeauxiliarycommand.h
|
changeauxiliarycommand.cpp changeauxiliarycommand.h
|
||||||
changebindingscommand.cpp changebindingscommand.h
|
changebindingscommand.cpp changebindingscommand.h
|
||||||
@@ -57,38 +96,21 @@ extend_qtc_executable(qml2puppet
|
|||||||
scenecreatedcommand.h
|
scenecreatedcommand.h
|
||||||
)
|
)
|
||||||
|
|
||||||
extend_qtc_executable(qml2puppet
|
add_qtc_executable(qml2puppet
|
||||||
SOURCES_PREFIX "${SRCDIR}/container"
|
DEPENDS
|
||||||
|
Qt5::CorePrivate Qt5::Widgets Qt5::QmlPrivate
|
||||||
|
Qt5::QuickPrivate Qt5::Network Qt5::GuiPrivate
|
||||||
|
qml2puppet_static
|
||||||
SOURCES
|
SOURCES
|
||||||
addimportcontainer.cpp addimportcontainer.h
|
"${SRCDIR}/qml2puppet/qml2puppetmain.cpp"
|
||||||
idcontainer.cpp idcontainer.h
|
"${SRCDIR}/qmlpuppet.qrc"
|
||||||
imagecontainer.cpp imagecontainer.h
|
DESTINATION ${DESTDIR}
|
||||||
informationcontainer.cpp informationcontainer.h
|
|
||||||
instancecontainer.cpp instancecontainer.h
|
|
||||||
mockuptypecontainer.cpp mockuptypecontainer.h
|
|
||||||
propertyabstractcontainer.cpp propertyabstractcontainer.h
|
|
||||||
propertybindingcontainer.cpp propertybindingcontainer.h
|
|
||||||
propertyvaluecontainer.cpp propertyvaluecontainer.h
|
|
||||||
reparentcontainer.cpp reparentcontainer.h
|
|
||||||
sharedmemory.h
|
|
||||||
)
|
)
|
||||||
|
|
||||||
extend_qtc_executable(qml2puppet
|
|
||||||
CONDITION UNIX
|
|
||||||
SOURCES_PREFIX "${SRCDIR}/container"
|
|
||||||
SOURCES
|
|
||||||
sharedmemory_unix.cpp
|
|
||||||
)
|
|
||||||
extend_qtc_executable(qml2puppet
|
extend_qtc_executable(qml2puppet
|
||||||
CONDITION UNIX AND (NOT APPLE)
|
CONDITION UNIX AND (NOT APPLE)
|
||||||
DEPENDS rt
|
DEPENDS rt
|
||||||
)
|
)
|
||||||
extend_qtc_executable(qml2puppet
|
|
||||||
CONDITION NOT UNIX
|
|
||||||
SOURCES_PREFIX "${SRCDIR}/container"
|
|
||||||
SOURCES
|
|
||||||
sharedmemory_qt.cpp
|
|
||||||
)
|
|
||||||
|
|
||||||
extend_qtc_executable(qml2puppet
|
extend_qtc_executable(qml2puppet
|
||||||
SOURCES_PREFIX "${SRCDIR}/instances"
|
SOURCES_PREFIX "${SRCDIR}/instances"
|
||||||
@@ -115,15 +137,6 @@ extend_qtc_executable(qml2puppet
|
|||||||
icongizmoimageprovider.cpp icongizmoimageprovider.h
|
icongizmoimageprovider.cpp icongizmoimageprovider.h
|
||||||
)
|
)
|
||||||
|
|
||||||
extend_qtc_executable(qml2puppet
|
|
||||||
SOURCES_PREFIX "${SRCDIR}/interfaces"
|
|
||||||
SOURCES
|
|
||||||
commondefines.h
|
|
||||||
nodeinstanceclientinterface.h
|
|
||||||
nodeinstanceglobal.h
|
|
||||||
nodeinstanceserverinterface.cpp nodeinstanceserverinterface.h
|
|
||||||
)
|
|
||||||
|
|
||||||
extend_qtc_executable(qml2puppet
|
extend_qtc_executable(qml2puppet
|
||||||
SOURCES_PREFIX "${SRCDIR}/qml2puppet/iconrenderer"
|
SOURCES_PREFIX "${SRCDIR}/qml2puppet/iconrenderer"
|
||||||
SOURCES
|
SOURCES
|
||||||
|
Reference in New Issue
Block a user