summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKai Köhne <[email protected]>2025-07-08 12:55:04 +0200
committerKai Köhne <[email protected]>2025-07-08 16:28:20 +0200
commited39f939d147438a67e94559924f4c12eb59806d (patch)
tree619457c5675e1421b7977ebf39f059e06f4b5822
parent86923208ecc98fff7ddce811c96d229e5344bbb2 (diff)
lightingviewer: Improve build systemHEADdev
Call the executable "lightingviewer", except on macOS, where it is "Lightning Viewer". Call the top-level project LightingViewer. Remove the project setup in the included CMakeLists.txt files; they are not separate projects on their own in a meaningful way. Pick-to: 6.10 Change-Id: I05db4a318f2667a8ed41c943594310a49000cc11 Reviewed-by: Alexey Edelev <[email protected]> Reviewed-by: Tor Arne Vestbø <[email protected]>
-rw-r--r--examples/demos/lightningviewer/CMakeLists.txt32
-rw-r--r--examples/demos/lightningviewer/LightningViewer/CMakeLists.txt11
-rw-r--r--examples/demos/lightningviewer/LightningViewerStyle/CMakeLists.txt11
3 files changed, 22 insertions, 32 deletions
diff --git a/examples/demos/lightningviewer/CMakeLists.txt b/examples/demos/lightningviewer/CMakeLists.txt
index eddbe93c3..f1892ad5b 100644
--- a/examples/demos/lightningviewer/CMakeLists.txt
+++ b/examples/demos/lightningviewer/CMakeLists.txt
@@ -2,7 +2,7 @@
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
cmake_minimum_required(VERSION 3.16)
-project(LightningViewerExample VERSION 1.0 LANGUAGES CXX)
+project(LightningViewer VERSION 1.0 LANGUAGES CXX)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
@@ -13,36 +13,36 @@ qt_standard_project_setup(REQUIRES 6.6)
add_subdirectory(LightningViewer)
add_subdirectory(LightningViewerStyle)
-qt_add_executable(${PROJECT_NAME} WIN32
+qt_add_executable(lightningviewer WIN32
main.cpp
)
-target_link_libraries(${PROJECT_NAME} PRIVATE
+target_link_libraries(lightningviewer PRIVATE
Qt6::Quick
Qt6::QuickControls2
LightningViewer
LightningViewerStyle
)
-# Qt for iOS sets MACOSX_BUNDLE_GUI_IDENTIFIER automatically since Qt 6.1.
-# If you are developing for iOS or macOS you should consider setting an
-# explicit, fixed bundle identifier manually though.
-set_target_properties(${PROJECT_NAME} PROPERTIES
- MACOSX_BUNDLE TRUE
- MACOSX_BUNDLE_GUI_IDENTIFIER "io.qt.examples.LightningViewer"
- MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}
- MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/Info.plist"
- MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}
-)
+if(APPLE)
+ set_target_properties(lightningviewer PROPERTIES
+ OUTPUT_NAME "Lightning Viewer"
+ MACOSX_BUNDLE TRUE
+ MACOSX_BUNDLE_GUI_IDENTIFIER "io.qt.examples.LightningViewer"
+ MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}
+ MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/Info.plist"
+ MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}
+ )
+endif()
-install(TARGETS ${PROJECT_NAME}
+install(TARGETS lightningviewer
BUNDLE DESTINATION .
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
qt_generate_deploy_qml_app_script(
- TARGET ${PROJECT_NAME}
+ TARGET lightningviewer
OUTPUT_SCRIPT deploy_script
MACOS_BUNDLE_POST_BUILD
NO_UNSUPPORTED_PLATFORM_ERROR
@@ -59,5 +59,5 @@ if (ANDROID)
)
FetchContent_MakeAvailable(android_openssl)
include(${android_openssl_SOURCE_DIR}/android_openssl.cmake)
- add_android_openssl_libraries(LightningViewerExample)
+ add_android_openssl_libraries(lightningviewer)
endif()
diff --git a/examples/demos/lightningviewer/LightningViewer/CMakeLists.txt b/examples/demos/lightningviewer/LightningViewer/CMakeLists.txt
index b5a38aa3f..41520fc66 100644
--- a/examples/demos/lightningviewer/LightningViewer/CMakeLists.txt
+++ b/examples/demos/lightningviewer/LightningViewer/CMakeLists.txt
@@ -1,11 +1,6 @@
# Copyright (C) 2024 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
-cmake_minimum_required(VERSION 3.16)
-project(LightningViewer LANGUAGES CXX)
-
-set(CMAKE_AUTOMOC ON)
-
find_package(Qt6 REQUIRED COMPONENTS Positioning Quick WebSockets)
set_source_files_properties(LightningViewConfig.qml MapType.qml
@@ -13,7 +8,7 @@ set_source_files_properties(LightningViewConfig.qml MapType.qml
QT_QML_SINGLETON_TYPE TRUE
)
-qt_add_qml_module(${PROJECT_NAME}
+qt_add_qml_module(LightningViewer
URI LightningViewer
VERSION 1.0
SOURCES
@@ -45,13 +40,13 @@ qt_add_qml_module(${PROJECT_NAME}
icons/user-location.svg
)
-target_link_libraries(${PROJECT_NAME} PRIVATE
+target_link_libraries(LightningViewer PRIVATE
Qt6::Positioning
Qt6::Quick
Qt6::WebSockets
)
-install(TARGETS ${PROJECT_NAME}
+install(TARGETS LightningViewer
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}/LightningViewer"
LIBRARY DESTINATION "${CMAKE_INSTALL_BINDIR}/LightningViewer"
)
diff --git a/examples/demos/lightningviewer/LightningViewerStyle/CMakeLists.txt b/examples/demos/lightningviewer/LightningViewerStyle/CMakeLists.txt
index 92971c008..7be89ee5e 100644
--- a/examples/demos/lightningviewer/LightningViewerStyle/CMakeLists.txt
+++ b/examples/demos/lightningviewer/LightningViewerStyle/CMakeLists.txt
@@ -2,18 +2,13 @@
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
cmake_minimum_required(VERSION 3.16)
-project(LightningViewerStyle LANGUAGES CXX)
-
-set(CMAKE_AUTOMOC ON)
-
-find_package(Qt6 REQUIRED COMPONENTS Quick)
set_source_files_properties(Config.qml
PROPERTIES
QT_QML_SINGLETON_TYPE TRUE
)
-qt_add_qml_module(${PROJECT_NAME}
+qt_add_qml_module(LightningViewerStyle
URI LightningViewerStyle
QML_FILES
Button.qml
@@ -119,11 +114,11 @@ qt_add_qml_module(${PROJECT_NAME}
light/images/[email protected]
)
-target_link_libraries(${PROJECT_NAME} PRIVATE
+target_link_libraries(LightningViewerStyle PRIVATE
Qt6::Quick
)
-install(TARGETS ${PROJECT_NAME}
+install(TARGETS LightningViewerStyle
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}/LightningViewerStyle"
LIBRARY DESTINATION "${CMAKE_INSTALL_BINDIR}/LightningViewerStyle"
)