mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-29 11:38:52 +02:00
qxmpp, add recipe for version 1.14.4 (#13871)
This commit is contained in:
35
net-libs/qxmpp/patches/qxmpp-1.14.4.patchset
Normal file
35
net-libs/qxmpp/patches/qxmpp-1.14.4.patchset
Normal file
@@ -0,0 +1,35 @@
|
||||
From 1230646603248267c940bc166dba7d0bb1459e4a Mon Sep 17 00:00:00 2001
|
||||
From: Luc Schrijvers <begasus@gmail.com>
|
||||
Date: Fri, 19 Dec 2025 17:25:07 +0100
|
||||
Subject: Fix cmake include targets
|
||||
|
||||
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 0c1ffb1..13ab483 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -370,7 +370,7 @@ target_include_directories(${QXMPP_TARGET}
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/client>
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/server>
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
|
||||
- $<INSTALL_INTERFACE:include/${QXMPP_TARGET}>
|
||||
+ $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/${QXMPP_TARGET}>
|
||||
)
|
||||
|
||||
# qxmpp_export.h generation
|
||||
diff --git a/src/omemo/CMakeLists.txt b/src/omemo/CMakeLists.txt
|
||||
index be830fc..4b965fb 100644
|
||||
--- a/src/omemo/CMakeLists.txt
|
||||
+++ b/src/omemo/CMakeLists.txt
|
||||
@@ -42,7 +42,7 @@ target_link_libraries(${QXMPPOMEMO_TARGET}
|
||||
)
|
||||
target_include_directories(${QXMPPOMEMO_TARGET}
|
||||
PUBLIC
|
||||
- $<INSTALL_INTERFACE:include/${QXMPP_TARGET}/Omemo>
|
||||
+ $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/${QXMPP_TARGET}/Omemo>
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}>
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
|
||||
)
|
||||
--
|
||||
2.52.0
|
||||
|
||||
107
net-libs/qxmpp/qxmpp-1.14.4.recipe
Normal file
107
net-libs/qxmpp/qxmpp-1.14.4.recipe
Normal file
@@ -0,0 +1,107 @@
|
||||
SUMMARY="C++ XMPP client and server library"
|
||||
DESCRIPTION="QXmpp is a cross-platform C++ XMPP client and server library. It is written in C++ \
|
||||
and uses the Qt framework.
|
||||
|
||||
QXmpp strives to be as easy to use as possible. The underlying TCP socket, the core XMPP RFCs \
|
||||
(RFC6120 and RFC6121) and the supported XMPP extensions have been nicely encapsulated in \
|
||||
classes. With QXmpp, it is possible to build XMPP clients complying with the XMPP Compliance \
|
||||
Suites 2022 for IM and Advanced Mobile. It comes with full API documentation, automatic tests \
|
||||
and examples.
|
||||
|
||||
QXmpp uses Qt extensively. Thus, users need to have a good knowledge of C++ and Qt basics \
|
||||
(including the concept of signals/slots and Qt's data types). Qt is the only third party library \
|
||||
required to build QXmpp, but libraries such as GStreamer enable additional features."
|
||||
HOMEPAGE="https://invent.kde.org/libraries/qxmpp"
|
||||
COPYRIGHT="2010-2026 KDE Organisation"
|
||||
LICENSE="GNU LGPL v2.1"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://download.kde.org/unstable/qxmpp/qxmpp-$portVersion.tar.xz"
|
||||
CHECKSUM_SHA256="06a3a484eccbb9488d66b75d41b8afffcc9741304f1a96b930e39dc8b4ef6243"
|
||||
PATCHES="qxmpp-$portVersion.patchset"
|
||||
|
||||
ARCHITECTURES="all !x86_gcc2"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
libVersion="$portVersion"
|
||||
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
|
||||
|
||||
PROVIDES="
|
||||
qxmpp$secondaryArchSuffix = $portVersion
|
||||
lib:libQXmppOmemoQt6$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libQXmppQt6$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
gst_plugins_good$secondaryArchSuffix
|
||||
lib:libglib_2.0$secondaryArchSuffix
|
||||
lib:libgobject_2.0$secondaryArchSuffix
|
||||
lib:libgstreamer_1.0$secondaryArchSuffix
|
||||
lib:libintl$secondaryArchSuffix
|
||||
lib:libomemo_c$secondaryArchSuffix
|
||||
lib:libqca_qt6$secondaryArchSuffix
|
||||
lib:libQt6Core$secondaryArchSuffix
|
||||
lib:libQt6Network$secondaryArchSuffix
|
||||
lib:libQt6Xml$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PROVIDES_devel="
|
||||
qxmpp${secondaryArchSuffix}_devel = $portVersion
|
||||
devel:libQXmppOmemoQt6$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libQXmppQt6$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES_devel="
|
||||
qxmpp$secondaryArchSuffix == $portVersion base
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
gst_plugins_good$secondaryArchSuffix
|
||||
devel:libgstreamer_1.0$secondaryArchSuffix
|
||||
devel:libomemo_c$secondaryArchSuffix
|
||||
devel:libqca_qt6$secondaryArchSuffix
|
||||
devel:libQt6Core$secondaryArchSuffix
|
||||
devel:libQt6Core5Compat$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:cmake
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:make
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
"
|
||||
|
||||
defineDebugInfoPackage qxmpp$secondaryArchSuffix \
|
||||
"$libDir"/libQXmppQt6.so.$libVersion \
|
||||
"$libDir"/libQXmppOmemoQt6.so.$libVersion
|
||||
|
||||
BUILD()
|
||||
{
|
||||
cmake -B build -S . -DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
$cmakeDirArgs \
|
||||
-DBUILD_WITH_QT6=ON \
|
||||
-DWITH_GSTREAMER=ON \
|
||||
-DWITH_QCA:BOOL=ON \
|
||||
-DBUILD_EXAMPLES=OFF \
|
||||
-DBUILD_OMEMO=ON \
|
||||
-DBUILD_TESTS=OFF
|
||||
|
||||
make -C build $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
make -C build install
|
||||
|
||||
prepareInstalledDevelLibs \
|
||||
libQXmppOmemoQt6 \
|
||||
libQXmppQt6
|
||||
fixPkgconfig
|
||||
|
||||
packageEntries devel \
|
||||
$developDir \
|
||||
$libDir/cmake
|
||||
}
|
||||
|
||||
TEST()
|
||||
{
|
||||
ctest --test-dir build --output-on-failure
|
||||
}
|
||||
Reference in New Issue
Block a user