mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-23 04:00:05 +02:00
Add appstream (#12503)
* Add appstream * recipe cleanup, add appstreamqt --------- Co-authored-by: Luc Schrijvers <begasus@gmail.com>
This commit is contained in:
144
dev-libs/appstream/appstream-1.0.5.recipe
Normal file
144
dev-libs/appstream/appstream-1.0.5.recipe
Normal file
@@ -0,0 +1,144 @@
|
||||
SUMMARY="Tools and libraries to work with AppStream metadata"
|
||||
DESCRIPTION="AppStream is a cross-distro effort for better app stores. \
|
||||
It provides metadata for software components and makes it available to software \
|
||||
centers like GNOME Software and KDE Discover."
|
||||
HOMEPAGE="https://github.com/ximion/appstream"
|
||||
COPYRIGHT="Matthias Klumpp"
|
||||
LICENSE="GNU LGPL v2.1"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://github.com/ximion/appstream/archive/refs/tags/v$portVersion/appstream-$portVersion.tar.gz"
|
||||
CHECKSUM_SHA256="dd33b1375ba4221ffee060e2778c478e8150d7b1108c6309148f5fb1ca6e90c0"
|
||||
SOURCE_DIR="appstream-$portVersion"
|
||||
PATCHES="appstream-1.0.5-haiku.patchset"
|
||||
|
||||
ARCHITECTURES="all !x86_gcc2"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
libVersion="$portVersion"
|
||||
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
|
||||
|
||||
PROVIDES="
|
||||
appstream$secondaryArchSuffix = $portVersion
|
||||
cmd:appstreamcli
|
||||
lib:libappstream$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libcurl$secondaryArchSuffix
|
||||
lib:libgio_2.0$secondaryArchSuffix
|
||||
lib:libgirepository_1.0$secondaryArchSuffix
|
||||
lib:libglib_2.0$secondaryArchSuffix
|
||||
lib:libgobject_2.0$secondaryArchSuffix
|
||||
lib:libintl$secondaryArchSuffix
|
||||
lib:libstemmer$secondaryArchSuffix
|
||||
lib:libxml2$secondaryArchSuffix
|
||||
lib:libxmlb$secondaryArchSuffix
|
||||
lib:libyaml_0$secondaryArchSuffix
|
||||
lib:libzstd$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PROVIDES_devel="
|
||||
appstream${secondaryArchSuffix}_devel = $portVersion
|
||||
devel:libappstream$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libAppStreamQt$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES_devel="
|
||||
appstream$secondaryArchSuffix == $portVersion base
|
||||
devel:libffi$secondaryArchSuffix
|
||||
devel:libglib_2.0$secondaryArchSuffix
|
||||
devel:libpcre2_8$secondaryArchSuffix
|
||||
devel:libz$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PROVIDES_qt6="
|
||||
appstream_qt6$secondaryArchSuffix = $portVersion
|
||||
lib:libAppStreamQt$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libAppStreamQt$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES_qt6="
|
||||
appstream$secondaryArchSuffix == $portVersion base
|
||||
appstream${secondaryArchSuffix}_devel == $portVersion
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libgio_2.0$secondaryArchSuffix
|
||||
lib:libglib_2.0$secondaryArchSuffix
|
||||
lib:libgobject_2.0$secondaryArchSuffix
|
||||
lib:libQt6Core$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
qt6_tools${secondaryArchSuffix}_devel
|
||||
devel:libcurl$secondaryArchSuffix
|
||||
devel:libgio_2.0$secondaryArchSuffix
|
||||
devel:libgirepository_1.0$secondaryArchSuffix
|
||||
devel:libglib_2.0$secondaryArchSuffix
|
||||
devel:libgobject_2.0$secondaryArchSuffix
|
||||
devel:libQt6Core$secondaryArchSuffix
|
||||
devel:libstemmer$secondaryArchSuffix >= 3
|
||||
devel:libxml2$secondaryArchSuffix
|
||||
devel:libxmlb$secondaryArchSuffix
|
||||
devel:libyaml_0$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_PREREQUIRES="
|
||||
docbook_xsl_stylesheets$secondaryArchSuffix
|
||||
cmd:cmake
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:gperf
|
||||
cmd:itstool
|
||||
cmd:ld$secondaryArchSuffix
|
||||
cmd:meson
|
||||
cmd:msgfmt$secondaryArchSuffix
|
||||
cmd:ninja
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
cmd:xsltproc
|
||||
"
|
||||
|
||||
PATCH()
|
||||
{
|
||||
sed -i "s|stemmer_inc_dirs = include_directories(\['/usr/include'\])|#&|" meson.build
|
||||
}
|
||||
|
||||
BUILD()
|
||||
{
|
||||
meson setup Build \
|
||||
--buildtype=release \
|
||||
--prefix="$prefix" \
|
||||
--bindir="$prefix/bin" \
|
||||
--libdir="$libDir" \
|
||||
--includedir="$includeDir" \
|
||||
--datadir="$dataDir" \
|
||||
--localedir="$dataDir/locale" \
|
||||
--sysconfdir="$settingsDir" \
|
||||
-Dc_args="-I$includeDir" \
|
||||
-Dcpp_args="-I$includeDir" \
|
||||
-Dsystemd=false \
|
||||
-Dgir=true \
|
||||
-Dapidocs=false \
|
||||
-Dcompose=false \
|
||||
-Dqt=true
|
||||
|
||||
ninja -C Build
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
ninja install -C Build
|
||||
|
||||
# cleanup
|
||||
rm -rf $dataDir/metainfo $prefix/share
|
||||
|
||||
prepareInstalledDevelLibs \
|
||||
libappstream \
|
||||
libAppStreamQt
|
||||
fixPkgconfig
|
||||
|
||||
packageEntries qt6 \
|
||||
$libDir/libAppStreamQt* \
|
||||
$developLibDir/libAppStreamQt* \
|
||||
$libDir/cmake \
|
||||
$includeDir/AppStreamQt
|
||||
|
||||
packageEntries devel \
|
||||
$developDir
|
||||
}
|
||||
38
dev-libs/appstream/patches/appstream-1.0.5-haiku.patchset
Normal file
38
dev-libs/appstream/patches/appstream-1.0.5-haiku.patchset
Normal file
@@ -0,0 +1,38 @@
|
||||
From 066d7f81183d71158b961bb26667e149321f8409 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Silva <sebastian@fuentelibre.org>
|
||||
Date: Wed, 11 Jun 2025 20:15:07 +0000
|
||||
Subject: [PATCH] Add Haiku
|
||||
|
||||
---
|
||||
src/as-system-info.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/src/as-system-info.c b/src/as-system-info.c
|
||||
index 0c7e27c..3d12f5b 100644
|
||||
--- a/src/as-system-info.c
|
||||
+++ b/src/as-system-info.c
|
||||
@@ -65,6 +65,9 @@
|
||||
#endif
|
||||
|
||||
#include "as-utils-private.h"
|
||||
+#ifdef __HAIKU__
|
||||
+#include <OS.h>
|
||||
+#endif
|
||||
|
||||
#define MB_IN_BYTES (1024 * 1024)
|
||||
|
||||
@@ -519,6 +522,11 @@ as_get_physical_memory_total (void)
|
||||
if (physpages > 0 && pagesize > 0)
|
||||
return (physpages * pagesize) / MB_IN_BYTES;
|
||||
return 0;
|
||||
+#elif defined(__HAIKU__)
|
||||
+ system_info info;
|
||||
+ if (get_system_info(&info) != B_OK)
|
||||
+ return 0;
|
||||
+ return (guint64)info.max_pages * B_PAGE_SIZE;
|
||||
#else
|
||||
#error "Implementation of as_get_physical_memory_total() missing for this OS."
|
||||
#endif
|
||||
--
|
||||
2.48.1
|
||||
|
||||
Reference in New Issue
Block a user