diff options
Diffstat (limited to 'examples/webenginewidgets/simplebrowser/CMakeLists.txt')
-rw-r--r-- | examples/webenginewidgets/simplebrowser/CMakeLists.txt | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/examples/webenginewidgets/simplebrowser/CMakeLists.txt b/examples/webenginewidgets/simplebrowser/CMakeLists.txt new file mode 100644 index 000000000..cbaffa6d9 --- /dev/null +++ b/examples/webenginewidgets/simplebrowser/CMakeLists.txt @@ -0,0 +1,109 @@ +# Copyright (C) 2022 The Qt Company Ltd. +# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +cmake_minimum_required(VERSION 3.16) +project(simplebrowser LANGUAGES CXX) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/simplebrowser") + +find_package(Qt6 REQUIRED COMPONENTS Core Gui WebEngineWidgets) + +qt_add_executable(simplebrowser + browser.cpp browser.h + browserwindow.cpp browserwindow.h + certificateerrordialog.ui + downloadmanagerwidget.cpp downloadmanagerwidget.h downloadmanagerwidget.ui + downloadwidget.cpp downloadwidget.h downloadwidget.ui + main.cpp + passworddialog.ui + tabwidget.cpp tabwidget.h + webpage.cpp webpage.h + webpopupwindow.cpp webpopupwindow.h + webview.cpp webview.h + webauthdialog.cpp webauthdialog.h webauthdialog.ui +) + +if(WIN32) + set_property( + TARGET simplebrowser + APPEND PROPERTY + SOURCES simplebrowser.exe.manifest) +endif() + +set_target_properties(simplebrowser PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE + MACOSX_BUNDLE_GUI_IDENTIFIER "io.qt.examples.webenginewidgets.simplebrowser" +) + +target_link_libraries(simplebrowser PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + +# Resources: +set(simplebrowser_resource_files + "data/AppLogoColor.png" + "data/ninja.png" +) + +qt_add_resources(simplebrowser "simplebrowser" + PREFIX + "/" + BASE + "data" + FILES + ${simplebrowser_resource_files} +) + +set(simplebrowser1_resource_files + "data/3rdparty/dialog-error.png" + "data/3rdparty/edit-clear.png" + "data/3rdparty/go-bottom.png" + "data/3rdparty/go-next.png" + "data/3rdparty/go-previous.png" + "data/3rdparty/process-stop.png" + "data/3rdparty/text-html.png" + "data/3rdparty/view-refresh.png" +) + +qt_add_resources(simplebrowser "simplebrowser1" + PREFIX + "/" + BASE + "data/3rdparty" + FILES + ${simplebrowser1_resource_files} +) + +if (APPLE) + set_target_properties(simplebrowser PROPERTIES + MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/Info.cmake.macos.plist" + ) + + if (NOT CMAKE_GENERATOR STREQUAL "Xcode") + # Need to sign application for location permissions to work + if(QT_FEATURE_debug_and_release) + set(exe_path "${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/") + else() + unset(exe_path) + endif() + add_custom_command(TARGET simplebrowser + POST_BUILD COMMAND codesign --force -s - ${exe_path}simplebrowser.app + ) + endif() +endif() + +install(TARGETS simplebrowser + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) |