summaryrefslogtreecommitdiffstats
path: root/examples/widgets/tools/plugandpaint
diff options
context:
space:
mode:
authorKevin Funk <kevin.funk@kdab.com>2019-06-04 17:08:47 +0200
committerKevin Funk <kevin.funk@kdab.com>2019-06-05 12:53:28 +0000
commit99539a289491a2a709c2a63cd91eac155a1699da (patch)
treed928d6c6e123c6588261bea9358354fe1e1a7400 /examples/widgets/tools/plugandpaint
parentace549587073d387823815b02ec85a28da408844 (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/plugandpaint')
-rw-r--r--examples/widgets/tools/plugandpaint/app/CMakeLists.txt50
-rw-r--r--examples/widgets/tools/plugandpaint/plugins/basictools/CMakeLists.txt37
-rw-r--r--examples/widgets/tools/plugandpaint/plugins/extrafilters/CMakeLists.txt30
3 files changed, 43 insertions, 74 deletions
diff --git a/examples/widgets/tools/plugandpaint/app/CMakeLists.txt b/examples/widgets/tools/plugandpaint/app/CMakeLists.txt
index e5bbbacec2..2e730791cc 100644
--- a/examples/widgets/tools/plugandpaint/app/CMakeLists.txt
+++ b/examples/widgets/tools/plugandpaint/app/CMakeLists.txt
@@ -1,29 +1,33 @@
# Generated from app.pro.
-#####################################################################
-## plugandpaint Binary:
-#####################################################################
+cmake_minimum_required(VERSION 3.14)
+project(plugandpaint LANGUAGES CXX)
-add_qt_executable(plugandpaint
- GUI
- OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/tools/plugandpaint"
- INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/tools/plugandpaint"
- SOURCES
- interfaces.h
- main.cpp
- mainwindow.cpp mainwindow.h
- paintarea.cpp paintarea.h
- plugindialog.cpp plugindialog.h
- LIBRARIES
- Qt::Widgets
- pnp_basictools # special case
-)
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+set(INSTALL_EXAMPLEDIR "examples")
-#### Keys ignored in scope 1:.:app.pro:<NONE>:
-# CONFIG = "install_ok"
-# DESTDIR = ".."
+find_package(Qt5 COMPONENTS Widgets)
-## Scopes:
-#####################################################################
+add_executable(plugandpaint WIN32 MACOSX_BUNDLE
+ interfaces.h
+ main.cpp
+ mainwindow.cpp mainwindow.h
+ paintarea.cpp paintarea.h
+ plugindialog.cpp plugindialog.h
+)
+target_link_libraries(plugandpaint PUBLIC
+ # Remove: L../plugins
+ Qt::Widgets
+ pnp_basictools # special case
+)
+target_link_libraries(plugandpaint PUBLIC pnp_basictools) # special case
-# special case: Remove the rest
+install(TARGETS plugandpaint
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/widgets/tools/plugandpaint/plugins/basictools/CMakeLists.txt b/examples/widgets/tools/plugandpaint/plugins/basictools/CMakeLists.txt
index a059d0deab..64d239b054 100644
--- a/examples/widgets/tools/plugandpaint/plugins/basictools/CMakeLists.txt
+++ b/examples/widgets/tools/plugandpaint/plugins/basictools/CMakeLists.txt
@@ -1,30 +1,13 @@
-# Generated from basictools.pro.
+# special case begin
-#####################################################################
-## qtLibraryTargetpnp_basictools Module:
-#####################################################################
-
-add_qt_plugin(pnp_basictools # special case
- STATIC # special case
- OUTPUT_DIRECTORY ../../plugins # special case
- INSTALL_DIRECTORY ../../plugins # special case
- ARCHIVE_INSTALL_DIRECTORY ../../plugins # special case
- SOURCES
- basictoolsplugin.cpp basictoolsplugin.h
- INCLUDE_DIRECTORIES
- ../../app
- LIBRARIES
- Qt::Widgets
+add_library(pnp_basictools MODULE STATIC
+ basictoolsplugin.cpp basictoolsplugin.h
)
+set_target_properties(pnp_basictools PROPERTIES
+ LIBRARY_OUTPUT_DIRECTORY "../../plugins"
+ RUNTIME_OUTPUT_DIRECTORY "../../plugins"
+)
+target_include_directories(pnp_basictools PUBLIC ../../app)
+target_link_libraries(pnp_basictools PUBLIC Qt::Widgets)
-# CONFIG = "plugin" "static" "install_ok"
-# DESTDIR = "../../plugins"
-# INSTALLS = "target"
-# TEMPLATE = "lib"
-# target.path = "$$[QT_INSTALL_EXAMPLES]/widgets/tools/plugandpaint/plugins"
-
-## Scopes:
-#####################################################################
-
-#### Keys ignored in scope 2:.:basictools.pro:APPLE_UIKIT:
-# CONFIG = "debug_and_release"
+# special case end
diff --git a/examples/widgets/tools/plugandpaint/plugins/extrafilters/CMakeLists.txt b/examples/widgets/tools/plugandpaint/plugins/extrafilters/CMakeLists.txt
index a0447c833e..31d6f5ef65 100644
--- a/examples/widgets/tools/plugandpaint/plugins/extrafilters/CMakeLists.txt
+++ b/examples/widgets/tools/plugandpaint/plugins/extrafilters/CMakeLists.txt
@@ -1,27 +1,9 @@
-# Generated from extrafilters.pro.
+# special case begin
-#####################################################################
-## qtLibraryTargetpnp_extrafilters Module:
-#####################################################################
-
-add_qt_plugin(pnp_extrafilters_plugin TYPE plugin # special case
- SOURCES
- extrafiltersplugin.cpp extrafiltersplugin.h
- INCLUDE_DIRECTORIES
- ../../app
- LIBRARIES
- Qt::Widgets
+add_library(pnp_extrafilters_plugin MODULE
+ extrafiltersplugin.cpp extrafiltersplugin.h
)
+target_include_directories(pnp_extrafilters_plugin PRIVATE ../../app)
+target_link_libraries(pnp_extrafilters_plugin PRIVATE Qt::Widgets)
-#### Keys ignored in scope 1:.:extrafilters.pro:<NONE>:
-# CONFIG = "plugin" "install_ok"
-# DESTDIR = "../../plugins"
-# INSTALLS = "target"
-# TEMPLATE = "lib"
-# target.path = "$$[QT_INSTALL_EXAMPLES]/widgets/tools/plugandpaint/plugins"
-
-## Scopes:
-#####################################################################
-
-#### Keys ignored in scope 2:.:extrafilters.pro:APPLE_UIKIT:
-# CONFIG = "debug_and_release"
+# special case end