summaryrefslogtreecommitdiffstats
path: root/examples/corelib/threads
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/corelib/threads
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/corelib/threads')
-rw-r--r--examples/corelib/threads/mandelbrot/CMakeLists.txt40
-rw-r--r--examples/corelib/threads/queuedcustomtype/CMakeLists.txt38
-rw-r--r--examples/corelib/threads/semaphores/CMakeLists.txt34
-rw-r--r--examples/corelib/threads/waitconditions/CMakeLists.txt34
4 files changed, 89 insertions, 57 deletions
diff --git a/examples/corelib/threads/mandelbrot/CMakeLists.txt b/examples/corelib/threads/mandelbrot/CMakeLists.txt
index 00f27bacd9..9b5995b1a5 100644
--- a/examples/corelib/threads/mandelbrot/CMakeLists.txt
+++ b/examples/corelib/threads/mandelbrot/CMakeLists.txt
@@ -1,25 +1,27 @@
# Generated from mandelbrot.pro.
-#####################################################################
-## mandelbrot Binary:
-#####################################################################
+cmake_minimum_required(VERSION 3.14)
+project(mandelbrot LANGUAGES CXX)
-add_qt_executable(mandelbrot
- GUI
- OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/corelib/threads/mandelbrot"
- INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/corelib/threads/mandelbrot"
- SOURCES
- main.cpp
- mandelbrotwidget.cpp mandelbrotwidget.h
- renderthread.cpp renderthread.h
- LIBRARIES
- Qt::Widgets
-)
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+set(INSTALL_EXAMPLEDIR "examples")
-## Scopes:
-#####################################################################
+find_package(Qt5 COMPONENTS Widgets)
-extend_target(mandelbrot CONDITION UNIX AND NOT APPLE_OSX AND NOT HAIKU AND NOT INTEGRITY AND NOT VXWORKS
- LIBRARIES
- m
+add_executable(mandelbrot WIN32 MACOSX_BUNDLE
+ main.cpp
+ mandelbrotwidget.cpp mandelbrotwidget.h
+ renderthread.cpp renderthread.h
+)
+target_link_libraries(mandelbrot PUBLIC
+ Qt::Widgets
+)
+install(TARGETS mandelbrot
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
)
diff --git a/examples/corelib/threads/queuedcustomtype/CMakeLists.txt b/examples/corelib/threads/queuedcustomtype/CMakeLists.txt
index b86092bf26..9fc8234e4d 100644
--- a/examples/corelib/threads/queuedcustomtype/CMakeLists.txt
+++ b/examples/corelib/threads/queuedcustomtype/CMakeLists.txt
@@ -1,18 +1,28 @@
# Generated from queuedcustomtype.pro.
-#####################################################################
-## queuedcustomtype Binary:
-#####################################################################
+cmake_minimum_required(VERSION 3.14)
+project(queuedcustomtype LANGUAGES CXX)
-add_qt_executable(queuedcustomtype
- GUI
- OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/corelib/threads/queuedcustomtype"
- INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/corelib/threads/queuedcustomtype"
- SOURCES
- block.cpp block.h
- main.cpp
- renderthread.cpp renderthread.h
- window.cpp window.h
- LIBRARIES
- Qt::Widgets
+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 Widgets)
+
+add_executable(queuedcustomtype WIN32 MACOSX_BUNDLE
+ block.cpp block.h
+ main.cpp
+ renderthread.cpp renderthread.h
+ window.cpp window.h
+)
+target_link_libraries(queuedcustomtype PUBLIC
+ Qt::Widgets
+)
+install(TARGETS queuedcustomtype
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
)
diff --git a/examples/corelib/threads/semaphores/CMakeLists.txt b/examples/corelib/threads/semaphores/CMakeLists.txt
index d94f1ba5b4..51638e0ff8 100644
--- a/examples/corelib/threads/semaphores/CMakeLists.txt
+++ b/examples/corelib/threads/semaphores/CMakeLists.txt
@@ -1,15 +1,25 @@
# Generated from semaphores.pro.
-#####################################################################
-## semaphores Binary:
-#####################################################################
-
-add_qt_executable(semaphores
- OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/corelib/threads/semaphores"
- INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/corelib/threads/semaphores"
- SOURCES
- semaphores.cpp
-)
+cmake_minimum_required(VERSION 3.14)
+project(semaphores LANGUAGES CXX)
+
+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:.:semaphores.pro:<NONE>:
-# CONFIG = "-app_bundle" "console"
+find_package(Qt5 COMPONENTS Core)
+
+add_executable(semaphores
+ semaphores.cpp
+)
+target_link_libraries(semaphores PUBLIC
+ Qt::Core
+)
+install(TARGETS semaphores
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/corelib/threads/waitconditions/CMakeLists.txt b/examples/corelib/threads/waitconditions/CMakeLists.txt
index 0a347c1cdd..4d3e61050c 100644
--- a/examples/corelib/threads/waitconditions/CMakeLists.txt
+++ b/examples/corelib/threads/waitconditions/CMakeLists.txt
@@ -1,15 +1,25 @@
# Generated from waitconditions.pro.
-#####################################################################
-## waitconditions Binary:
-#####################################################################
-
-add_qt_executable(waitconditions
- OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/corelib/threads/waitconditions"
- INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/corelib/threads/waitconditions"
- SOURCES
- waitconditions.cpp
-)
+cmake_minimum_required(VERSION 3.14)
+project(waitconditions LANGUAGES CXX)
+
+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:.:waitconditions.pro:<NONE>:
-# CONFIG = "-moc" "-app_bundle" "console"
+find_package(Qt5 COMPONENTS Core)
+
+add_executable(waitconditions
+ waitconditions.cpp
+)
+target_link_libraries(waitconditions PUBLIC
+ Qt::Core
+)
+install(TARGETS waitconditions
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+)