aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/kdstatemachineeditor
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/kdstatemachineeditor
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/kdstatemachineeditor')
-rw-r--r--vcpkg/ports/kdstatemachineeditor/portfile.cmake45
-rw-r--r--vcpkg/ports/kdstatemachineeditor/qt6.9.patch22
-rw-r--r--vcpkg/ports/kdstatemachineeditor/usage11
-rw-r--r--vcpkg/ports/kdstatemachineeditor/vcpkg.json31
4 files changed, 109 insertions, 0 deletions
diff --git a/vcpkg/ports/kdstatemachineeditor/portfile.cmake b/vcpkg/ports/kdstatemachineeditor/portfile.cmake
new file mode 100644
index 0000000..2df9a68
--- /dev/null
+++ b/vcpkg/ports/kdstatemachineeditor/portfile.cmake
@@ -0,0 +1,45 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO KDAB/KDStateMachineEditor
+ REF v${VERSION}
+ SHA512 dedd7166f434689cd5acf4ee3172169d3f77182269d3187f0a7a12966467dd5c7733e3ff64cd1fd03b0f3866c2aafa37cc3f2d7b8a3f4a5d8a7592da039de7af
+ HEAD_REF master
+ PATCHES
+ qt6.9.patch # This is already upstream
+)
+
+string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" VCPKG_BUILD_SHARED_LIBS)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ -DKDSME_QT6=ON
+ -DKDSME_INTERNAL_GRAPHVIZ=OFF
+ -DKDSME_DOCS=OFF
+ -DKDSME_EXAMPLES=OFF
+ -DBUILD_TESTING=OFF
+ -DBUILD_SHARED_LIBS=${VCPKG_BUILD_SHARED_LIBS}
+)
+
+vcpkg_cmake_install()
+vcpkg_copy_pdbs()
+vcpkg_cmake_config_fixup(PACKAGE_NAME KDSME-qt6 CONFIG_PATH lib/cmake/KDSME-qt6)
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/doc")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
+
+vcpkg_install_copyright(
+ FILE_LIST
+ "${SOURCE_PATH}/LICENSE.txt"
+ "${SOURCE_PATH}/LICENSES/BSD-3-Clause.txt"
+ "${SOURCE_PATH}/LICENSES/GPL-3.0-or-later.txt"
+ "${SOURCE_PATH}/LICENSES/LicenseRef-CISST.txt"
+ "${SOURCE_PATH}/LICENSES/LicenseRef-Qt-Commercial.txt"
+ "${SOURCE_PATH}/LICENSES/GPL-3.0-only.txt"
+ "${SOURCE_PATH}/LICENSES/LGPL-2.1-only.txt"
+ "${SOURCE_PATH}/LICENSES/LicenseRef-KDAB-KDStateMachineEditor.txt"
+ "${SOURCE_PATH}/LICENSES/MIT.txt"
+)
+
+file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
diff --git a/vcpkg/ports/kdstatemachineeditor/qt6.9.patch b/vcpkg/ports/kdstatemachineeditor/qt6.9.patch
new file mode 100644
index 0000000..95ef2f1
--- /dev/null
+++ b/vcpkg/ports/kdstatemachineeditor/qt6.9.patch
@@ -0,0 +1,22 @@
+diff --git a/src/view/quick/qopengl2pexvertexarray_p.h b/src/view/quick/qopengl2pexvertexarray_p.h
+index f80975ed..65058333 100644
+--- a/src/view/quick/qopengl2pexvertexarray_p.h
++++ b/src/view/quick/qopengl2pexvertexarray_p.h
+@@ -80,6 +80,8 @@ class QOpenGLPoint
+ operator QPointF() const {return QPointF(x,y);}
+ };
+
++Q_DECLARE_TYPEINFO(QOpenGLPoint, Q_PRIMITIVE_TYPE);
++
+ struct QOpenGLRect
+ {
+ QOpenGLRect(const QRectF &r)
+@@ -96,6 +98,8 @@ struct QOpenGLRect
+ operator QRectF() const {return QRectF(left, top, right-left, bottom-top);}
+ };
+
++Q_DECLARE_TYPEINFO(QOpenGLRect, Q_PRIMITIVE_TYPE);
++
+ class QOpenGL2PEXVertexArray
+ {
+ public:
diff --git a/vcpkg/ports/kdstatemachineeditor/usage b/vcpkg/ports/kdstatemachineeditor/usage
new file mode 100644
index 0000000..46ac269
--- /dev/null
+++ b/vcpkg/ports/kdstatemachineeditor/usage
@@ -0,0 +1,11 @@
+kdstatemachineeditor provides CMake targets:
+
+ find_package(KDSME-qt6 CONFIG REQUIRED)
+ # Core library
+ target_link_libraries(main PRIVATE KDSME::Core)
+ # View library
+ target_link_libraries(main PRIVATE KDSME::View)
+ # Debug interface client library
+ target_link_libraries(main PRIVATE KDSME::DebugInterfaceClient)
+ # Debug interface server library
+ target_link_libraries(main PRIVATE KDSME::DebugInterfaceSource)
diff --git a/vcpkg/ports/kdstatemachineeditor/vcpkg.json b/vcpkg/ports/kdstatemachineeditor/vcpkg.json
new file mode 100644
index 0000000..6111c03
--- /dev/null
+++ b/vcpkg/ports/kdstatemachineeditor/vcpkg.json
@@ -0,0 +1,31 @@
+{
+ "name": "kdstatemachineeditor",
+ "version": "2.0.0",
+ "port-version": 1,
+ "description": "KDStateMachineEditor is a library for visualizing and editing state charts.",
+ "homepage": "https://github.com/KDAB/KDStateMachineEditor",
+ "license": "LGPL-2.1-only",
+ "dependencies": [
+ "graphviz",
+ "qt5compat",
+ {
+ "name": "qtbase",
+ "default-features": false,
+ "features": [
+ "testlib",
+ "widgets"
+ ]
+ },
+ "qtdeclarative",
+ "qtremoteobjects",
+ "qtscxml",
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}