Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions classes/windowing.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Config:
WINDOWING_WAYLAND:
type: bool
default: false
WINDOWING_X11:
type: bool
default: false

buildVars: [WINDOWING_WAYLAND, WINDOWING_X11]
buildSetup: |
windowingWaylandOnOff () {
[[ ${WINDOWING_WAYLAND} -eq 1 ]] && echo ON || echo OFF
}
windowingX11OnOff () {
[[ ${WINDOWING_X11} -eq 1 ]] && echo ON || echo OFF
}
28 changes: 28 additions & 0 deletions recipes/devel/itstool.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
inherit: [autotools, autoconf, python3]

metaEnvironment:
PKG_VERSION: "2.0.7+lxml_migration"
PKG_LICENSE: "GPL-3.0-or-later"

depends:
- python::lxml

checkoutSCM:
scm: git
# url: ${GITHUB_MIRROR}/itstool/itstool.git
url: https://github.com/nwellnhof/itstool.git
# The latest itstool release uses libxml2, but the python bindings of
# libxml2 are deprecated. Use a version from the lxml transformation pull
# request until it's merged and a new release is published.
# See https://github.com/itstool/itstool/pull/57/
commit: 0f6751a586422719442eb7e9ddfe635ec7ca06fb

buildScript: |
export PYTHON=python3
autotoolsBuild -s $1

packageScript: |
autotoolsPackageTgt

provideTools:
itstool: "usr/bin"
74 changes: 74 additions & 0 deletions recipes/graphics/freerdp.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
inherit: [cmake, windowing]

metaEnvironment:
PKG_LICENSE: "Apache-2.0"
PKG_VERSION: "3.23.0"

depends:
- libs::alsa-lib-dev
- libs::openssl-dev
- if: "${WINDOWING_X11}"
depends:
- libs::xorg::libxkbfile-dev
- libs::xorg::libX11-dev
- libs::xorg::libXcursor-dev
- libs::xorg::libXi-dev
- libs::xorg::libXinerama-dev
- libs::xorg::libXv-dev
- libs::xorg::libXrandr-dev
- libs::zlib-dev
- use: []
depends:
- libs::alsa-lib-tgt
- libs::openssl-tgt
- if: "${WINDOWING_X11}"
depends:
- libs::xorg::libxkbfile-tgt
- libs::xorg::libX11-tgt
- libs::xorg::libXcursor-tgt
- libs::xorg::libXi-tgt
- libs::xorg::libXinerama-tgt
- libs::xorg::libXv-tgt
- libs::xorg::libXrandr-tgt
- libs::zlib-tgt

checkoutSCM:
scm: url
url: https://pub.freerdp.com/releases/freerdp-${PKG_VERSION}.tar.xz
digestSHA256: c4f7b3763d2915c1db6806f055f3573b640331adfaf722a8735d740378c1b5bb
stripComponents: 1

buildScript: |
CONFIG_OPTS=()

CONFIG_OPTS+=("-DWITH_ALSA=ON")
CONFIG_OPTS+=("-DWITH_UNICODE_BUILTIN=ON")
CONFIG_OPTS+=("-DWITH_CLIENT_SDL=OFF")
CONFIG_OPTS+=("-DWITH_CUPS=OFF")
CONFIG_OPTS+=("-DWITH_CAIRO=OFF")
CONFIG_OPTS+=("-DCHANNEL_URBDRC=OFF")
CONFIG_OPTS+=("-DWITH_FUSE=OFF")
CONFIG_OPTS+=("-DWITH_X11=$(windowingX11OnOff)")
CONFIG_OPTS+=("-DWITH_SWSCALE=OFF")
CONFIG_OPTS+=("-DWITH_KRB5=OFF")
CONFIG_OPTS+=("-DWITH_PULSE=OFF")
CONFIG_OPTS+=("-DWITH_FFMPEG=OFF")
CONFIG_OPTS+=("-DWITH_SERVER=OFF")
CONFIG_OPTS+=("-DWITH_SERVER_INTERFACE=OFF")
CONFIG_OPTS+=("-DWITH_THIRD_PARTY=OFF")

cmakeBuild $1 \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DCMAKE_SKIP_RPATH=TRUE \
-DCMAKE_SKIP_INSTALL_RPATH=TRUE \
-DBUILD_TESTING=OFF \
-DWITH_GPROF=OFF \
-DWITH_MANPAGES=OFF \
-DWITH_PROFILER=OFF \
-DWITH_SAMPLE=OFF \
${CONFIG_OPTS[@]} \

provideDeps: ['*-tgt']
packageScript: |
cmakePackageTgt
26 changes: 26 additions & 0 deletions recipes/graphics/ratpoison.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
inherit: [autotools]

metaEnvironment:
PKG_LICENSE: "GPL-2.0-or-later"
PKG_VERSION: "1.4.9"

checkoutSCM:
scm: url
url: https://download-mirror.savannah.gnu.org/releases/ratpoison/ratpoison-${PKG_VERSION}.tar.xz
digestSHA256: d98fa4be025ecca453c407ff311ab3949f29f20d6d8abedf8f0716b85fc8d1f1
stripComponents: 1

depends:
- libs::xorg::libX11-dev
- use: []
depends:
- libs::xorg::libX11-tgt

buildScript: |
autotoolsBuild $1 --without-xft \
--without-xkb \
--without-xrandr

provideDeps: ['*-tgt']
packageScript: |
autotoolsPackageBin
86 changes: 86 additions & 0 deletions recipes/libs/appstream.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
inherit: [meson]

metaEnvironment:
PKG_LICENSE: "GPL-2.0-or-later"
PKG_VERSION: "1.1.2"

depends:
- tools:
target-toolchain: host-compat-toolchain
use: [tools]
depends:
- devel::gperf
- devel::itstool
- name: python::lxml
use: [result]

- libs::glib-dev
- libs::libfyaml-dev
- libs::libpcre2-dev
- libs::libxml2-dev
- libs::libxmlb-dev
- net::curl-dev
- use: []
depends:
- libs::glib-tgt
- libs::libfyaml-tgt
- libs::libpcre2-tgt
- libs::libxml2-tgt
- libs::libxmlb-tgt
- net::curl-tgt

checkoutSCM:
scm: url
url: ${GITHUB_MIRROR}/ximion/appstream/archive/refs/tags/v${PKG_VERSION}.tar.gz
digestSHA256: 564ec87b16e9e4ee81fb021e612250fd27f3a3ecd31c209a5dd1ff59def3022d
stripComponents: 1

buildTools: [gettext, glib, gperf, itstool]
buildScript: |
mesonBuild $1 \
-Dsystemd=false \
-Dzstd-support=false \
-Dgir=false \
-Dstemming=false \
-Dapidocs=false \
-Ddocs=false \
-Dinstall-docs=false \
-Dbash-completion=false \
-Dman=false

multiPackage:
native:
packageScript: |
rsync -a --delete $1/install/ .
provideTools:
appstream-native: "usr/bin"
"":
depends:
# appstream references itself. the referenced version has to be a host
# native build (non cross)
- name: libs::appstream-native
tools:
target-toolchain: host-native-toolchain
use: [tools]
buildTools: [appstream-native]
buildSetup: |
# appstream needs a 'full' native appstream, not only the tools, to build...
export PKG_CONFIG_LIBDIR=$PKG_CONFIG_LIBDIR:${BOB_TOOL_PATHS['appstream-native']}/../lib/pkgconfig
multiPackage:
"dev":
packageScript: |
mesonPackageDev
provideDeps: ['*-dev']
"tgt":
packageScript: |
mesonPackageTgt
provideDeps: ['*-tgt']
"":
depends:
- use: []
name: libs::appstream-tgt
packageScript: |
mesonPackageBin
provideDeps: ['*-tgt']
provideTools:
appstream: usr/bin
45 changes: 45 additions & 0 deletions recipes/libs/fltk.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
inherit: [cmake, windowing]

metaEnvironment:
PKG_DESCRIPTION: "Fast Light Toolkit"
PKG_LICENSE: "LGPL-2.0-only WITH FLTK-exception"
PKG_VERSION: "1.3.11"

depends:
- libs::libpng-dev
- if: "${WINDOWING_X11}"
name: libs::xorg::libX11-dev
- libs::zlib-dev
- virtual::libs::libegl-dev
- virtual::libs::libjpeg-dev
- use: []
depends:
- libs::libpng-tgt
- if: "${WINDOWING_X11}"
name: libs::xorg::libX11-tgt
- libs::zlib-tgt
- virtual::libs::libegl-tgt
- virtual::libs::libjpeg-tgt

checkoutSCM:
scm: url
url: ${GITHUB_MIRROR}/fltk/fltk/releases/download/release-${PKG_VERSION}/fltk-${PKG_VERSION}-source.tar.bz2
digestSHA256: ca2e144e5f89173cd094cc273940d56230b1bf613083a0792e6406dc191cd99f
stripComponents: 1

buildScript: |
cmakeBuild $1 \
-DFLTK_BUILD_TEST=0 \
-DFLTK_BUILD_EXAMPLES=0 \
-DFLTK_BACKEND_X11=$(windowingX11OnOff)

multiPackage:
dev:
provideDeps: ['*-dev']
packageScript: |
cmakePackageDev $1 "usr/share/" "usr/share/fltk/***"

tgt:
provideDeps: ['*-tgt']
packageScript: |
cmakePackageTgt
34 changes: 34 additions & 0 deletions recipes/libs/libfyaml.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
inherit: [cmake, patch]

metaEnvironment:
PKG_VERSION: "0.9.5"
PKG_LICENSE: "MIT"

checkoutSCM:
scm: url
url: ${GITHUB_MIRROR}/pantoniou/libfyaml/releases/download/v${PKG_VERSION}/libfyaml-${PKG_VERSION}.tar.gz
digestSHA256: 9acbc9737808b2833a51be0d4b361987ab6bbbb19cbda7c0c5c83148c8addd8a
stripComponents: 1

checkoutDeterministic: True
checkoutScript: |
patchApplySeries $<@libfyaml/*.patch@>

depends:
- libs::libyaml-dev
- use: []
depends:
- libs::libyaml-tgt

buildScript: |
cmakeBuild $1 \
-DBUILD_TESTING=OFF \
-DCOMPILER_SUPPORTS_WNO_TAUTOLOGICAL_CONSTANT_OUT_OF_RANGE_COMPARE=0

multiPackage:
dev:
provideDeps: ['*-dev']
packageScript: cmakePackageDev
tgt:
provideDeps: ['*-tgt']
packageScript: cmakePackageTgt
64 changes: 64 additions & 0 deletions recipes/libs/libfyaml/0001-utils-fix-overflow-checks.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
From c71802e0ee84e34ee5a2e964fdae9a0db7df3378 Mon Sep 17 00:00:00 2001
From: Ralf Hubert <ralf.hubert@secunet.com>
Date: Tue, 10 Mar 2026 07:17:03 +0100
Subject: [PATCH] utils: fix overflow checks

Fix a compile error raised on the custom overflow implementations, e.g.:

src/util/fy-utils.h:232:23: error: '__result' undeclared (first use in
this function); did you mean '__res'?
__overflow = ((__a ^ __result) & (__b & __result)) < 0; \

Signed-off-by: Ralf Hubert <ralf.hubert@secunet.com>
---
src/tool/fy-tool-util.h | 4 ++--
src/util/fy-utils.h | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/tool/fy-tool-util.h b/src/tool/fy-tool-util.h
index 1094e44..62b0e94 100644
--- a/src/tool/fy-tool-util.h
+++ b/src/tool/fy-tool-util.h
@@ -99,7 +99,7 @@ static inline bool fy_add_overflow_size_t(size_t a, size_t b, size_t *resp)
\
__res = __a + __b; \
/* overflow when signs of a, b same, but results different */ \
- __overflow = ((__a ^ __result) & (__b & __result)) < 0; \
+ __overflow = ((__a ^ __res) & (__b & __res)) < 0; \
*(_resp) = __res; \
__overflow; \
})
@@ -132,7 +132,7 @@ static inline bool fy_sub_overflow_size_t(size_t a, size_t b, size_t *resp)
\
__res = __a - __b; \
/* overflow when signs of a, b differ, but results different from minuend */ \
- __overflow = ((__a ^ __b) & (__a & __result)) < 0; \
+ __overflow = ((__a ^ __b) & (__a & __res)) < 0; \
*(_resp) = __res; \
__overflow; \
})
diff --git a/src/util/fy-utils.h b/src/util/fy-utils.h
index e7ac43c..018874b 100644
--- a/src/util/fy-utils.h
+++ b/src/util/fy-utils.h
@@ -229,7 +229,7 @@ void fy_keyword_iter_end(struct fy_keyword_iter *iter);
\
__res = __a + __b; \
/* overflow when signs of a, b same, but results different */ \
- __overflow = ((__a ^ __result) & (__b & __result)) < 0; \
+ __overflow = ((__a ^ __res) & (__b & __res)) < 0; \
*(_resp) = __res; \
__overflow; \
})
@@ -255,7 +255,7 @@ void fy_keyword_iter_end(struct fy_keyword_iter *iter);
\
__res = __a - __b; \
/* overflow when signs of a, b differ, but results different from minuend */ \
- __overflow = ((__a ^ __b) & (__a & __result)) < 0; \
+ __overflow = ((__a ^ __b) & (__a & __res)) < 0; \
*(_resp) = __res; \
__overflow; \
})
--
2.52.0

Loading