diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/qt5compat | |
Diffstat (limited to 'vcpkg/ports/qt5compat')
| -rw-r--r-- | vcpkg/ports/qt5compat/portfile.cmake | 40 | ||||
| -rw-r--r-- | vcpkg/ports/qt5compat/vcpkg.json | 77 |
2 files changed, 117 insertions, 0 deletions
diff --git a/vcpkg/ports/qt5compat/portfile.cmake b/vcpkg/ports/qt5compat/portfile.cmake new file mode 100644 index 0000000..d13a078 --- /dev/null +++ b/vcpkg/ports/qt5compat/portfile.cmake @@ -0,0 +1,40 @@ +set(SCRIPT_PATH "${CURRENT_INSTALLED_DIR}/share/qtbase") +include("${SCRIPT_PATH}/qt_install_submodule.cmake") + +set(${PORT}_PATCHES) + +vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS +FEATURES + "textcodec" FEATURE_textcodec + "codecs" FEATURE_codecs + "big-codecs" FEATURE_big_codecs + "iconv" FEATURE_iconv + "iconv" CMAKE_DISABLE_FIND_PACKAGE_ICU + #"iconv" CMAKE_REQUIRE_FIND_PACKAGE_WrapIconv + "qml" CMAKE_REQUIRE_FIND_PACKAGE_Qt6Quick +INVERTED_FEATURES + "iconv" CMAKE_DISABLE_FIND_PACKAGE_WrapIconv + "qml" CMAKE_DISABLE_FIND_PACKAGE_Qt6Quick + ) + +#For iconv feature to work the following must be true: +#CONDITION NOT FEATURE_icu AND FEATURE_textcodec AND NOT WIN32 AND NOT QNX AND NOT ANDROID AND NOT APPLE AND WrapIconv_FOUND +if("iconv" IN_LIST FEATURES) + include("${SCRIPT_PATH}/port_status.cmake") + if(qtbase_with_icu) + message(FATAL_ERROR "qtbase was built with ICU. The iconv feature is not compatible with ICU.") + endif() +endif() + +set(TOOL_NAMES) +qt_install_submodule(PATCHES ${${PORT}_PATCHES} + TOOL_NAMES ${TOOL_NAMES} + CONFIGURE_OPTIONS + ${FEATURE_OPTIONS} + CONFIGURE_OPTIONS_RELEASE + CONFIGURE_OPTIONS_DEBUG + ) + +#For my documentation: +# find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core) +# find_package(Qt6 ${PROJECT_VERSION} QUIET CONFIG OPTIONAL_COMPONENTS Network Xml Gui Quick) diff --git a/vcpkg/ports/qt5compat/vcpkg.json b/vcpkg/ports/qt5compat/vcpkg.json new file mode 100644 index 0000000..ae4b706 --- /dev/null +++ b/vcpkg/ports/qt5compat/vcpkg.json @@ -0,0 +1,77 @@ +{ + "name": "qt5compat", + "version": "6.9.1", + "description": "The Qt 5 Core Compat module contains the Qt 5 Core APIs that were removed in Qt 6. The module facilitates the transition to Qt 6.", + "homepage": "https://www.qt.io/", + "license": null, + "dependencies": [ + { + "name": "qtbase", + "default-features": false + } + ], + "default-features": [ + "big-codecs", + "codecs", + "qml", + "textcodec" + ], + "features": { + "big-codecs": { + "description": "Supports big codecs, e.g. CJK.", + "dependencies": [ + { + "name": "qt5compat", + "default-features": false, + "features": [ + "textcodec" + ] + } + ] + }, + "codecs": { + "description": "Supports non-unicode text conversions.", + "dependencies": [ + { + "name": "qt5compat", + "default-features": false, + "features": [ + "textcodec" + ] + } + ] + }, + "iconv": { + "description": "Provides internationalization on Unix.", + "dependencies": [ + "libiconv", + { + "name": "qt5compat", + "default-features": false, + "features": [ + "textcodec" + ] + } + ] + }, + "qml": { + "description": "Build QML imports", + "dependencies": [ + { + "name": "qtbase", + "default-features": false, + "features": [ + "gui" + ] + }, + { + "name": "qtdeclarative", + "default-features": false + } + ] + }, + "textcodec": { + "description": "Supports conversions between text encodings." + } + } +} |