aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/qttools
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/qttools')
-rw-r--r--vcpkg/ports/qttools/devendor-litehtml.patch25
-rw-r--r--vcpkg/ports/qttools/portfile.cmake123
-rw-r--r--vcpkg/ports/qttools/vcpkg.json120
-rw-r--r--vcpkg/ports/qttools/windeployqt.debug.bat10
4 files changed, 278 insertions, 0 deletions
diff --git a/vcpkg/ports/qttools/devendor-litehtml.patch b/vcpkg/ports/qttools/devendor-litehtml.patch
new file mode 100644
index 0000000..b6b105d
--- /dev/null
+++ b/vcpkg/ports/qttools/devendor-litehtml.patch
@@ -0,0 +1,25 @@
+diff --git a/src/assistant/CMakeLists.txt b/src/assistant/CMakeLists.txt
+index 5d2bf2b67c..abd9b513d3 100644
+--- a/src/assistant/CMakeLists.txt
++++ b/src/assistant/CMakeLists.txt
+@@ -34,7 +34,7 @@ if(TARGET qlitehtml)
+ # but found in the system, because they are imported only to the subdirectory scope
+ # where find_package was called. But that's fine, we wouldn't be able to set compiler flags
+ # on them anyway.
+- if(TARGET litehtml)
++ if(0)
+ qt_internal_set_exceptions_flags(litehtml OFF)
+ qt_disable_warnings(litehtml)
+ endif()
+diff --git a/src/assistant/qlitehtml/src/container_qpainter_p.h b/src/assistant/qlitehtml/src/container_qpainter_p.h
+index 23c55b4..4ae1cc1 100644
+--- a/src/assistant/qlitehtml/src/container_qpainter_p.h
++++ b/src/assistant/qlitehtml/src/container_qpainter_p.h
+@@ -14,7 +14,6 @@
+ #include <QString>
+ #include <QVector>
+
+-#include <litehtml/types.h>
+ #include <unordered_map>
+
+ class Selection
diff --git a/vcpkg/ports/qttools/portfile.cmake b/vcpkg/ports/qttools/portfile.cmake
new file mode 100644
index 0000000..96abd43
--- /dev/null
+++ b/vcpkg/ports/qttools/portfile.cmake
@@ -0,0 +1,123 @@
+set(SCRIPT_PATH "${CURRENT_INSTALLED_DIR}/share/qtbase")
+include("${SCRIPT_PATH}/qt_install_submodule.cmake")
+
+set(${PORT}_PATCHES
+ devendor-litehtml.patch
+ )
+
+#TODO check features and setup: (means force features!)
+
+# -- The following OPTIONAL packages have not been found:
+
+ # * Qt6AxContainer
+ # * Clang
+ # * WrapLibClang (required version >= 8)
+
+# Configure summary:
+
+# Qt Tools:
+ # Qt Assistant ........................... yes
+ # QDoc ................................... no
+ # Clang-based lupdate parser ............. no
+ # Qt Designer ............................ yes
+ # Qt Distance Field Generator ............ yes
+ # kmap2qmap .............................. yes
+ # Qt Linguist ............................ yes
+ # Mac Deployment Tool .................... no
+ # pixeltool .............................. yes
+ # qdbus .................................. yes
+ # qev .................................... yes
+ # Qt Attributions Scanner ................ yes
+ # qtdiag ................................. yes
+ # qtpaths ................................ yes
+ # qtplugininfo ........................... yes
+ # Windows deployment tool ................ yes
+
+# General features:
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ "assistant" FEATURE_assistant
+ "designer" FEATURE_designer
+ "linguist" FEATURE_linguist
+ "qdbus" FEATURE_qdbus
+ "qdoc" CMAKE_REQUIRE_FIND_PACKAGE_Clang
+ #"qdoc" CMAKE_REQUIRE_FIND_PACKAGE_WrapLibClang
+ "qml" CMAKE_REQUIRE_FIND_PACKAGE_Qt6Qml
+ "qml" CMAKE_REQUIRE_FIND_PACKAGE_Qt6Quick
+ "qml" CMAKE_REQUIRE_FIND_PACKAGE_Qt6QuickWidgets
+ "qml" FEATURE_distancefieldgenerator
+ INVERTED_FEATURES
+ "qdoc" CMAKE_DISABLE_FIND_PACKAGE_Clang
+ "qdoc" CMAKE_DISABLE_FIND_PACKAGE_WrapLibClang
+ "qml" CMAKE_DISABLE_FIND_PACKAGE_Qt6Qml
+ "qml" CMAKE_DISABLE_FIND_PACKAGE_Qt6Quick
+ "qml" CMAKE_DISABLE_FIND_PACKAGE_Qt6QuickWidgets
+ )
+
+ set(TOOL_NAMES
+ assistant
+ designer
+ lconvert
+ linguist
+ lprodump
+ lrelease-pro
+ lrelease
+ lupdate-pro
+ lupdate
+ pixeltool
+ qcollectiongenerator
+ qdistancefieldgenerator
+ qhelpgenerator
+ qtattributionsscanner
+ qtdiag
+ qtdiag6
+ qtpaths
+ qtplugininfo
+ qdbus
+ qdbusviewer
+ qdoc
+ )
+if(VCPKG_TARGET_IS_WINDOWS)
+ list(APPEND TOOL_NAMES windeployqt)
+elseif(VCPKG_TARGET_IS_OSX)
+ list(APPEND TOOL_NAMES macdeployqt)
+endif()
+
+set(unused "")
+if(NOT "assistant" IN_LIST FEATURES)
+ list(APPEND unused QLITEHTML_USE_SYSTEM_LITEHTML CMAKE_REQUIRE_FIND_PACKAGE_litehtml)
+endif()
+
+qt_install_submodule(PATCHES ${${PORT}_PATCHES}
+ TOOL_NAMES ${TOOL_NAMES}
+ CONFIGURE_OPTIONS
+ ${FEATURE_OPTIONS}
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6AxContainer=ON
+ -DQLITEHTML_USE_SYSTEM_LITEHTML:BOOL=ON
+ -DCMAKE_REQUIRE_FIND_PACKAGE_litehtml:BOOL=ON
+ CONFIGURE_OPTIONS_MAYBE_UNUSED
+ ${unused}
+ )
+
+if(VCPKG_TARGET_IS_OSX)
+ set(OSX_APP_FOLDERS Designer.app Linguist.app pixeltool.app)
+ if (FEATURE_qdbus)
+ message(STATUS "Built qdbusviewer")
+ list(APPEND OSX_APP_FOLDERS qdbusviewer.app)
+ endif()
+ foreach(_appfolder IN LISTS OSX_APP_FOLDERS)
+ # Folders are only existing in case of native builds
+ if(EXISTS "${CURRENT_PACKAGES_DIR}/bin/${_appfolder}")
+ message(STATUS "Moving: ${_appfolder}")
+ file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin/${_appfolder}")
+ file(RENAME "${CURRENT_PACKAGES_DIR}/bin/${_appfolder}/" "${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin/${_appfolder}/")
+ endif()
+ endforeach()
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
+endif()
+
+file(GLOB_RECURSE debug_dir "${CURRENT_PACKAGES_DIR}/debug/*")
+list(LENGTH debug_dir debug_dir_elements)
+if(debug_dir_elements EQUAL 0)
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug")
+endif()
diff --git a/vcpkg/ports/qttools/vcpkg.json b/vcpkg/ports/qttools/vcpkg.json
new file mode 100644
index 0000000..5554d24
--- /dev/null
+++ b/vcpkg/ports/qttools/vcpkg.json
@@ -0,0 +1,120 @@
+{
+ "name": "qttools",
+ "version": "6.9.1",
+ "description": "A collection of tools and utilities that come with the Qt framework to assist developers in the creation, management, and deployment of Qt applications.",
+ "homepage": "https://www.qt.io/",
+ "license": null,
+ "dependencies": [
+ {
+ "name": "qtbase",
+ "default-features": false
+ },
+ {
+ "name": "qttools",
+ "host": true,
+ "default-features": false,
+ "features": [
+ "linguist"
+ ]
+ }
+ ],
+ "features": {
+ "assistant": {
+ "description": "Build Qt Assistant",
+ "dependencies": [
+ {
+ "name": "litehtml",
+ "default-features": false
+ },
+ {
+ "name": "qtbase",
+ "default-features": false,
+ "features": [
+ "network",
+ "png",
+ "sql-sqlite",
+ "widgets"
+ ]
+ },
+ {
+ "name": "qttools",
+ "host": true,
+ "default-features": false,
+ "features": [
+ "assistant"
+ ]
+ }
+ ]
+ },
+ "designer": {
+ "description": "Build Qt Designer",
+ "dependencies": [
+ {
+ "name": "qtbase",
+ "default-features": false,
+ "features": [
+ "network",
+ "png",
+ "widgets"
+ ]
+ }
+ ]
+ },
+ "linguist": {
+ "description": "Build Qt Linguist components",
+ "dependencies": [
+ {
+ "name": "qttools",
+ "default-features": false,
+ "features": [
+ "designer"
+ ]
+ }
+ ]
+ },
+ "qdbus": {
+ "description": "Build QDBusViewer",
+ "dependencies": [
+ {
+ "name": "qtbase",
+ "default-features": false,
+ "features": [
+ "dbus",
+ "widgets"
+ ]
+ }
+ ]
+ },
+ "qdoc": {
+ "description": "Build QDoc",
+ "supports": "!android",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "clang",
+ "enable-rtti"
+ ]
+ }
+ ]
+ },
+ "qml": {
+ "description": "Build QML imports",
+ "dependencies": [
+ {
+ "name": "qtbase",
+ "default-features": false,
+ "features": [
+ "gui",
+ "widgets"
+ ]
+ },
+ {
+ "name": "qtdeclarative",
+ "default-features": false
+ }
+ ]
+ }
+ }
+}
diff --git a/vcpkg/ports/qttools/windeployqt.debug.bat b/vcpkg/ports/qttools/windeployqt.debug.bat
new file mode 100644
index 0000000..d205fe3
--- /dev/null
+++ b/vcpkg/ports/qttools/windeployqt.debug.bat
@@ -0,0 +1,10 @@
+@echo off
+setlocal enabledelayedexpansion
+set mypath=%~dp0
+set mypath=%mypath:~0,-1%
+set BAKCD=!CD!
+cd /D "%mypath%\..\..\..\debug\bin"
+set PATH=!CD!;%PATH%
+"%mypath%\windeployqt.exe" --qmake "%mypath%\qmake.debug.bat" %*
+cd /D "%BAKCD%"
+endlocal