yelp, new recipe, Gnome help viewer (#13916)

This commit is contained in:
Schrijvers Luc
2026-04-06 15:50:14 +02:00
committed by GitHub
parent 2d21978e32
commit f8cf2ac56c
2 changed files with 184 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
resource app_flags B_SINGLE_LAUNCH;
resource app_version {
major = @MAJOR@,
middle = @MIDDLE@,
minor = @MINOR@,
variety = B_APPV_FINAL,
internal = 0,
short_info = "@APP_NAME@",
long_info = "@LONG_INFO@"
};
resource app_signature "@APP_SIGNATURE@";
resource vector_icon {
$"6E6369660303DDC6B303F6F5F403E01B240A0003C92FC007C92FC007CB9EBD60"
$"C921B6ABCB99B94BC6AAB40CBFCCB609C298B3C5BFCCB6090003C92FBF79C92F"
$"BF79CB9EC220C921C8D4CB99C635C6AACB74BFCCC977C298CBBBBFCCC9770003"
$"B650BF79B650BF79B3E1C220B65EC8D4B3E6C635B8D5CB74BFB3C977BCE7CBBB"
$"BFB3C9770003B650C007B650C007B3E1BD60B65EB6ABB3E6B94BB8D5B40CBFB3"
$"B609BCE7B3C5BFB3B6090205402F402FC37D2F514051BC0251C37D4051C37D51"
$"BC02512F402FC37D2FBC02402FBC022F402F020540224022B92622224022B926"
$"22C659405EB9265EC6595E5E405EC6595EB9264022C659224022020648C59F48"
$"C788C1F4C62640C66DC0DCC66DBEA3C66D38C5A0BD8BC62638C78A38CB5D38C9"
$"73BD99CBA740CBCCBEACCBCCC0D3CBCB48CB5AC1E6CBA448C9710206C59F38C7"
$"8838C626BD8BC66D40C66DBEA3C66DC0DCC5A048C626C1F5C78948CB5D48C973"
$"48CBA7C1E6CBCC40CBCCC0D3CBCBBEACCB5A38CBA4BD99C971380207B42238B6"
$"0C38B3D9BD98B3B3BFBDB3B3BEAAB3B3BFBEB3B3BFC1B3B340B3B4C0D5B42548"
$"B3DBC1E7B60E48B9E048B7F748B959C1F5B91240B912C0DCB912BEA3B9DF38B9"
$"59BD8BB7F5380207BFBAB3B3BFBEB3B3BEA8B3B538B425BD97B3DB38B60E38B9"
$"DF38B7F7BD8BB95940B912BEA3B912C0DCB91248B9DFC1F4B95948B7F548B422"
$"48B60CC1E9B3D9BFC8B3B3C0D9B3B4BFC3B3B3060A0001001001178200040A00"
$"01011001178200040A0001021001178200040A0001031001178200040A010204"
$"05000A02040607080900"
};

View File

@@ -0,0 +1,147 @@
SUMMARY="Help browser for GNOME"
DESCRIPTION="Yelp is the GNOME help viewer. It is the default Mallard viewer, but \
it can also display DocBook, info, man, and HTML documentation.
It makes it easy to find the documentation you need, with interactive search and \
bookmarks.
It also has an editor mode, which shows editorial comments and revision statuses when \
editing Mallard documents."
HOMEPAGE="https://apps.gnome.org/Yelp/"
COPYRIGHT="David King
Shaun McCance"
LICENSE="GNU GPL v2"
REVISION="1"
SOURCE_URI="https://gitlab.gnome.org/GNOME/yelp/-/archive/$portVersion/yelp-$portVersion.tar.bz2"
CHECKSUM_SHA256="cc487a93b6bb9cd5883603ca5db6340449b417dbb429f3be37231f05d7fe514b"
ADDITIONAL_FILES="yelp.rdef.in"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
# On x86_gcc2 we don't want to install the commands in bin/<arch>/, but in bin/.
commandSuffix=$secondaryArchSuffix
commandBinDir=$binDir
if [ "$targetArchitecture" = x86_gcc2 ]; then
commandSuffix=
commandBinDir=$prefix/bin
fi
libVersion="0.0.0"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
yelp$secondaryArchSuffix = $portVersion
app:Yelp = $portVersion
cmd:yelp$commandSuffix = $portVersion
cmd:gnome_help$commandSuffix = $portVersion
lib:libyelp$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
yelp_xsl$secondaryArchSuffix
lib:libbz2$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgio_2.0$secondaryArchSuffix
lib:libgmodule_2.0$secondaryArchSuffix
lib:libgobject_2.0$secondaryArchSuffix
lib:libgsf_1$secondaryArchSuffix
lib:libgtk_3$secondaryArchSuffix
lib:libhandy_1$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:liblzma$secondaryArchSuffix
lib:libsqlite3$secondaryArchSuffix
lib:libwebkit2gtk_4.1$secondaryArchSuffix
lib:libxml2$secondaryArchSuffix
lib:libxslt$secondaryArchSuffix
"
PROVIDES_devel="
yelp${secondaryArchSuffix}_devel = $portVersion
devel:libyelp$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
yelp$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
yelp_xsl$secondaryArchSuffix
devel:libbz2$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libgio_2.0$secondaryArchSuffix
devel:libgmodule_2.0$secondaryArchSuffix
devel:libgobject_2.0$secondaryArchSuffix
devel:libgsf_1$secondaryArchSuffix
devel:libgtk_3$secondaryArchSuffix
devel:libhandy_1$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libintl$secondaryArchSuffix
devel:liblzma$secondaryArchSuffix
devel:libsqlite3$secondaryArchSuffix
devel:libwebkit2gtk_4.1$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libxslt$secondaryArchSuffix
"
BUILD_PREREQUIRES="
gtk_doc
cmd:cmake
cmd:gcc$secondaryArchSuffix
cmd:itstool
cmd:libtoolize$secondaryArchSuffix
cmd:meson
cmd:msgfmt$secondaryArchSuffix
cmd:msgmerge$secondaryArchSuffix
cmd:ninja
cmd:pkg_config$secondaryArchSuffix
"
BUILD()
{
meson --buildtype=release \
--prefix=$prefix \
--bindir=$commandBinDir \
build
ninja -C build $jobArgs
}
INSTALL()
{
ninja -C build install
mkdir $appsDir
mv $commandBinDir/yelp $appsDir/Yelp
ln -s $appsDir/Yelp $commandBinDir/yelp
# cleanup
rm -rf $dataDir/{applications,metainfo}
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="0"
local APP_NAME="Yelp"
local LONG_INFO="$SUMMARY"
local APP_SIGNATURE="application/x-vnd.yelp"
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
-e "s|@APP_NAME@|$APP_NAME|" \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
$portDir/additional-files/yelp.rdef.in > yelp.rdef
addResourcesToBinaries yelp.rdef $appsDir/Yelp
addAppDeskbarSymlink $appsDir/Yelp
prepareInstalledDevelLib libyelp
packageEntries devel \
$developDir
}
TEST()
{
make check
}