diff --git a/ports/kf5parts/portfile.cmake b/ports/kf5parts/portfile.cmake index 1f09bc00a2..57122d2a0f 100644 --- a/ports/kf5parts/portfile.cmake +++ b/ports/kf5parts/portfile.cmake @@ -9,11 +9,21 @@ vcpkg_from_github( # Prevent KDEClangFormat from writing to source effectively blocking parallel configure file(WRITE "${SOURCE_PATH}/.clang-format" "DisableFormat: true\nSortIncludes: false\n") +# See ECM/kde-modules/KDEInstallDirs5.cmake +# Relocate .desktop files for next ports +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + list(APPEND KDE_OPTIONS + -DKDE_INSTALL_KSERVICES5DIR="share/kservices5" + -DKDE_INSTALL_KSERVICETYPES5DIR="share/kservicetypes5" + ) +endif() + vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DBUILD_TESTING=OFF ${FEATURE_OPTIONS} + ${KDE_OPTIONS} ) vcpkg_cmake_install() diff --git a/ports/kf5parts/vcpkg.json b/ports/kf5parts/vcpkg.json index 2b0bea7de9..101c88816e 100644 --- a/ports/kf5parts/vcpkg.json +++ b/ports/kf5parts/vcpkg.json @@ -1,6 +1,7 @@ { "name": "kf5parts", "version": "5.98.0", + "port-version": 1, "description": "Plugin framework for user interface component", "homepage": "https://api.kde.org/frameworks/kparts/html/index.html", "license": "LGPL-2.0-or-later", diff --git a/ports/kf5service/portfile.cmake b/ports/kf5service/portfile.cmake index 316d08c842..14e576dcab 100644 --- a/ports/kf5service/portfile.cmake +++ b/ports/kf5service/portfile.cmake @@ -34,11 +34,21 @@ vcpkg_add_to_path(PREPEND "${BISON_DIR}") # Prevent KDEClangFormat from writing to source effectively blocking parallel configure file(WRITE "${SOURCE_PATH}/.clang-format" "DisableFormat: true\nSortIncludes: false\n") +# See ECM/kde-modules/KDEInstallDirs5.cmake +# Relocate .desktop files for next ports +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + list(APPEND KDE_OPTIONS + -DKDE_INSTALL_KSERVICES5DIR="share/kservices5" + -DKDE_INSTALL_KSERVICETYPES5DIR="share/kservicetypes5" + ) +endif() + vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DBUILD_TESTING=OFF -DCMAKE_DISABLE_FIND_PACKAGE_KF5DocTools=ON + ${KDE_OPTIONS} ) vcpkg_cmake_install() diff --git a/ports/kf5service/vcpkg.json b/ports/kf5service/vcpkg.json index d2855ffc1a..b1e9f5308a 100644 --- a/ports/kf5service/vcpkg.json +++ b/ports/kf5service/vcpkg.json @@ -1,6 +1,7 @@ { "name": "kf5service", "version": "5.98.0", + "port-version": 1, "description": "Plugin framework for desktop services", "homepage": "https://api.kde.org/frameworks/kservice/html/index.html", "dependencies": [ diff --git a/ports/kf5texteditor/portfile.cmake b/ports/kf5texteditor/portfile.cmake new file mode 100644 index 0000000000..5d2b1e2277 --- /dev/null +++ b/ports/kf5texteditor/portfile.cmake @@ -0,0 +1,54 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO KDE/ktexteditor + REF v5.98.0 + SHA512 06aad3993cd2133b99ef9e8b510c8b89a844ce778a71351797122c6b05e31e6277d238a8563653a42aafe773457ec89842bbd6184277d471069969c177304696 + HEAD_REF master +) + +# Prevent KDEClangFormat from writing to source effectively blocking parallel configure +file(WRITE "${SOURCE_PATH}/.clang-format" "DisableFormat: true\nSortIncludes: false\n") + +# A trick for `kcoreaddons_desktop_to_json` (see KF5CoreAddonsMacros.cmake) to generate katepart.desktop +# The copied *.desktop files should be removed after vcpkg_cmake_install +if(VCPKG_TARGET_IS_WINDOWS) + if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + set(DATAROOT "bin/data") # maybe ADD_BIN_TO_PATH can work in this case... + elseif(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + set(DATAROOT "share") + endif() + file(COPY "${CURRENT_INSTALLED_DIR}/${DATAROOT}/kservicetypes5" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin/data") + file(GLOB TEMP_DESKTOP_FILES_DBG "${CURRENT_PACKAGES_DIR}/debug/${DATAROOT}/kservicetypes5/*") + file(COPY "${CURRENT_INSTALLED_DIR}/${DATAROOT}/kservicetypes5" DESTINATION "${CURRENT_PACKAGES_DIR}/bin/data") + file(GLOB TEMP_DESKTOP_FILES_REL "${CURRENT_PACKAGES_DIR}/${DATAROOT}/kservicetypes5/*") +else() + file(COPY "${CURRENT_INSTALLED_DIR}/share/kservicetypes5" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/share") + file(GLOB TEMP_DESKTOP_FILES_DBG "${CURRENT_PACKAGES_DIR}/debug/share/kservicetypes5/*") + file(COPY "${CURRENT_INSTALLED_DIR}/share/kservicetypes5" DESTINATION "${CURRENT_PACKAGES_DIR}/share") + file(GLOB TEMP_DESKTOP_FILES_REL "${CURRENT_PACKAGES_DIR}/share/kservicetypes5/*") +endif() + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + -DBUILD_TESTING=OFF + -DENABLE_KAUTH_DEFAULT=OFF + -DKDE_INSTALL_PLUGINDIR=plugins + -DVCPKG_HOST_TRIPLET=${VCPKG_HOST_TRIPLET} +) +vcpkg_cmake_install() +vcpkg_cmake_config_fixup(PACKAGE_NAME KF5TextEditor CONFIG_PATH lib/cmake/KF5TextEditor) +vcpkg_copy_pdbs() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") +endif() + +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/debug/share" + ${TEMP_DESKTOP_FILES_DBG} ${TEMP_DESKTOP_FILES_REL} +) + +file(GLOB LICENSE_FILES "${SOURCE_PATH}/LICENSES/*") +vcpkg_install_copyright(FILE_LIST ${LICENSE_FILES}) diff --git a/ports/kf5texteditor/vcpkg.json b/ports/kf5texteditor/vcpkg.json new file mode 100644 index 0000000000..b8200b1cc3 --- /dev/null +++ b/ports/kf5texteditor/vcpkg.json @@ -0,0 +1,33 @@ +{ + "name": "kf5texteditor", + "version": "5.98.0", + "description": "Full text editor component", + "homepage": "https://api.kde.org/frameworks/ktexteditor/html/", + "dependencies": [ + "ecm", + { + "name": "gettext", + "host": true, + "features": [ + "tools" + ] + }, + "gettext-libintl", + "kf5archive", + "kf5config", + "kf5guiaddons", + "kf5i18n", + "kf5kio", + "kf5parts", + "kf5sonnet", + "kf5syntaxhighlighting", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} diff --git a/versions/baseline.json b/versions/baseline.json index 1cdb2bf9aa..aacdd48061 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -3810,7 +3810,7 @@ }, "kf5parts": { "baseline": "5.98.0", - "port-version": 0 + "port-version": 1 }, "kf5plotting": { "baseline": "5.98.0", @@ -3818,7 +3818,7 @@ }, "kf5service": { "baseline": "5.98.0", - "port-version": 0 + "port-version": 1 }, "kf5solid": { "baseline": "5.98.0", @@ -3832,6 +3832,10 @@ "baseline": "5.98.0", "port-version": 0 }, + "kf5texteditor": { + "baseline": "5.98.0", + "port-version": 0 + }, "kf5textwidgets": { "baseline": "5.98.0", "port-version": 0 diff --git a/versions/k-/kf5parts.json b/versions/k-/kf5parts.json index f03d4688a9..56b0526e4f 100644 --- a/versions/k-/kf5parts.json +++ b/versions/k-/kf5parts.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "60bbc73ecd2ebcc910f7ea6c1553f79e33ccfb4f", + "version": "5.98.0", + "port-version": 1 + }, { "git-tree": "6d66ab25d03620f9df39a90fd00d00b0d6271620", "version": "5.98.0", diff --git a/versions/k-/kf5service.json b/versions/k-/kf5service.json index cad8462d13..89fc5b19d1 100644 --- a/versions/k-/kf5service.json +++ b/versions/k-/kf5service.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "1f72425338783888d31486fed4fddd847e915f38", + "version": "5.98.0", + "port-version": 1 + }, { "git-tree": "70f03de0d90a7592d61c95a44b83894dfedb1dc2", "version": "5.98.0", diff --git a/versions/k-/kf5texteditor.json b/versions/k-/kf5texteditor.json new file mode 100644 index 0000000000..6f7c4f11d0 --- /dev/null +++ b/versions/k-/kf5texteditor.json @@ -0,0 +1,9 @@ +{ + "versions": [ + { + "git-tree": "65e3187a9352f45ef33cc466b1c809eff7bc2bc4", + "version": "5.98.0", + "port-version": 0 + } + ] +}