214c3a033a
Introduce the qt-cmake-create script. The script generates the simple CMakeLists.txt based on the source files located in the current or specified directory. The initial version can generate a CMake code for the following file types: - .c .cc .cpp .cxx .h .hh .hxx .hpp - generates the qt_add_executable call with prerequisites. - .qml .js .mjs - generates the qt_add_qml_module call with prerequisites. - .ui - adds the found ui files to the existing executable. Requires C++ files be present in the directory too. - .qrc - generates the qt_add_resources call and adds the resources to the existing executable. Requires C++ files be present in the directory too. - .proto - generates qt_add_protobuf call with prerequisites. The QtInitProject.cmake script contains the 'handle_type' function that allows extending the script capabilities and establish simple relation chains between the file types. Note: The initial implementation doesn't deal with sub-directories, so all files from sub-directories will be added to and handled in the top-level CMakeLists.txt file. This can be extended by user request. Task-number: QTBUG-104388 Change-Id: I5abd9e07da109e867ff95986572ed2bf02ef9d3d Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
34 lines
994 B
CMake
34 lines
994 B
CMake
# Copyright (C) 2022 The Qt Company Ltd.
|
|
# SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
# Generated from tools.pro.
|
|
|
|
# QTBUG-88538 # special case
|
|
if(NOT ANDROID AND NOT IOS)
|
|
add_subdirectory(qmakelib)
|
|
if(QT_FEATURE_qmake)
|
|
add_subdirectory(qmake)
|
|
endif()
|
|
add_subdirectory(moc)
|
|
add_subdirectory(rcc)
|
|
add_subdirectory(qt_cmake_create)
|
|
endif()
|
|
# QTBUG-88538 # special case
|
|
if(TARGET Qt::Widgets AND NOT ANDROID AND NOT IOS)
|
|
add_subdirectory(uic)
|
|
endif()
|
|
if(TARGET Qt::DBus)
|
|
add_subdirectory(qdbuscpp2xml)
|
|
add_subdirectory(qdbusxml2cpp)
|
|
endif()
|
|
if(TARGET Qt::Gui AND QT_FEATURE_process AND NOT CMAKE_CROSSCOMPILING)
|
|
# testapp (windeployqt) and source_basicapp (macdeployqt) require QtGui.
|
|
if(QT_FEATURE_macdeployqt)
|
|
add_subdirectory(macdeployqt)
|
|
endif()
|
|
if(QT_FEATURE_windeployqt AND BUILD_SHARED_LIBS)
|
|
# windeployqt does not work with static Qt builds. See QTBUG-69427.
|
|
add_subdirectory(windeployqt)
|
|
endif()
|
|
endif()
|