Files
RedBear-OS/local/recipes/qt/qtbase/source/mkspecs/common/rtems-base.conf
T
vasilito f31522130f fix: comprehensive boot warnings and exceptions — fixable silenced, unfixable diagnosed
Build system (5 gaps hardened):
- COOKBOOK_OFFLINE defaults to true (fork-mode)
- normalize_patch handles diff -ruN format
- New 'repo validate-patches' command (25/25 relibc patches)
- 14 patched Qt/Wayland/display recipes added to protected list
- relibc archive regenerated with current patch chain

Boot fixes (fixable):
- Full ISO EFI partition: 16 MiB → 1 MiB (matches mini, BIOS hardcoded 2 MiB offset)
- D-Bus system bus: absolute /usr/bin/dbus-daemon path (was skipped)
- redbear-sessiond: absolute /usr/bin/redbear-sessiond path (was skipped)
- daemon framework: silenced spurious INIT_NOTIFY warnings for oneshot_async services (P0-daemon-silence-init-notify.patch)
- udev-shim: demoted INIT_NOTIFY warning to INFO (expected for oneshot_async)
- relibc: comprehensive named semaphores (sem_open/close/unlink) replacing upstream todo!() stubs
- greeterd: Wayland socket timeout 15s → 30s (compositor DRM wait)
- greeter-ui: built and linked (header guard unification, sem_compat stubs removed)
- mc: un-ignored in both configs, fixed glib/libiconv/pcre2 transitive deps
- greeter config: removed stale keymapd dependency from display/greeter services
- prefix toolchain: relibc headers synced, _RELIBC_STDLIB_H guard unified

Unfixable (diagnosed, upstream):
- i2c-hidd: abort on no-I2C-hardware (QEMU) — process::exit → relibc abort
- kded6/greeter-ui: page fault 0x8 — Qt library null deref
- Thread panics fd != -1 — Rust std library on Redox
- DHCP timeout / eth0 MAC — QEMU user-mode networking
- hwrngd/thermald — no hardware RNG/thermal in VM
- live preload allocation — BIOS memory fragmentation, continues on demand
2026-05-05 20:20:37 +01:00

74 lines
1.8 KiB
Plaintext

#
# Base qmake configuration for GCC on RTEMS
#
#
#
MAKEFILE_GENERATOR = UNIX
QMAKE_PLATFORM = rtems
include(unix.conf)
include(gcc-base-unix.conf)
include(g++-unix.conf)
rtems_bsp = $$(RTEMS_BSP)
isEmpty(rtems_bsp) {
error("This qmakespec requires $RTEMS_BSP to be set")
}
rtems_compiler = $$(RTEMS_COMPILER)
isEmpty(rtems_compiler) {
error("This qmakespec requires $RTEMS_COMPILER to be set")
}
isEmpty(RTEMS_CPU_FLAGS) {
error("The qmakespec is expected to set \$\$RTEMS_CPU_FLAGS")
}
RTEMS_FLAGS = \
-B$$rtems_bsp \
-specs bsp_specs \
-qrtems \
$$RTEMS_CPU_FLAGS
QMAKE_CFLAGS_OPTIMIZE_FULL = $$QMAKE_CFLAGS_OPTIMIZE
QMAKE_CFLAGS_OPTIMIZE_DEBUG = -O0 -g
QMAKE_CFLAGS_DEBUG = $$QMAKE_CFLAGS_OPTIMIZE_DEBUG
QMAKE_CFLAGS_WARN_ON = -Wall
QMAKE_CFLAGS_PIC =
QMAKE_CFLAGS_SHLIB =
QMAKE_CFLAGS_STATIC_LIB =
QMAKE_CFLAGS_APP =
QMAKE_CFLAGS += $$RTEMS_FLAGS
QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_SHLIB =
QMAKE_CXXFLAGS_STATIC_LIB =
QMAKE_CXXFLAGS_APP =
QMAKE_CXXFLAGS += $$RTEMS_FLAGS
QMAKE_CXXFLAGS_CXX11 =
QMAKE_CXXFLAGS_CXX14 =
QMAKE_CXXFLAGS_CXX1Z =
QMAKE_LFLAGS_GCSECTIONS = -Wl,--gc-sections
QMAKE_LFLAGS += $$RTEMS_FLAGS $$QMAKE_LFLAGS_GCSECTIONS
QMAKE_CC = $${rtems_compiler}-gcc
QMAKE_CXX = $${rtems_compiler}-g++
QMAKE_AR = $${rtems_compiler}-ar cqs
QMAKE_OBJCOPY = $${rtems_compiler}-objcopy
QMAKE_NM = $${rtems_compiler}-nm -P
QMAKE_RANLIB = $${rtems_compiler}-ranlib
QMAKE_STRIP = $${rtems_compiler}-strip
QMAKE_LINK_C = $$QMAKE_CC
QMAKE_LINK_C_SHLIB =
QMAKE_LINK = $$QMAKE_CXX
QMAKE_LINK_SHLIB =
load(qt_config)