summaryrefslogtreecommitdiffstats
path: root/examples/webenginewidgets/simplebrowser/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'examples/webenginewidgets/simplebrowser/CMakeLists.txt')
-rw-r--r--examples/webenginewidgets/simplebrowser/CMakeLists.txt109
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}"
+)