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/touch | |
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/touch')
-rw-r--r-- | examples/widgets/touch/dials/CMakeLists.txt | 37 | ||||
-rw-r--r-- | examples/widgets/touch/fingerpaint/CMakeLists.txt | 47 | ||||
-rw-r--r-- | examples/widgets/touch/knobs/CMakeLists.txt | 35 | ||||
-rw-r--r-- | examples/widgets/touch/pinchzoom/CMakeLists.txt | 41 |
4 files changed, 98 insertions, 62 deletions
diff --git a/examples/widgets/touch/dials/CMakeLists.txt b/examples/widgets/touch/dials/CMakeLists.txt index 76920b0f3c..0589e555f3 100644 --- a/examples/widgets/touch/dials/CMakeLists.txt +++ b/examples/widgets/touch/dials/CMakeLists.txt @@ -1,18 +1,27 @@ # Generated from dials.pro. -##################################################################### -## dials Binary: -##################################################################### +cmake_minimum_required(VERSION 3.14) +project(dials LANGUAGES CXX) -add_qt_executable(dials - GUI - OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/touch/dials" - INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/touch/dials" - SOURCES - dials.ui - main.cpp - PUBLIC_LIBRARIES - Qt::Widgets - ENABLE_AUTOGEN_TOOLS - uic +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(dials WIN32 MACOSX_BUNDLE + dials.ui + main.cpp +) +target_link_libraries(dials PUBLIC + Qt::Widgets +) + +install(TARGETS dials + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" ) diff --git a/examples/widgets/touch/fingerpaint/CMakeLists.txt b/examples/widgets/touch/fingerpaint/CMakeLists.txt index 82ec8cd91e..a419a614be 100644 --- a/examples/widgets/touch/fingerpaint/CMakeLists.txt +++ b/examples/widgets/touch/fingerpaint/CMakeLists.txt @@ -1,25 +1,34 @@ # Generated from fingerpaint.pro. -##################################################################### -## fingerpaint Binary: -##################################################################### +cmake_minimum_required(VERSION 3.14) +project(fingerpaint LANGUAGES CXX) -add_qt_executable(fingerpaint - GUI - OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/touch/fingerpaint" - INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/touch/fingerpaint" - SOURCES - main.cpp - mainwindow.cpp mainwindow.h - scribblearea.cpp scribblearea.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) +find_package(Qt5 COMPONENTS PrintSupport) # special case + +add_executable(fingerpaint WIN32 MACOSX_BUNDLE + main.cpp + mainwindow.cpp mainwindow.h + scribblearea.cpp scribblearea.h +) +target_link_libraries(fingerpaint PUBLIC + Qt::Widgets +) +# special case begin +if (TARGET Qt::PrintSupport) + target_link_libraries(fingerpaint PUBLIC Qt::PrintSupport) +endif() +# special case end -extend_target(fingerpaint CONDITION TARGET Qt::PrintSupport - LIBRARIES - Qt::PrintSupport +install(TARGETS fingerpaint + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" ) diff --git a/examples/widgets/touch/knobs/CMakeLists.txt b/examples/widgets/touch/knobs/CMakeLists.txt index e8976db270..4a8f55820a 100644 --- a/examples/widgets/touch/knobs/CMakeLists.txt +++ b/examples/widgets/touch/knobs/CMakeLists.txt @@ -1,16 +1,27 @@ # Generated from knobs.pro. -##################################################################### -## knobs Binary: -##################################################################### +cmake_minimum_required(VERSION 3.14) +project(knobs LANGUAGES CXX) -add_qt_executable(knobs - GUI - OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/touch/knobs" - INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/touch/knobs" - SOURCES - knob.cpp knob.h - main.cpp - 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(knobs WIN32 MACOSX_BUNDLE + knob.cpp knob.h + main.cpp +) +target_link_libraries(knobs PUBLIC + Qt::Widgets +) + +install(TARGETS knobs + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" ) diff --git a/examples/widgets/touch/pinchzoom/CMakeLists.txt b/examples/widgets/touch/pinchzoom/CMakeLists.txt index 92d7b4c3b3..379dde1e9f 100644 --- a/examples/widgets/touch/pinchzoom/CMakeLists.txt +++ b/examples/widgets/touch/pinchzoom/CMakeLists.txt @@ -1,22 +1,29 @@ # Generated from pinchzoom.pro. -##################################################################### -## pinchzoom Binary: -##################################################################### +cmake_minimum_required(VERSION 3.14) +project(pinchzoom LANGUAGES CXX) -add_qt_executable(pinchzoom - GUI - OUTPUT_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/touch/pinchzoom" - INSTALL_DIRECTORY "${INSTALL_EXAMPLESDIR}/widgets/touch/pinchzoom" - SOURCES - graphicsview.cpp graphicsview.h - main.cpp - mouse.cpp mouse.h - LIBRARIES - Qt::Widgets -) +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) -# Resources: -add_qt_resource(pinchzoom "mice" PREFIX "/" FILES - images/cheese.jpg) +set(INSTALL_EXAMPLEDIR "examples") +find_package(Qt5 COMPONENTS Widgets) + +add_executable(pinchzoom WIN32 MACOSX_BUNDLE + graphicsview.cpp graphicsview.h + main.cpp + mice.qrc + mouse.cpp mouse.h +) +target_link_libraries(pinchzoom PUBLIC + Qt::Widgets +) + +install(TARGETS pinchzoom + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" +) |