summaryrefslogtreecommitdiffstats
path: root/examples/qpa
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/qpa
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/qpa')
-rw-r--r--examples/qpa/qrasterwindow/CMakeLists.txt33
-rw-r--r--examples/qpa/windows/CMakeLists.txt42
2 files changed, 49 insertions, 26 deletions
diff --git a/examples/qpa/qrasterwindow/CMakeLists.txt b/examples/qpa/qrasterwindow/CMakeLists.txt
index 0eae5b28af..c74ce2974b 100644
--- a/examples/qpa/qrasterwindow/CMakeLists.txt
+++ b/examples/qpa/qrasterwindow/CMakeLists.txt
@@ -1,15 +1,24 @@
# Generated from qrasterwindow.pro.
-#####################################################################
-## qrasterwindow Binary:
-#####################################################################
-
-add_qt_executable(qrasterwindow
- GUI
- OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/qpa/qrasterwindow"
- INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/qpa/qrasterwindow"
- SOURCES
- main.cpp
- LIBRARIES
- Qt::Gui # special case
+cmake_minimum_required(VERSION 3.14)
+project(qrasterwindow LANGUAGES CXX)
+
+find_package(Qt5 COMPONENTS Gui) # special case
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+set(INSTALL_EXAMPLEDIR "examples")
+
+add_executable(qrasterwindow WIN32 MACOSX_BUNDLE
+ main.cpp
+)
+target_link_libraries(qrasterwindow PUBLIC Qt::Gui) # special case: add
+
+install(TARGETS qrasterwindow
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
)
diff --git a/examples/qpa/windows/CMakeLists.txt b/examples/qpa/windows/CMakeLists.txt
index 55135e02ff..2bd7b6fd85 100644
--- a/examples/qpa/windows/CMakeLists.txt
+++ b/examples/qpa/windows/CMakeLists.txt
@@ -1,19 +1,33 @@
# Generated from windows.pro.
-#####################################################################
-## windows Binary:
-#####################################################################
+cmake_minimum_required(VERSION 3.14)
+project(windows LANGUAGES CXX)
-add_qt_executable(windows
- OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/qpa/windows"
- INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/qpa/windows"
- SOURCES
- main.cpp
- window.cpp window.h
- LIBRARIES
- Qt::GuiPrivate
- Qt::CorePrivate
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+set(INSTALL_EXAMPLEDIR "examples")
+
+find_package(Qt5 COMPONENTS Gui)
+find_package(Qt5 COMPONENTS Core)
+
+add_executable(windows
+ main.cpp
+ window.cpp window.h
+)
+target_link_libraries(windows PRIVATE
+ Qt::CorePrivate
+ Qt::GuiPrivate
+)
+target_link_libraries(windows PUBLIC
+ Qt::Core
+ Qt::Gui
)
-#### Keys ignored in scope 1:.:windows.pro:<NONE>:
-# CONFIG = "console"
+install(TARGETS windows
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+)