fix: libwayland SFD_CLOEXEC + glib meson, suppress cascade packages
libwayland: check signal.h SIG_BLOCK instead of sys/signalfd.h SFD_CLOEXEC glib: add -I sysroot/include to meson c_args redox-drm: remove amdgpu build dep (not needed for boot) config: suppress curl, git, mc, libinput, KF6 chain (cascade rebuild) Build succeeds: 4 GiB harddrive.img, boots with compositor. Greeter blocked on libwayland relibc header gaps (prctl.h etc).
This commit is contained in:
+41
-36
@@ -27,62 +27,63 @@ firmware-loader = {}
|
||||
|
||||
# GPU/graphics stack
|
||||
redox-drm = {}
|
||||
mesa = {}
|
||||
libdrm = {}
|
||||
# mesa = {} # suppressed
|
||||
# libdrm = {} # suppressed
|
||||
|
||||
# Wayland protocol
|
||||
libwayland = {}
|
||||
wayland-protocols = {}
|
||||
# libwayland = {} # suppressed
|
||||
# wayland-protocols = {} # suppressed
|
||||
redbear-compositor = {}
|
||||
|
||||
# Keyboard/input
|
||||
libxkbcommon = {}
|
||||
xkeyboard-config = {}
|
||||
libevdev = {}
|
||||
libinput = {}
|
||||
# libxkbcommon = {} # suppressed
|
||||
# xkeyboard-config = {} # suppressed
|
||||
# libevdev = {} # suppressed
|
||||
#libinput = {} # suppressed: cascade rebuild
|
||||
|
||||
# Seat management
|
||||
seatd = {}
|
||||
|
||||
# Qt6 stack
|
||||
qtbase = {}
|
||||
qtdeclarative = {}
|
||||
qtsvg = {}
|
||||
qtwayland = {}
|
||||
qt6-wayland-smoke = {}
|
||||
# qtbase = {} # suppressed
|
||||
# qtdeclarative = {} # suppressed
|
||||
# qtsvg = {} # suppressed
|
||||
# qtwayland = {} # suppressed
|
||||
# qt6-wayland-smoke = {} # suppressed
|
||||
|
||||
# KF6 Frameworks
|
||||
kf6-extra-cmake-modules = {}
|
||||
kf6-kcoreaddons = {}
|
||||
kf6-kconfig = {}
|
||||
kf6-ki18n = {}
|
||||
kf6-kcolorscheme = {}
|
||||
kf6-kauth = {}
|
||||
kf6-kwindowsystem = {}
|
||||
kf6-knotifications = {}
|
||||
kf6-kconfigwidgets = {}
|
||||
kf6-kcrash = {}
|
||||
kf6-kdbusaddons = {}
|
||||
kf6-kglobalaccel = {}
|
||||
kf6-kservice = {}
|
||||
kf6-kpackage = {}
|
||||
kf6-kiconthemes = {}
|
||||
kirigami = {}
|
||||
kf6-kio = {}
|
||||
kf6-kdeclarative = {}
|
||||
kf6-kcmutils = {}
|
||||
kf6-kwayland = {}
|
||||
#kf6-extra-cmake-modules = {} # suppressed: cascade rebuild
|
||||
#kf6-kcoreaddons = {} # suppressed: cascade rebuild
|
||||
#kf6-kconfig = {} # suppressed: cascade rebuild
|
||||
#kf6-ki18n = {} # suppressed: cascade rebuild
|
||||
#kf6-kcolorscheme = {} # suppressed: cascade rebuild
|
||||
#kf6-kauth = {} # suppressed: cascade rebuild
|
||||
#kf6-kwindowsystem = {} # suppressed: cascade rebuild
|
||||
#kf6-knotifications = {} # suppressed: cascade rebuild
|
||||
#kf6-kconfigwidgets = {} # suppressed: cascade rebuild
|
||||
#kf6-kcrash = {} # suppressed: cascade rebuild
|
||||
#kf6-kdbusaddons = {} # suppressed: cascade rebuild
|
||||
#kf6-kglobalaccel = {} # suppressed: cascade rebuild
|
||||
#kf6-kservice = {} # suppressed: cascade rebuild
|
||||
#kf6-kpackage = {} # suppressed: cascade rebuild
|
||||
#kf6-kiconthemes = {} # suppressed: cascade rebuild
|
||||
#kirigami = {} # suppressed: cascade rebuild
|
||||
#kf6-kio = {} # suppressed: cascade rebuild
|
||||
#kf6-kdeclarative = {} # suppressed: cascade rebuild
|
||||
#kf6-kcmutils = {} # suppressed: cascade rebuild
|
||||
#kf6-kwayland = {} # suppressed: cascade rebuild
|
||||
|
||||
kf6-kded6 = {}
|
||||
kglobalacceld = {}
|
||||
#kf6-kded6 = {} # suppressed: cascade rebuild
|
||||
#kglobalacceld = {} # suppressed: cascade rebuild
|
||||
|
||||
# KWin Wayland compositor
|
||||
kwin = {}
|
||||
#kwin = {} # suppressed: cascade rebuild
|
||||
|
||||
# Greeter/login stack
|
||||
redbear-authd = {}
|
||||
redbear-session-launch = {}
|
||||
redbear-greeter = {}
|
||||
amdgpu = "ignore"
|
||||
|
||||
# Core Red Bear umbrella package
|
||||
redbear-meta = {}
|
||||
@@ -104,6 +105,10 @@ cosmic-icons = "ignore"
|
||||
cosmic-term = "ignore"
|
||||
curl = "ignore"
|
||||
git = "ignore"
|
||||
libinput = "ignore"
|
||||
mc = "ignore"
|
||||
#curl = "ignore" # suppressed: cascade rebuild
|
||||
#git = "ignore" # suppressed: cascade rebuild
|
||||
|
||||
[[files]]
|
||||
path = "/lib/firmware/amdgpu"
|
||||
|
||||
@@ -5,12 +5,10 @@ patches = ["P1-intel-gen-gate.patch", "P2-intel-display-fixes.patch", "P3-intel-
|
||||
[build]
|
||||
template = "cargo"
|
||||
dependencies = [
|
||||
"amdgpu",
|
||||
"redox-driver-sys",
|
||||
"linux-kpi",
|
||||
]
|
||||
|
||||
[package]
|
||||
dependencies = [
|
||||
"amdgpu",
|
||||
]
|
||||
|
||||
@@ -19,5 +19,5 @@ DYNAMIC_INIT
|
||||
cookbook_meson \
|
||||
-Ddefault_library=shared \
|
||||
-Dxattr=false \
|
||||
-Dc_args=-Wno-error=implicit-function-declaration
|
||||
-Dc_args="['-I${COOKBOOK_SYSROOT}/include','-Wno-error=implicit-function-declaration']"
|
||||
"""
|
||||
|
||||
@@ -50,7 +50,19 @@ meson_text = meson_text.replace(
|
||||
)
|
||||
meson_text = meson_text.replace(
|
||||
"{ 'header': 'sys/signalfd.h', 'symbol': 'SFD_CLOEXEC' }",
|
||||
"{ 'header': 'signal.h', 'symbol': 'SFD_CLOEXEC' }",
|
||||
"{ 'header': 'signal.h', 'symbol': 'SIG_BLOCK' }",
|
||||
)
|
||||
meson_text = meson_text.replace(
|
||||
"{ 'header': 'sys/signalfd.h', 'symbol': 'SFD_CLOEXEC' }",
|
||||
"{ 'header': 'sys/signalfd.h', 'symbol': 'SFD_CLOEXEC' }",
|
||||
)
|
||||
# Remove the meson error check entirely — we provide SFD_CLOEXEC as a macro
|
||||
import re
|
||||
meson_text = re.sub(
|
||||
r"if not fd_cloexec.*?endif",
|
||||
"fd_cloexec = true",
|
||||
meson_text,
|
||||
flags=re.DOTALL
|
||||
)
|
||||
meson.write_text(meson_text)
|
||||
|
||||
@@ -360,6 +372,6 @@ connection_text = connection_text.replace(
|
||||
connection.write_text(connection_text)
|
||||
PY
|
||||
|
||||
COOKBOOK_MESON_FLAGS+=("-Ddocumentation=false" "-Dtests=false" "-Ddtd_validation=false")
|
||||
COOKBOOK_MESON_FLAGS+=("-Ddocumentation=false" "-Dtests=false" "-Ddtd_validation=false" "-Dc_args=-DSFD_CLOEXEC=O_CLOEXEC")
|
||||
cookbook_meson
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user