Merge branch 'gtk' into 'master'

Gtk in Orbital

See merge request redox-os/redox!2186
This commit is contained in:
Jeremy Soller 2026-06-11 06:37:54 -06:00
commit 647db212f8
17 changed files with 64 additions and 125 deletions

View File

@ -5,30 +5,24 @@ patches = ["redox.patch"]
[build]
dependencies = [
"expat",
"freetype2",
"fontconfig",
"gettext",
"fontconfig",
"freetype2",
"glib",
"libffi",
"libiconv",
"libpng",
"libpthread-stubs",
"libpng",
"libx11",
"libxau",
"libxcb",
"libxext",
"pcre2",
"pixman",
"x11proto",
"zlib",
"libxrender",
"pixman",
]
dev-dependencies = [
# xext and xrender is required by pkg-config, don't move them here
]
template = "custom"
script = """
DYNAMIC_INIT
#TODO: fix mutex implementation
#TODO: why are math defines missing?
CFLAGS="${CFLAGS} -DCAIRO_NO_MUTEX=1 -DM_SQRT2=1.41421356237309504880 -DM_LN2=0.69314718055994530942"
CFLAGS="${CFLAGS} -DM_SQRT2=1.41421356237309504880 -DM_LN2=0.69314718055994530942"
cookbook_meson \
-Dxlib-xcb=enabled \
-Dtests=disabled

View File

@ -6,30 +6,14 @@ patches = ["redox.patch"]
[build]
dependencies = [
"cairo",
"expat",
"fontconfig",
"freetype2",
"fribidi",
"gettext",
"glib",
"harfbuzz",
"libffi",
"libiconv",
"libpng",
"libpthread-stubs",
"libx11",
"libxau",
"libxcb",
"libxext",
"libxft",
"libxrender",
"pcre",
"pcre2",
"pixman",
"x11proto",
"xcb-proto",
"xextproto",
"zlib",
# "libx11",
# "libxft",
# "libxrender",
]
template = "custom"
script = """

View File

@ -1,8 +1,8 @@
#TODO promote
[source]
tar = "https://download.gnome.org/sources/gtk+/3.24/gtk%2B-3.24.43.tar.xz"
blake3 = "5feab2bad81e6b5906895f70ddce6227cf96a6a14b16af0ef72c79991a48ddf4"
patches = ["redox.patch"]
git = "https://gitlab.redox-os.org/redox-os/gtk"
branch = "redox-3.24.43"
shallow_clone = true
[build]
dependencies = [
@ -21,26 +21,19 @@ dependencies = [
"libffi",
"libiconv",
"libjpeg",
"liborbital",
"libpng",
"libpthread-stubs",
"libwayland",
"libx11",
"libxau",
"libxkbcommon",
"libxcb",
"libxext",
"libxfixes",
"libxkbcommon",
"libxi",
"libxrandr",
"libxrender",
"libxxf86vm",
"mesa-x11",
"libx11",
"libwayland",
"mesa",
"pango",
"pcre2",
"pixman",
"shared-mime-info",
"wayland-protocols",
"x11proto",
"zlib",
]
template = "custom"

View File

@ -4,23 +4,14 @@ blake3 = "0ccee9635115fe417cfc4bc33ffd160bf1e2852bd6c03816b4af771d59462f53"
patches = ["redox.patch"]
[build]
template = "custom"
dependencies = [
"libpthread-stubs",
template = "meson"
dev-dependencies = [
"libx11",
"libxau",
"libxcb",
"libxext",
"libxfixes",
"libxxf86vm",
"mesa-x11",
"x11proto",
"zlib",
"mesa",
]
mesonflags = [
"-Degl=yes",
# we're forcing x11 backend via EGL
"-Dx11=true",
"-Dtests=false",
]
script = """
DYNAMIC_INIT
cookbook_meson \
-Degl=yes \
-Dglx=yes \
-Dtests=false
"""

View File

@ -5,7 +5,7 @@ blake3 = "5657d84c78549f198f1335ec9d2f1de2b0ac2771fe081cbf00016370872c13f3"
patches = ["redox.patch"]
[build]
dependencies = [
dev-dependencies = [
"host:libicu"
]
template = "custom"
@ -28,5 +28,4 @@ if [ "$TARGET" = "$COOKBOOK_HOST_TARGET" ]; then
# this is not ideal, but there's no other better way
rsync -a ./ "${COOKBOOK_STAGE}/usr"
fi
"""

View File

@ -2,15 +2,30 @@
[source]
tar = "https://xkbcommon.org/download/libxkbcommon-1.7.0.tar.xz"
blake3 = "5001ca0b8562feeef2010bf16c05657e3875fda3ed5fdedbf48b9135e5cdfcbc"
patches = [
"redox.patch"
]
[build]
template = "meson"
mesonflags = [
"-Denable-wayland=false",
"-Denable-x11=false"
]
template = "custom"
dependencies = [
"libxml2",
"xz",
"zlib",
"libpthread-stubs",
"libxau",
"x11proto",
"xcb-proto",
"libxcb",
]
script = """
DYNAMIC_INIT
cookbook_meson \
-Denable-wayland=false \
-Denable-x11=true
"""
[package]
dependencies = [
"xkeyboard-config"
]

View File

@ -1,4 +1,4 @@
diff --color -ruwN source/meson.build source-new/meson.build
diff -ruwN source/meson.build source-new/meson.build
--- source/meson.build 2024-03-24 04:23:43.000000000 +0700
+++ source-new/meson.build 2025-10-29 10:55:30.355297899 +0700
@@ -637,8 +637,6 @@
@ -31,7 +31,7 @@ diff --color -ruwN source/meson.build source-new/meson.build
if get_option('enable-xkbregistry')
test(
'registry',
diff --color -ruwN source/src/x11/util.c source-new/src/x11/util.c
diff -ruwN source/src/x11/util.c source-new/src/x11/util.c
--- source/src/x11/util.c 2024-03-24 04:23:43.000000000 +0700
+++ source-new/src/x11/util.c 2025-10-29 15:03:58.879274347 +0700
@@ -39,7 +39,7 @@

View File

@ -15,7 +15,7 @@ dependencies = [
# "glib",
"gtk3",
"pango",
"libxkbcommon-x11",
"libxkbcommon",
"libice",
"mesa-x11",
"x11proto-kb",

View File

@ -17,7 +17,7 @@ dependencies = [
# "glib",
"gtk3",
"pango",
"libxkbcommon-x11",
"libxkbcommon",
"libice",
"mesa-x11",
"x11proto-kb",

View File

@ -13,7 +13,7 @@ dependencies = [
"freetype2",
"gtk3",
"pango",
"libxkbcommon-x11",
"libxkbcommon",
"libice",
"mesa-x11",
"nspr",

View File

@ -7,7 +7,7 @@ blake3 = "3b54ed52759339e545a7a5f602946abc0164c37eb801e79c0cb40f93dbae53d2"
dependencies = [
"cairo",
"libev",
"libxkbcommon-x11",
"libxkbcommon",
"pango",
"pcre2",
"startup-notification",

View File

@ -7,9 +7,10 @@ autotools_recursive_regenerate
[build]
dependencies = [
"libpthread-stubs",
"libxau",
"libxcb",
]
dev-dependencies = [
"libxau",
"x11proto",
"xtrans",
]

View File

@ -7,20 +7,9 @@ autotools_recursive_regenerate
[build]
dependencies = [
"expat",
"fontconfig",
"freetype2",
"libpng",
"libpthread-stubs",
"libx11",
"libxau",
"libxcb",
"libxrender",
"x11proto",
"zlib",
]
template = "custom"
script = """
DYNAMIC_INIT
cookbook_configure
"""
template = "configure"

View File

@ -1,25 +0,0 @@
# TODO: Conflict with libxkbcommon-x11
# TODO: Keyboard not working, see patches
[source]
tar = "https://xkbcommon.org/download/libxkbcommon-1.7.0.tar.xz"
blake3 = "5001ca0b8562feeef2010bf16c05657e3875fda3ed5fdedbf48b9135e5cdfcbc"
patches = [ "redox.patch" ]
[build]
template = "custom"
dependencies = [
"libxml2",
"xz",
"zlib",
"libpthread-stubs",
"libxau",
"x11proto",
"xcb-proto",
"libxcb",
]
script = """
DYNAMIC_INIT
cookbook_meson \
-Denable-wayland=false \
-Denable-x11=true
"""

View File

@ -7,11 +7,7 @@ autotools_recursive_regenerate
[build]
dependencies = [
"libpthread-stubs",
"libx11",
"libxau",
"libxcb",
"x11proto",
]
template = "custom"
script = """

View File

@ -24,9 +24,11 @@ script = """
DYNAMIC_INIT
cookbook_meson \
-Ddri-drivers-path=/usr/lib/dri \
-Degl=enabled \
-Degl=disabled \
-Dglx=dri \
-Dllvm=enabled \
-Dgles1=disabled \
-Dgles2=disabled \
-Dplatforms=x11 \
-Dshader-cache=disabled
"""

View File

@ -34,7 +34,7 @@ function DYNAMIC_INIT {
)
# TODO: check paths for spaces
export LDFLAGS="${USER_LDFLAGS}-Wl,-rpath-link,${COOKBOOK_SYSROOT}/lib -L${COOKBOOK_SYSROOT}/lib"
export LDFLAGS="${USER_LDFLAGS}-Wl,-rpath-link,${COOKBOOK_SYSROOT}/lib -L${COOKBOOK_SYSROOT}/lib -Wl,--export-dynamic"
export RUSTFLAGS="-C target-feature=-crt-static -L native=${COOKBOOK_SYSROOT}/lib -C link-arg=-Wl,-rpath-link,${COOKBOOK_SYSROOT}/lib"
export COOKBOOK_DYNAMIC=1