libaccounts_qt, new recipes (#11105)

This commit is contained in:
Schrijvers Luc
2024-09-12 12:58:09 +02:00
committed by GitHub
parent 512b3630ca
commit 61448b1a57
3 changed files with 364 additions and 0 deletions

View File

@@ -0,0 +1,112 @@
SUMMARY="Accounts management library for Qt applications"
DESCRIPTION="This project is a library for managing accounts which can be used from Qt \
applications. It is part of the @accounts-sso project."
HOMEPAGE="https://gitlab.com/accounts-sso/libaccounts-qt"
COPYRIGHT="2022 Accounts SSO"
LICENSE="GNU LGPL v2.1"
REVISION="1"
SOURCE_URI="$HOMEPAGE/-/archive/VERSION_$portVersion/libaccounts-qt-VERSION_$portVersion.tar.bz2"
CHECKSUM_SHA256="6982d8b695ce4caa21cdc2b43d5808d7ec042ed0dee0bac2411ab4a376dec37c"
SOURCE_DIR="libaccounts-qt-VERSION_$portVersion"
PATCHES="libaccounts_qt-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="1.5.0"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
libaccounts_qt5$secondaryArchSuffix = $portVersion
lib:libaccounts_qt5$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libaccounts_glib$secondaryArchSuffix
lib:libgio_2.0$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgobject_2.0$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5Xml$secondaryArchSuffix
"
PROVIDES_devel="
libaccounts_qt5${secondaryArchSuffix}_devel = $portVersion
devel:libaccounts_qt5$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
libaccounts_qt5$secondaryArchSuffix == $portVersion base
"
PROVIDES_tools="
libaccounts_qt5${secondaryArchSuffix}_tools = $portVersion
cmd:accountstest = $portVersion
"
REQUIRES_tools="
libaccounts_qt5$secondaryArchSuffix == $portVersion base
$REQUIRES
"
CONFLICTS_tools="
libaccounts_qt6${secondaryArchSuffix}_tools
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libaccounts_glib$secondaryArchSuffix
devel:libgio_2.0$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libgobject_2.0$secondaryArchSuffix
devel:libintl$secondaryArchSuffix
devel:libpcre$secondaryArchSuffix
devel:libQt5Core$secondaryArchSuffix
devel:libQt5Gui$secondaryArchSuffix
devel:libsqlite3$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:doxygen
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:python3
cmd:qmake
"
BUILD()
{
qmake . PREFIX=$prefix LIBDIR=$libDir \
INCLUDEDIR=$includeDir \
CMAKE_CONFIG_PATH=$libDir/cmake
make $jobArgs
}
INSTALL()
{
make install
prepareInstalledDevelLib \
libaccounts-qt5
fixPkgconfig
# The includes are in a subdirectory of includeDir, and fixPkgconfig breaks
# that.
sed -i -e "s,^includedir=.*,includedir=$prefix/$relativeIncludeDir/accounts-qt5," \
$developLibDir/pkgconfig/accounts-qt5.pc
ln -fs $developLibDir/libaccounts-qt5.so.$libVersion $libDir/libaccounts-qt5.so
packageEntries devel \
$developDir \
$libDir/cmake
packageEntries tools \
$prefix/bin
}
TEST()
{
make check
}

View File

@@ -0,0 +1,109 @@
SUMMARY="Accounts management library for Qt applications"
DESCRIPTION="This project is a library for managing accounts which can be used from Qt \
applications. It is part of the @accounts-sso project."
HOMEPAGE="https://gitlab.com/accounts-sso/libaccounts-qt"
COPYRIGHT="2022 Accounts SSO"
LICENSE="GNU LGPL v2.1"
REVISION="1"
SOURCE_URI="$HOMEPAGE/-/archive/VERSION_$portVersion/libaccounts-qt-VERSION_$portVersion.tar.bz2"
CHECKSUM_SHA256="6982d8b695ce4caa21cdc2b43d5808d7ec042ed0dee0bac2411ab4a376dec37c"
SOURCE_DIR="libaccounts-qt-VERSION_$portVersion"
PATCHES="libaccounts_qt-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
libVersion="1.5.0"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
libaccounts_qt6$secondaryArchSuffix = $portVersion
lib:libaccounts_qt6$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libaccounts_glib$secondaryArchSuffix
lib:libgio_2.0$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgobject_2.0$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libQt6Core$secondaryArchSuffix
lib:libQt6Xml$secondaryArchSuffix
"
PROVIDES_devel="
libaccounts_qt6${secondaryArchSuffix}_devel = $portVersion
devel:libaccounts_qt6$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
libaccounts_qt6$secondaryArchSuffix == $portVersion base
"
PROVIDES_tools="
libaccounts_qt6${secondaryArchSuffix}_tools = $portVersion
cmd:accountstest = $portVersion
"
REQUIRES_tools="
libaccounts_qt6$secondaryArchSuffix == $portVersion base
$REQUIRES
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libaccounts_glib$secondaryArchSuffix
devel:libgio_2.0$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libgobject_2.0$secondaryArchSuffix
devel:libintl$secondaryArchSuffix
devel:libpcre$secondaryArchSuffix
devel:libQt6Core$secondaryArchSuffix
devel:libQt6Gui$secondaryArchSuffix
devel:libsqlite3$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:doxygen
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:python3
cmd:qmake6
"
BUILD()
{
qmake6 . PREFIX=$prefix LIBDIR=$libDir \
INCLUDEDIR=$includeDir \
CMAKE_CONFIG_PATH=$libDir/cmake
make $jobArgs
}
INSTALL()
{
make install
prepareInstalledDevelLib \
libaccounts-qt6
fixPkgconfig
# The includes are in a subdirectory of includeDir, and fixPkgconfig breaks
# that.
sed -i -e "s,^includedir=.*,includedir=$prefix/$relativeIncludeDir/accounts-qt6," \
$developLibDir/pkgconfig/accounts-qt6.pc
ln -fs $developLibDir/libaccounts-qt6.so.$libVersion $libDir/libaccounts-qt6.so
packageEntries devel \
$developDir \
$libDir/cmake
packageEntries tools \
$prefix/bin
}
TEST()
{
make check
}

View File

@@ -0,0 +1,143 @@
From 390f7977c7d354e0dc64913841aeb9b7ed0e1f8c Mon Sep 17 00:00:00 2001
From: Begasus <begasus@gmail.com>
Date: Fri, 22 Dec 2023 14:51:14 +0100
Subject: Fix documentation installation path
diff --git a/doc/doc.pri b/doc/doc.pri
index 33f8bc2..aa5ff86 100644
--- a/doc/doc.pri
+++ b/doc/doc.pri
@@ -59,7 +59,7 @@ include( ../common-installs-config.pri )
#-----------------------------------------------------------------------------
# Installation target setup for documentation
#-----------------------------------------------------------------------------
-documentation.path = $${INSTALL_PREFIX}/share/doc/$${PROJECT_NAME}
+documentation.path = $${INSTALL_PREFIX}/develop/documentation/$${PROJECT_NAME}
for( folder, DOC_FOLDERS ) {
documentation.files += $${TOP_BUILD_DIR}/$${folder}
}
--
2.45.2
From 948e89c055c9d3c52281eceb403f8b67eb6af7f8 Mon Sep 17 00:00:00 2001
From: Begasus <begasus@gmail.com>
Date: Fri, 22 Dec 2023 15:05:25 +0100
Subject: Fix headers installation path
diff --git a/Accounts/AccountsQt5Config.cmake.in b/Accounts/AccountsQt5Config.cmake.in
index 746f689..2803132 100644
--- a/Accounts/AccountsQt5Config.cmake.in
+++ b/Accounts/AccountsQt5Config.cmake.in
@@ -1,5 +1,5 @@
-# ACCOUNTSQT_INCLUDE_DIRS - The libaccounts-qt include directories
+# ACCOUNTSQT_INCLUDE_DIRS - The libaccounts-qt develop/headers directories
# ACCOUNTSQT_LIBRARIES - The libraries needed to use libaccounts-qt
set(ACCOUNTSQT_LIBRARIES $${INSTALL_LIBDIR}/lib$${TARGET}.so)
-set(ACCOUNTSQT_INCLUDE_DIRS $${INSTALL_PREFIX}/include/$${TARGET}/)
+set(ACCOUNTSQT_INCLUDE_DIRS $${INSTALL_INCLUDEDIR}/$${TARGET}/)
diff --git a/Accounts/accounts-qt5.pc.in b/Accounts/accounts-qt5.pc.in
index fbfcea8..72630f8 100644
--- a/Accounts/accounts-qt5.pc.in
+++ b/Accounts/accounts-qt5.pc.in
@@ -1,10 +1,10 @@
prefix=$$INSTALL_PREFIX
exec_prefix=${prefix}
libdir=$$INSTALL_LIBDIR
-includedir=${prefix}/include/accounts-qt5
-servicefilesdir=${prefix}/share/accounts/services
-servicetypefilesdir=${prefix}/share/accounts/service-types
-providerfilesdir=${prefix}/share/accounts/providers
+includedir=$${INSTALL_INCLUDEDIR}/accounts-qt5
+servicefilesdir=${prefix}/data/accounts/services
+servicetypefilesdir=${prefix}/data/accounts/service-types
+providerfilesdir=${prefix}/data/accounts/providers
Name: libaccounts-qt5
Description: Accounts Library
diff --git a/common-installs-config.pri b/common-installs-config.pri
index 82baf75..9068777 100644
--- a/common-installs-config.pri
+++ b/common-installs-config.pri
@@ -31,7 +31,7 @@ contains( TEMPLATE, lib ) {
# target for header files
#-----------------------------------------------------------------------------
!isEmpty( headers.files ) {
- headers.path = $${INSTALL_PREFIX}/include/$${TARGET}/Accounts/
+ headers.path = $${INSTALL_INCLUDEDIR}/$${TARGET}/Accounts/
INSTALLS += headers
message("====")
message("==== INSTALLS += headers")
diff --git a/common-project-config.pri b/common-project-config.pri
index b856961..b8075d2 100644
--- a/common-project-config.pri
+++ b/common-project-config.pri
@@ -51,6 +51,22 @@ isEmpty( LIBDIR ) {
message("==== library install path set to `$${INSTALL_LIBDIR}'")
}
+linux-g++-64|linux-icc-64: INSTALL_INCLUDEDIR = $${INSTALL_PREFIX}/include
+else: linux-g++-32|linux-icc-32: INSTALL_INCLUDEDIR = $${INSTALL_PREFIX}/include
+else: INSTALL_INCLUDEDIR = $${INSTALL_PREFIX}/include
+
+# default headers directory can be overriden by defining INCLUDEDIR when
+# running qmake
+isEmpty( INCLUDEDIR ) {
+ message("====")
+ message("==== NOTE: To override the headers installation path run: `qmake INCLUDEDIR=/custom/path'")
+ message("==== (current installation path is `$${INSTALL_INCLUDEDIR}')")
+} else {
+ INSTALL_INCLUDEDIR = $${INCLUDEDIR}
+ message("====")
+ message("==== headers install path set to `$${INSTALL_INCLUDEDIR}'")
+}
+
isEmpty ( CMAKE_CONFIG_PATH ) {
CMAKE_CONFIG_PATH = $${INSTALL_LIBDIR}/cmake
message("====")
--
2.45.2
From c6e3c3ded7865f7e5651dbc7f7b472b4462548fd Mon Sep 17 00:00:00 2001
From: Schrijvers Luc <begasus@gmail.com>
Date: Mon, 9 Sep 2024 15:41:01 +0200
Subject: Add fixes for Qt6
diff --git a/Accounts/AccountsQt6Config.cmake.in b/Accounts/AccountsQt6Config.cmake.in
index 55a8964..4423e2b 100644
--- a/Accounts/AccountsQt6Config.cmake.in
+++ b/Accounts/AccountsQt6Config.cmake.in
@@ -2,4 +2,4 @@
# ACCOUNTSQT_LIBRARIES - The libraries needed to use libaccounts-qt
set(ACCOUNTSQT_LIBRARIES $${INSTALL_LIBDIR}/lib$${TARGET}.so)
-set(ACCOUNTSQT_INCLUDE_DIRS $${INSTALL_PREFIX}/include/$${TARGET}/)
\ No newline at end of file
+set(ACCOUNTSQT_INCLUDE_DIRS $${INSTALL_INCLUDEDIR}/$${TARGET}/)
diff --git a/Accounts/accounts-qt6.pc.in b/Accounts/accounts-qt6.pc.in
index c625b2e..2d9e5f0 100644
--- a/Accounts/accounts-qt6.pc.in
+++ b/Accounts/accounts-qt6.pc.in
@@ -1,10 +1,10 @@
prefix=$$INSTALL_PREFIX
exec_prefix=${prefix}
libdir=$$INSTALL_LIBDIR
-includedir=${prefix}/include/accounts-qt6
-servicefilesdir=${prefix}/share/accounts/services
-servicetypefilesdir=${prefix}/share/accounts/service-types
-providerfilesdir=${prefix}/share/accounts/providers
+includedir=$${INSTALL_INCLUDEDIR}/accounts-qt5
+servicefilesdir=${prefix}/data/accounts/services
+servicetypefilesdir=${prefix}/data/accounts/service-types
+providerfilesdir=${prefix}/data/accounts/providers
Name: libaccounts-qt6
Description: Accounts Library
--
2.45.2