diff options
author | Kevin Funk <kevin.funk@kdab.com> | 2019-06-04 17:08:47 +0200 |
---|---|---|
committer | Kevin Funk <kevin.funk@kdab.com> | 2019-06-05 12:53:28 +0000 |
commit | 99539a289491a2a709c2a63cd91eac155a1699da (patch) | |
tree | d928d6c6e123c6588261bea9358354fe1e1a7400 /examples/widgets/tools/echoplugin | |
parent | ace549587073d387823815b02ec85a28da408844 (diff) |
Allow to build examples as standalone project
Create CMake config files which can be used from the very same CMake
project. These CMake config files simply do not create any targets,
controlled via the QT_NO_CREATE_TARGETS.
This patch also allows to build qtbase.git:examples as a standalone
project, against an already-built Qt.
Ran this:
ag -s "QT " examples -l -0 | xargs -0 -n 1 .../util/cmake/pro2cmake.py --is-example
Task-number: QTBUG-74713
Change-Id: I44cce5a4048618b30f890c5b789592c227a8b47d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'examples/widgets/tools/echoplugin')
-rw-r--r-- | examples/widgets/tools/echoplugin/echowindow/CMakeLists.txt | 45 | ||||
-rw-r--r-- | examples/widgets/tools/echoplugin/plugin/CMakeLists.txt | 26 |
2 files changed, 27 insertions, 44 deletions
diff --git a/examples/widgets/tools/echoplugin/echowindow/CMakeLists.txt b/examples/widgets/tools/echoplugin/echowindow/CMakeLists.txt index 3c9082db07..941007505d 100644 --- a/examples/widgets/tools/echoplugin/echowindow/CMakeLists.txt +++ b/examples/widgets/tools/echoplugin/echowindow/CMakeLists.txt @@ -1,33 +1,28 @@ # Generated from echowindow.pro. -##################################################################### -## echoplugin Binary: -##################################################################### +cmake_minimum_required(VERSION 3.14) +project(echoplugin LANGUAGES CXX) -add_qt_executable(echoplugin - GUI - OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/tools/echoplugin" - INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/tools/echoplugin" - SOURCES - echointerface.h - echowindow.cpp echowindow.h - main.cpp - LIBRARIES - Qt::Widgets -) +set(CMAKE_INCLUDE_CURRENT_DIR ON) -#### Keys ignored in scope 1:.:echowindow.pro:<NONE>: -# CONFIG = "install_ok" -# QMAKE_PROJECT_NAME = "echopluginwindow" +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) -## Scopes: -##################################################################### +set(INSTALL_EXAMPLEDIR "examples") -#### Keys ignored in scope 3:.:echowindow.pro:CONFIG(debug,release OR debug): -# DESTDIR = "../debug/" +find_package(Qt5 COMPONENTS Widgets) -#### Keys ignored in scope 4:.:echowindow.pro:CONFIG(release,release OR debug): -# DESTDIR = "../release/" +add_executable(echopluginwindow WIN32 MACOSX_BUNDLE # special case: renamed target + echointerface.h + echowindow.cpp echowindow.h + main.cpp +) +target_link_libraries(echopluginwindow PUBLIC # special case: renamed target + Qt::Widgets +) -#### Keys ignored in scope 5:.:echowindow.pro:else: -# DESTDIR = "../" +install(TARGETS echopluginwindow # special case: renamed target + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/widgets/tools/echoplugin/plugin/CMakeLists.txt b/examples/widgets/tools/echoplugin/plugin/CMakeLists.txt index 7250a7e0a6..78f5dcbe70 100644 --- a/examples/widgets/tools/echoplugin/plugin/CMakeLists.txt +++ b/examples/widgets/tools/echoplugin/plugin/CMakeLists.txt @@ -1,22 +1,10 @@ -# Generated from plugin.pro. +# special case begin -##################################################################### -## qtLibraryTargetechoplugin Module: -##################################################################### - -add_qt_plugin(echoplugin_plugin TYPE plugin # special case - SOURCES - echoplugin.cpp echoplugin.h - INCLUDE_DIRECTORIES - ../echowindow - LIBRARIES - Qt::Widgets +add_library(echoplugin MODULE + echoplugin.cpp echoplugin.h ) -#### Keys ignored in scope 1:.:plugin.pro:<NONE>: -# CONFIG = "plugin" "install_ok" -# DESTDIR = "../plugins" -# EXAMPLE_FILES = "echoplugin.json" -# INSTALLS = "target" -# TEMPLATE = "lib" -# target.path = "$$[QT_INSTALL_EXAMPLES]/widgets/tools/echoplugin/plugins" +target_include_directories(echoplugin PUBLIC ../echowindow) +target_link_libraries(echoplugin PUBLIC Qt::Widgets) + +# special case end |