Skip to content

Commit

Permalink
[kf5crash] fix cmake.in to allow consumption by static builds (#19179)
Browse files Browse the repository at this point in the history
* [kf5crash] fix cmake.in to allow consumption by static builds

* [kf5crash] update versions

* [kf5crash] kcrash is supported on Win and macOS, too

* [kf5crash] update versions

* [kf5crash] replace deprecated functions

* [kf5crash] update versions

* [kf5crash] don't overzealously delete folders

* [kf5crash] update versions

* [kf5crash] proactively disable docs

* [kf5crash] use semVer

* [kf5crash] update versions

* [kf5crash] remove extraneous options

* [kf5crash] update versions

* [kf5crash] wrap paths in quotes

* [kf5crash] update versions

* [kf5crash] remove bin folders in static build

* [kf5crash] update versions

* [kf5crash] rename patch file

* [kf5crash] update versions

* [kf5crash] add PACKAGE_NAME to vcpkg_cmake_config_fixup

* [kf5crash] update versions
  • Loading branch information
wrobelda authored Sep 3, 2021
1 parent 7ad9757 commit 9602648
Show file tree
Hide file tree
Showing 5 changed files with 61 additions and 14 deletions.
25 changes: 14 additions & 11 deletions ports/kf5crash/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,28 @@ vcpkg_from_github(
REF v5.84.0
SHA512 db37a481e0d34e0024cabd77c22680171fa383ea300c56c73f807380fd818263d27f36fb012fc6604b462dbf9374db39bab94c4dc2c3bff488ac9812d01eb2dd
HEAD_REF master
PATCHES
support_static_builds.patch # https://invent.kde.org/frameworks/kcrash/-/merge_requests/23
)

vcpkg_configure_cmake(
vcpkg_cmake_configure(
SOURCE_PATH ${SOURCE_PATH}
DISABLE_PARALLEL_CONFIGURE
PREFER_NINJA
OPTIONS
-DBUILD_TESTING=OFF
)

vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/KF5Crash)
vcpkg_cmake_install()
vcpkg_cmake_config_fixup(PACKAGE_NAME KF5Crash CONFIG_PATH lib/cmake/KF5Crash)
vcpkg_copy_pdbs()

file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/data)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/data)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/etc)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/etc)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin/data")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/etc")

file(INSTALL ${SOURCE_PATH}/LICENSES/ DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright)
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
endif()

file(INSTALL "${SOURCE_PATH}/LICENSES/" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright")
31 changes: 31 additions & 0 deletions ports/kf5crash/support_static_builds.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
From dc45a01fec854b5e2a49196e82e1a336ab642764 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dawid=20Wro=CC=81bel?= <me@dawidwrobel.com>
Date: Wed, 28 Jul 2021 03:04:39 +0200
Subject: [PATCH] Support static builds

---
KF5CrashConfig.cmake.in | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/KF5CrashConfig.cmake.in b/KF5CrashConfig.cmake.in
index 0222495..494c810 100644
--- a/KF5CrashConfig.cmake.in
+++ b/KF5CrashConfig.cmake.in
@@ -5,6 +5,14 @@
include(CMakeFindDependencyMacro)
find_dependency(Qt5Core @REQUIRED_QT_VERSION@)

+if (NOT @BUILD_SHARED_LIBS@)
+ find_dependency(KF5CoreAddons REQUIRED)
+ find_dependency(KF5WindowSystem REQUIRED)
+
+ if (@X11_FOUND@)
+ find_dependency(Qt5X11Extras REQUIRED)
+ endif()
+endif()

include("${CMAKE_CURRENT_LIST_DIR}/KF5CrashTargets.cmake")
@PACKAGE_INCLUDE_QCHTARGETS@
--
GitLab

12 changes: 10 additions & 2 deletions ports/kf5crash/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,24 @@
{
"name": "kf5crash",
"version": "5.84.0",
"version-semver": "5.84.0",
"port-version": 1,
"description": "KCrash provides support for intercepting and handling application crashes.",
"homepage": "https://api.kde.org/frameworks/kcrash/html/index.html",
"supports": "linux",
"dependencies": [
"ecm",
"kf5coreaddons",
"kf5windowsystem",
{
"name": "qt5-x11extras",
"platform": "linux"
},
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
]
}
2 changes: 1 addition & 1 deletion versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -2918,7 +2918,7 @@
},
"kf5crash": {
"baseline": "5.84.0",
"port-version": 0
"port-version": 1
},
"kf5dbusaddons": {
"baseline": "5.84.0",
Expand Down
5 changes: 5 additions & 0 deletions versions/k-/kf5crash.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "9b4122c60d561d232fbd5294a304be12509b736d",
"version-semver": "5.84.0",
"port-version": 1
},
{
"git-tree": "e316c8fc3bd2c92825a198615d99b61ede2986cb",
"version": "5.84.0",
Expand Down

0 comments on commit 9602648

Please sign in to comment.